Hi,
2012/7/1 Eli Barzilay e...@barzilay.org
Three hours ago, Neil Toronto:
[*] Unfortunately, the `science' collection has a license problem:
the stated license (LGPL) at the top any of its files can't be the
actual license if the file was derived from the Gnu Science Library
(GSL),
There rare cases where it is useful to have a value that means that no
argument was passed to a function. In many of these cases there is a
plain value that is used as that mark, with the most idiomatic one
being #f, but sometimes others are used. IMO, while such uses of #f
are idiomatic,
If you're only going to use in keyword arguments (and optional
arguments), you could make it an error to touch the value, unless it
gets touched by a special predicate that checks for its existence.
That is, in
(define (f #:x [x]) ...)
(where I'm saying that leaving off the default value means
Just now, Robby Findler wrote:
If you're only going to use in keyword arguments (and optional
arguments), you could make it an error to touch the value, unless it
gets touched by a special predicate that checks for its existence.
That is, in
(define (f #:x [x]) ...)
(where I'm saying
How about more words and examples?
Argument reduction is using function properties to reduce the
magnitude of arguments to make computation more tractable or more accurate.
I'll bet `log' uses this property:
(log (sqrt x)) = (log (expt x 1/2)) = (* 1/2 (log x))
This form is nice for
I had misunderstood. I thought you had suggested 'reduction of strength' (say
going from square to * or double to +), which is a generally useful compiler
optimization. What you suggest is some form of conditional version of this.
How many do you see?
On Jul 1, 2012, at 8:00 PM, Neil
Oh, that helps a lot, thanks.
Is it not the problem that this:
(sqrt (expt 10 402))
has no Racket number that could represent it? It is too big for a
float (I think?), it isn't a rational, there isn't anything else...?
No?
Robby
On Sun, Jul 1, 2012 at 7:00 PM, Neil Toronto
7 matches
Mail list logo