This may be a dumb question (I'm new to Gambit, and have just discovered Snow), but is there a way to access Snow packages from Gambit?
e.g. if I start a Gambit REPL with gsi, is there a way to "(require XXX)" which will then load the package XXX into my Gambit environment?
I have downloaded and installed the snow-generic release, using Gambit as host, and can use snowman to download and install packages, but I seem to be missing the "big picture", that is, how do I actually *use* these packages?
Hope somebody can enlighten me, Paul
Afficher les réponses par date
You don't run snow in gambit, it's the converse.
You write your package with portable R4RS code and snow code (package* foo) and so on. Then, you run "snow ./package.scm" and you're done. Feel like eating worms? "SNOW_HOST=csi ./package.scm". And so on.
Maybe others (ie "Jeremie") can give you more information, though.
P!
2009/3/1 Paul Onions wibble37@mac.com:
This may be a dumb question (I'm new to Gambit, and have just discovered Snow), but is there a way to access Snow packages from Gambit?
e.g. if I start a Gambit REPL with gsi, is there a way to "(require XXX)" which will then load the package XXX into my Gambit environment?
I have downloaded and installed the snow-generic release, using Gambit as host, and can use snowman to download and install packages, but I seem to be missing the "big picture", that is, how do I actually *use* these packages?
Hope somebody can enlighten me, Paul
Gambit-list mailing list Gambit-list@iro.umontreal.ca https://webmail.iro.umontreal.ca/mailman/listinfo/gambit-list
On 2009-03-02 12:44:41 +0000, Adrien Piérard pierarda@iro.umontreal.ca said:
You don't run snow in gambit, it's the converse.
You write your package with portable R4RS code and snow code (package* foo) and so on. Then, you run "snow ./package.scm" and you're done. Feel like eating worms? "SNOW_HOST=csi ./package.scm". And so on.
Ahh, now I begin to see the "big picture", thanks.
So Snow can be thought of as an implementation of Scheme that incorporates a package system but uses another pre-existing Scheme implementation to provide it's basic language functionality. You can right toplevel programs and scripts in Snow, but you do not have access to a REPL. It sits atop the pre-existing Scheme like an application -- it doesn't integrate into it.
Was it developed with some specific kind of applications in mind? Or was it perhaps a test vehicle to develop the packaging system? I can't quite understand its "raison d'etre". Does it have much of a userbase?
Thanks, Paul
Snow was designed to be a portable module system that could be used on many implementations of Scheme **now**, hence the name (Scheme Now! or Snow).
Because of its primary goal to be portable to many implementations of Scheme, it avoided relying or exposing features that were not common to many implementations. One of those features is the REPL. Although many implementations have a REPL, they have sufficient incompatibilities that a strictly static linking model was used (i.e. a program declares which packages it requires, and they declare which packages they require, and so on, so the transitive closure is the set of packages that must be loaded).
As for documentation, did you check the Snow web site?
The Snow project is fairly dormant right now. I was hoping it would catch on with users, but after a short while it was clear that it would take a lot of work to convince people to contribute to Snow and make it evolve.
Marc
On 2-Mar-09, at 3:25 PM, Paul Onions wrote:
On 2009-03-02 12:44:41 +0000, Adrien Piérard <pierarda@iro.umontreal.ca
said:
You don't run snow in gambit, it's the converse.
You write your package with portable R4RS code and snow code (package* foo) and so on. Then, you run "snow ./package.scm" and you're done. Feel like eating worms? "SNOW_HOST=csi ./package.scm". And so on.
Ahh, now I begin to see the "big picture", thanks.
So Snow can be thought of as an implementation of Scheme that incorporates a package system but uses another pre-existing Scheme implementation to provide it's basic language functionality. You can right toplevel programs and scripts in Snow, but you do not have access to a REPL. It sits atop the pre-existing Scheme like an application -- it doesn't integrate into it.
Was it developed with some specific kind of applications in mind? Or was it perhaps a test vehicle to develop the packaging system? I can't quite understand its "raison d'etre". Does it have much of a userbase?
Thanks, Paul
Gambit-list mailing list Gambit-list@iro.umontreal.ca https://webmail.iro.umontreal.ca/mailman/listinfo/gambit-list
On 2009-03-02 21:07:39 +0000, Marc Feeley feeley@iro.umontreal.ca said:
As for documentation, did you check the Snow web site?
Hello Mark,
Yes, I read all the documentation, but somehow I had the preconceived notion (entirely my own invention I think), that I would be able to use Snow's packages in my own work with Gambit. Thanks for putting things into context for me.
The Snow project is fairly dormant right now. I was hoping it would catch on with users, but after a short while it was clear that it would take a lot of work to convince people to contribute to Snow and make it evolve.
Seems a shame that all that effort is going to waste.
Paul
On 2-Mar-09, at 5:22 PM, Paul Onions wrote:
On 2009-03-02 21:07:39 +0000, Marc Feeley feeley@iro.umontreal.ca said:
As for documentation, did you check the Snow web site?
Hello Mark,
Yes, I read all the documentation, but somehow I had the preconceived notion (entirely my own invention I think), that I would be able to use Snow's packages in my own work with Gambit. Thanks for putting things into context for me.
The Snow project is fairly dormant right now. I was hoping it would catch on with users, but after a short while it was clear that it would take a lot of work to convince people to contribute to Snow and make it evolve.
Seems a shame that all that effort is going to waste.
Well... who said Snow had ended? I'm sure it will live on in one form or another... for example it could be an important part of the Gambit module system.
Marc