-----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
few).
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
many
Scheme systems. Should we care?
This seems like a lot of them would be left out on the cold. But maybe you, the Snow parents, should first answer this question: What exactly motivated you to create Snow in the first place? I know - portability. 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 perhaps 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 their main goal is to provide nifty Scheme ideas to Java users, then I would 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 Snow?
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 always 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."
Jan
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.
Marc
Afficher les réponses par date
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 define-syntax.
Ultimately, if Snow were successful, smaller implementations would have motivation to become snow-compatible, rather than the other way around.
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!
-Ryan
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
few).
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
many
Scheme systems. Should we care?
This seems like a lot of them would be left out on the cold. But maybe you, the Snow parents, should first answer this question: What exactly motivated you to create Snow in the first place? I know - portability. 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 perhaps 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 their main goal is to provide nifty Scheme ideas to Java users, then I would 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 Snow?
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 always 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."
Jan
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.
Marc
-----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.3 (Darwin)
iD8DBQFF8aZb//V9Zc2T/v4RAupIAJwN7a91YX/XDUNfLRjo5Zimho0v/gCfcGQI X7HVuoaZwknjMdKySZaR1nI= =EW6E -----END PGP SIGNATURE----- _______________________________________________ Snow-users-list mailing list Snow-users-list@iro.umontreal.ca https://webmail.iro.umontreal.ca/mailman/listinfo/snow-users-list
snow-users-list@iro.umontreal.ca