newton at csail.mit.edu
Fri Mar 9 13:54:32 EST 2007
It seems that if snow is to win big it needs to target a large
majority of Scheme community. But, that said, the biggest 10
implementations have to represent a very large fraction of all scheme
users. And, as Marc said, these "major" Scheme's generally support
Ultimately, if Snow were successful, smaller implementations would
have motivation to become snow-compatible, rather than the other way
Also, as another note, in the corner of the Scheme world that I come
from (Chez users and PLT users mostly) portability means R5RS not
R4RS(++?), especially wrt define-syntax. My qualitative feeling is
that there are a large number of PLT users in particular, and they
will inevitably have to give up a *lot* if they want to write Snow
code, but asking them to give up define-syntax might be too much. In
other words, I think it's an excellent choice to put it in!
On Mar 9, 2007, at 1:24 PM, Marc Feeley wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> On 9-Mar-07, at 12:06 PM, Jan Skibinski wrote:
>>>> expect most of the lesser Schemes will not support define-syntax at
>>>> all (e.g. EdScheme, Elk, JScheme, LispMe, SIOD, TinyScheme, to
>>> name a
>>>> So it boils down to a portability issue. If Snow adds support for
>>>> define-syntax, then packages that use it will not be portable to
>>>> Scheme systems. Should we care?
>> This seems like a lot of them would be left out on the cold. But
>> you, the Snow parents, should first answer this question: What
>> motivated you to create Snow in the first place? I know -
>> But in what sense?
> It is really about practical Scheme programming, i.e. using Scheme to
> write real applications. To achieve this goal we need packages for
> lots of different functionality. To achieve that goal we need the
> bulk of the combined manpower of the various Scheme subcommunities.
> For that we need a framework that is portable, i.e. where everyone
> involved feels they can benefit from the Snow packages in their
> favourite Scheme system. Portability is also important to attract
> new users to Scheme by giving them the freedom to select the Scheme
> system best suited for their application, and to change the system
> during the course of developing and maintaining their application as
> their needs change.
>> If it was mainly done for pedagogical reasons, then we should only
>> worry about such subset of Scheme implementations that is currently
>> taught, or aspire to be taught, at schools. But if Snow is to be
>> industrially portable, then we should be more careful here and
>> consider each case separately.
>> For example, of those lesser known Schemes, Elk and TinyScheme are
>> mostly used for embedding, so we should not worry about those, right?
>> They are to be customized, cut, or extended to suit specific needs of
>> standalone applications, such as Impromptu,
>> http://impromptu.moso.com.au/. [Nota bene, a very nice
>> application, in
>> my opinion]
> I don't think Snow should exclude embedded Schemes. Embedded systems
> are one of the many applications of Scheme.
>> Then there are implementations that target Java: Kawa, SISC and
>> JScheme. I am not exactly sure what is their target audience. If
>> main goal is to provide nifty Scheme ideas to Java users, then I
>> not worry about them that much. But maybe this is not the main reason
>> of their existence.
> I don't understand your reasoning here. Those systems fill an
> important niche.
>> Maybe we should ask them: do they really care to be compatible with
> Problem is... who is "they"? The authors of those systems? The
> current users? The future users?
>> For those and other Schemes that care to be Snow portable there is
>> the portable define-syntax, psyntax by Dybvig and Waddel,
>> http://www.cs.indiana.edu/chezscheme/syntax-case/, or possibly its
>> revised version, currently in R6RS.
>> The caveat is: "The portable system is designed to be adaptable with
>> minimal effort to any Revised5 Report implementation of Scheme, with
>> the provision of a small set of implementation-dependent hooks to
>> install the expander."
> The way I see it the real issue is political. I want to maximize the
> impact of Snow on the practice of "real-world" Scheme programming.
> How many users and package writers will Snow attract if define-syntax
> is supported, and how many users will we lose because define-syntax
> is supported? My intuition is that globally it will be a win to
> support define-syntax.
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.3 (Darwin)
> -----END PGP SIGNATURE-----
> Snow-users-list mailing list
> Snow-users-list at iro.umontreal.ca
More information about the Snow-users-list