Re: [Scheme-reports] Reformulated numeric-tower ballot Andy Wingo (07 May 2014 19:38 UTC)
Re: [Scheme-reports] Reformulated numeric-tower ballot Andy Wingo (14 May 2014 20:45 UTC)
Re: [Scheme-reports] Reformulated numeric-tower ballot Arthur A. Gleckler (14 May 2014 20:56 UTC)
Re: [Scheme-reports] Reformulated numeric-tower ballot Per Bothner (14 May 2014 23:11 UTC)
Re: [Scheme-reports] Reformulated numeric-tower ballot John Cowan (15 May 2014 03:22 UTC)
Re: [Scheme-reports] Reformulated numeric-tower ballot Per Bothner (15 May 2014 07:14 UTC)
Re: [Scheme-reports] Reformulated numeric-tower ballot John Cowan (15 May 2014 13:30 UTC)
Re: [Scheme-reports] Reformulated numeric-tower ballot Per Bothner (15 May 2014 22:08 UTC)
Re: [Scheme-reports] Reformulated numeric-tower ballot Alaric Snell-Pym (15 May 2014 10:47 UTC)
Re: [Scheme-reports] Reformulated numeric-tower ballot John Cowan (15 May 2014 12:20 UTC)
Re: [Scheme-reports] Reformulated numeric-tower ballot Sascha Ziemann (16 May 2014 08:37 UTC)
Re: [Scheme-reports] Reformulated numeric-tower ballot Alaric Snell-Pym (16 May 2014 08:46 UTC)
Re: [Scheme-reports] Reformulated numeric-tower ballot Peter Bex (16 May 2014 08:57 UTC)
Re: [Scheme-reports] Reformulated numeric-tower ballot John Cowan (16 May 2014 21:05 UTC)
Re: [Scheme-reports] Reformulated numeric-tower ballot John Cowan (16 May 2014 20:26 UTC)
Re: [Scheme-reports] Reformulated numeric-tower ballot xacc.ide@gmail.com (16 May 2014 20:41 UTC)

Re: [Scheme-reports] Reformulated numeric-tower ballot Per Bothner 15 May 2014 22:00 UTC

On 05/15/2014 06:25 AM, John Cowan wrote:
> Per Bothner scripsit:
>
>> Once this is "in harbor" (to use a Norwegian idiom) my plan is to
>> focus on libraries and the rest of r7rs support.
>
> Excellent.  If you would (no hurry), can you look over
> LibraryDeclarationsCowan to see if it makes sense to you?

My first reaction is it seems like overkill, at least for a Scheme standard.
They may be reasonable place-holders for experimentation and possibly
future standardization.

reexport seems a useful convenience.

I'm uncertain about export-all.  Kawa by default does this if there
is no module-export or export form.  (Binding defined by define-private
are excepted.)  It might be useful to have an 'except' option if this is added.

The optimization options have a 80's feel to them.  I'm not sure how useful
they'd be to Kawa.  Maybe debuggability to control whether to force better exceptions,
as an example.

Kawa has a module-compile-options and with-compile-options that provide some
related functionality, though it's mainly used to control warnings:
http://www.gnu.org/software/kawa/Module-classes.html#Module-options
For example with-compile-options can be used with full-tailcalls to
control the generated calling convention for a given set of procedures.

The Numeric tower specifications seem rather ad hoc, and I suspect will
see limited use.

The Types features might be useful.  However, it's a big can of worms.
Kawa already has type-specifiers, which are at the declaration site.
I think that is more readable, easier to keep updated, and more general
(since they can be used for local declarations).

A subset of Kawa's specifiers could be quite portable:

(define VAR ::TYPE VALUE)

could be defined as:

(type VAR TYPE?)
(define VAR VALUE)

but allowing implementation extensions for TYPE.

(Kawa goes the other way.  If the name TEST? is unbound,
but TEST is an existing type, then TEST? defaults to an
instance-of predicate for TEST.  For example vector is
not a procedure in Kawa - it is a type.  When you "apply" a
type you call it's constructor function.)

I would prefer the provide syntax to be:
   (provide 'feature-identifier)
for historic compatibility.  This is what Kawa "provides".
The syntax: (provide 'FEATURE)
expands to (define %provide$FEATURE <unspecified>)
and then cond-expand checks if %provide$FEATURE is in the
(lexical) scope.
--
	--Per Bothner
per@bothner.com   http://per.bothner.com/

_______________________________________________
Scheme-reports mailing list
Scheme-reports@scheme-reports.org
http://lists.scheme-reports.org/cgi-bin/mailman/listinfo/scheme-reports