This is the mail archive of the guile@sourceware.cygnus.com mailing list for the Guile project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Delay is broken?


Lauri Alanko <la@iki.fi> writes:

> I'm not sure if I'm doing _something_ wrong, but it would seem that
> there's something badly broken with delay. This is from the cvs version:
> 
> la:~/src/guile/guile-core/libguile$ ./guile
> guile> (delay 1)
> #<promise #<procedure ()>>
> guile> (let () (delay 1))
> standard input:2:9: In procedure delay in expression (delay 1):
> standard input:2:9: missing or extra expression
> ABORT: (misc-error)

Thank you for your bug report.
(Bug reports normally go to bug-guile@gnu.org.)

1999-10-11  Mikael Djurfeldt  <mdj@thalamus.nada.kth.se>

	These changes turns `delay' into a memoizing macro.  This is
	because it may be expanded before evaluation if it occurs at the
	beginning of a body.  (Thanks to Lauri Alanko.)
	
	* eval.c, eval.h (scm_sym_delay): New global symbol.

	* tags.h (SCM_IM_DELAY): New immediate symbol.

	* print.c (scm_isymnames): Printed representation.

	* eval.c (unmemocopy, SCM_CEVAL): Handle SCM_IM_DELAY.
	(scm_m_delay): Turned into a memoizing macro.

	* Makefile.am (libguile_la_LDFLAGS): Bumped libguile version.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]