unofficial mirror of guile-user@gnu.org 
 help / color / mirror / Atom feed
From: Rob Browning <rlb@defaultvalue.org>
Cc: ruhl@4dv.net (Robert Uhl <ruhl@4dv.net>), guile-user@gnu.org
Subject: Re: Stack Size?
Date: Sun, 01 Sep 2002 12:13:32 -0500	[thread overview]
Message-ID: <878z2lljk3.fsf@raven.i.defaultvalue.org> (raw)
In-Reply-To: <xy77kj0rvmh.fsf@kvast.blakulla.net> (Mikael Djurfeldt's message of "09 Aug 2002 15:48:22 +0200")

Mikael Djurfeldt <mdj@kvast.blakulla.net> writes:

> Guile is supposed to be "nice" towards novice users.  Infinite
> recursions is a very common error.  Without a stack check, the
> effect is that the machine freezes due to excessive swapping,
> preventing the novice user from even examining what has happened.

Yeah, though I *was* surprised the first time I had a perfectly good
recursion fall over in guile, one that I believe had been working fine
in another scheme.

I tend to think that if we're going to enforce a stack limit, it
should be fairly high by default.  Otherwise if you write a module
that you know will be likely to use very large stacks for normal
inputs, you've got to either communicate the need to raise the stack
limit to everyone using your module via documentation, or you've got
to raise the limit with a debug-set! call inside the module, and the
latter solution is unworkable when you have two modules that have
different ideas of how high the stack limit needs to be, since the
result becomes dependent on load order.

BTW, how does guile's stack limit apply to guile threads?  Is the
limit per-thread or global?

(A part of me wonders whether or not we're just infringing on ulimit's
 territory here...)

-- 
Rob Browning
rlb @defaultvalue.org, @linuxdevel.com, and @debian.org
Previously @cs.utexas.edu
GPG=1C58 8B2C FB5E 3F64 EA5C  64AE 78FE E5FE F0CB A0AD


_______________________________________________
Guile-user mailing list
Guile-user@gnu.org
http://mail.gnu.org/mailman/listinfo/guile-user


  parent reply	other threads:[~2002-09-01 17:13 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-08-05  9:27 Stack Size? Robert Uhl <ruhl@4dv.net>
2002-08-05 15:08 ` Joshua Judson Rosen
2002-08-05 18:55 ` Neil Jerram
2002-08-05 19:09   ` Robert Uhl <ruhl@4dv.net>
2002-08-08 21:28     ` Neil Jerram
2002-08-08 21:49       ` Robert Uhl <ruhl@4dv.net>
2002-08-09 13:48         ` Mikael Djurfeldt
2002-08-11 22:07           ` Robert Uhl <ruhl@4dv.net>
2002-09-01 17:13           ` Rob Browning [this message]
2002-09-01 19:08             ` Lynn Winebarger
2002-09-03 16:00             ` Paul Jarc
2002-08-09 13:48         ` Mikael Djurfeldt
2002-08-09 13:48         ` Mikael Djurfeldt

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/guile/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=878z2lljk3.fsf@raven.i.defaultvalue.org \
    --to=rlb@defaultvalue.org \
    --cc=guile-user@gnu.org \
    --cc=ruhl@4dv.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).