[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Chicken-hackers] r7rs-tasks
From: |
Felix |
Subject: |
Re: [Chicken-hackers] r7rs-tasks |
Date: |
Fri, 05 Apr 2013 23:42:18 +0200 (CEST) |
> Cool! I have added some annotations marked with "JC:", as follows:
>
Excellent - thanks.
> I don't understand why things would be complicated with Chicken's default
> fixnum/flonum support. There is no equal=? in R7RS, and equal? should
> not be affected.
"numbers" already provides the numerical operations required in R7RS.
And I would like to avoid having the user do "(import numbers)" for
"standard" R7RS code. I'm sure sjamaan will insist on full numeric tower
support by default (heb ik gelijk?)
>
> What about making full Unicode support the default? R7RS does not require
> it, but it might be better so.
I fear the performance impact on string operations. Besides, UNICODE
is a silly idea, since 7-bit ASCII is more than sufficient for
everything, anyway.
>
> #!fold-case and #!no-fold-case apply only to the file in which they
> appear, not to any included or including file, because they work at a
> lower level (that is, read implements them).
Ugh. Of course. Thanks for telling me. So this is not a global setting,
and the default is to not fold case, right?
>
> See SRFI 45. The R7RS delay, force, delay-force, and make-promise in
> R7RS correspond exactly to delay, force, lazy, and eager in that SRFI.
Ok.
>
> The theory is that #t and #f are too easily mistaken for each other by
> a human reader. I don't find it so, but apparently others do.
Ok.
>
> On an ASCII platform, char-foldcase and string-foldcase are the same as
> char-downcase and string-downcase respectively. For Unicode, char-foldcase
> implements Unicode case folding, specifically the table entries marked
> with "C" and "S", but not those marked with "F" or "T". string-foldcase,
> on the other hand, implements the table entries marked with "C" and "F",
> but not those marked with "S" or "T".
<mind wanders off>
>
> The features that Chicken should provide are r7rs, ieee-float, and
> either posix or windows as the case may be. If the full numeric tower
> is provided, add exact-closed, exact-complex, and ratios. If Unicode is
> provided, add full-unicode. This should be integrated with the Chicken
> native (features) list.
What about platform/cpu/os? Are the default chicken features
sufficient?
>
> A library name may not begin with a modifier-keyword like only.
> The important thing here is that in an R7RS library or program, import
> is Chicken's use.
That means it imports the bindings _and_ loads the relevant library
code, recursing on dependencies of imported libraries, right?
>
> The point of (environment) environments is that they can be
> passed to eval; they are parallel to the environments returned by
> scheme-report-environment, null-environment, and interaction-environment.
Ok.
>
> We can ignore environment immutability in practice.
Very good.
>
> get-output-string is from SRFI 6 and does not clear the buffer.
Ok. I somehow got the idea it does.
>
> The second argument to load is passed along to eval.
Ok.
>
> Jiffies can be seconds or milliseconds or whatever.
Then probably milliseconds.
cheers,
felix