This is a copy of the file thread-interface.text in the workbook
module. I will go to Graz tomorrow but if there are any follow-ups on
this post I will try to give some limited replies next week.
[Marius, I apologize for not answering another message from you--will
do that next week as well.]
---
I added a bit to scm_c_define_gsubr about not changing the rest arg.
Existing:
If RST is non-zero, then any arguments after the first `REQ + OPT'
are packaged up as a list and passed as FUNCTION's last argument.
Add:
FUNCTION must not modify that list. (Because when subr is call
cons* seems to mutate a list given to it from apply,
(define x '(1 2 (3 4)))
(apply cons* x)
x
=> (1 2 3 4)
New code not changing the rest arg:
SCM_DEFINE (scm_cons_star, "cons*", 1, 0, 1,
(SCM arg, SCM rest), "...")
#define FUNC_NAME s_scm_cons_star
Looks like list doesn't produce a new list when called through apply,
(define x '(1 2 3))
(define y (apply list x))
(eq? x y)
=> #t
I'm looking at the fix below. This removes the C level scm_list, but
that should be ok, it's not documented and does nothing.
---
What happened to substring-fill! ? Has it been lost from the cvs?
___
Guile-devel mailing list
Guile-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/guile-devel
Neil Jerram wrote:
Scott G. Miller wrote:
But beyond that, try running
http://sisc.sf.net/r5rs_pitfall.scm on Guile. At least on 1.6.7 it
still has problems. Maybe 1.8 will be better.
Yes, I see. But 1.8 will indeed be better; the current CVS only has
problems with
- 1.1 - for which I have a c
Scott G. Miller wrote:
For one, you have to execute a non-standard statement to load the R5RS
macro system.
Well, given a file (which you only have to write once) containing
---8<---
(use-modules (ice-9 r5rs))
(use-syntax (ice-9 syntax))
---8<---
you can ru