On Sep 11, 2009, at 10:12 AM, [email protected] wrote:

> Thing0-Family
>
> Gene 1 - uses fully parenthesized prefix notation
> Gene 2 - doesn't punish programmers for writing infinitely deep
> recursions if it can be helped
> Gene 3 - provides first-class and higher-order functions
> Gene 4 - provides a universal union type with predicates to
> distinguish types at run-time
> Gene 5 - is lexically scoped

[The word 'types' in serious PL society refers to a purely
syntactic concept, establishing syntactic barriers of abstraction
so that the run-time can use 0 for FALSE and for NULL and for
other forms of data without getting confused. I'll ignore this
problem for the moment.]

Interestingly enough this description includes

  Typed Scheme
  http://www.ccs.neu.edu/scheme/pubs/#popl08-thf

and

  Lazy Scheme
  http://www.ccs.neu.edu/scheme/pubs/#fdpe05-bc

while the next few bullet points

> Thing0-Strict:
>
> A programming language that is definitely a member of Thing0-Family  
> but also:
>
> Gene  6 - provides full TCO and is safe-for-space
> Gene  7 - uses a call-by-value evaluation strategy
> Gene  8 - provides macro-programming facilities based on program  
> structure
> Gene  9 - is able to reify continuations
> Gene 10 - provides a syntax for aggregate data

exclude only Lazy Scheme. Of course, I'd like to write my
programs in combinations of Lazy Scheme, Typed Scheme, and
Scheme -- with all possible SAFETY guarantees available IF
I SO WISH.

> While this document is presented with a light tone, it is also quite
> serious.

The problem with this entire conversation is not that the
lack of seriousness, it is the lack of an acknowledgement
of the fundamental thesis of the Steering Committee that
languages are like sharks. Remain still and die, or move.
So now we have a nice 10-bullet commandment list for the
small thing, how do you actually program in it?

The other problem is that the discussion focuses on only
one of the two essential things, ignoring again that the
Steering Committee established an intimate link between
the two of them.

Matthias Felleisen,
Engineer, Competent
Nothing, Else



_______________________________________________
r6rs-discuss mailing list
[email protected]
http://lists.r6rs.org/cgi-bin/mailman/listinfo/r6rs-discuss

Reply via email to