Snow is a lisp-like GUI description language and relative interpreter, written in Common Lisp. It aims mainly at replacing web-based interfaces: it is far more feature-rich and powerful without sacrificing portability or easiness to code.
Be the first to post a text review of Snow. Rate and review a project by clicking thumbs up or thumbs down in the right column.
10-13-2005 Clisp server seems ok. Widgets example ported to Lisp. Fixed some minor bugs. Real numbers implemented. 10-08-2005 Lisp server development started. For now, it is Clisp-only, but I'll make a clocc/port-based one later, which will run on more CL implementations & support threads too (Clisp doesn't). 10-04-2005 Fixed a bug with DataList.print(); also fixed some bugs caused by the new Widget class. 10-01-2005 Rewrite of the type system + widgets package. (add) and (remove) implemented. NIL is now member of SnowConstants. 09-27-2005 Basic image support added. Now button and label take the :image attribute, which must be the result of an (image <name>) form. The request is made to the server using the main connection; however, image data is sent back by the server through a separate connection to avoid mixing image data and Snow code, or rendering the GUIunresponsive in case of a very large image being transmitted. There is support for both multithreading servers and single-threaded ones; in the latter case the separate connection is kept open to eliminate the need of an image-dedicated thread. (Note that this does not prevent the unresponsive GUI problem, since while the server is sending image data it cannot respond to events). 09-22-2005 "Composite" widgets support added: you can now define new widgets in terms of default ones. You can pass them parameters, access and modify their sub-components, and do with them everything you can do with default hard-coded widgets. They have their local environment so that names do not collide. However, (this is a bug) when you don't specify a name for a child a new name is generated every time an instance of the parent is created. But, since if you don't give it a name it usually means you don't want to touch it later - 'cause you couldn't know the name anyway - this shouldn't be much of a problem. Also, setf has been slightly improved, and a new SnowConstants class has been created to contain all the often-used constants such as version, unbound value, etc. 09-18-2005 Major rewrite of the interpreter. Now I/O, evaluation, widget creation and event management are clearly separate tasks, and each has its own class. Environments are now supported. Temporarily broken support for custom widgets. 09-16-2005 - Slightly changed the behaviour of classes in the snow.sexp package. toString() now is the old getValue() for CharString - eliminates the problem of the "". New print() method gives the printed representation of a SexpElement. S-expressions now can contain objects of any type - should Sexp be renamed to something like LinkedList at this point? - Added basic support for custom widgets 09-14-2005 Rewrite of SnowApp internals. Now widgets are all in the appropriate package and share a common interface. Created the SnowApp$ListenerFactoryclass to collect in the same place all the event-related code. 09-13-2005 Added support for dialogs. Added new widgets (sliders & progress bars). Minor fixing & reorganizing. Widgets example updated accordingly. 09-09-2005 Reorganized SnowApp a bit, added more widgets (combo boxes). Minor changes in the parser & sexp packages. Widget example updated. 09-06-2005 Widgets example added, which should show every widget supported by Snow. 09-05-2005 Added more menu widgets (checkboxes, radio buttons). 09-04-2005 Added some widgets (menus, tabbed panel). Fixed (well, not completely) a problem with splitpane when changing one of the children, which would not be updated. 09-03-2005 Started development of the C server. Changed the name to Snow (Snow's not ordinary webinterface) because Spring is already taken. 09-02-2005 Modified default server so to make clearer the separation between app code and GUI code --> response file support added. Calculator example modified accordingly. 09-01-2005 13:00 Startup notices added to Spring, SpringApp and default server; minor bug fixes. 09-01-2005 11:51 Changelog created
10-01-2005 Rewrite of the type system + widgets package. (add) and (remove) implemented. NIL is now member of SnowConstants. 09-27-2005 Basic image support added. Now button and label take the :image attribute, which must be the result of an (image <name>) form. The request is made to the server using the main connection; however, image data is sent back by the server through a separate connection to avoid mixing image data and Snow code, or rendering the GUIunresponsive in case of a very large image being transmitted. There is support for both multithreading servers and single-threaded ones; in the latter case the separate connection is kept open to eliminate the need of an image-dedicated thread. (Note that this does not prevent the unresponsive GUI problem, since while the server is sending image data it cannot respond to events). 09-22-2005 "Composite" widgets support added: you can now define new widgets in terms of default ones. You can pass them parameters, access and modify their sub-components, and do with them everything you can do with default hard-coded widgets. They have their local environment so that names do not collide. However, (this is a bug) when you don't specify a name for a child a new name is generated every time an instance of the parent is created. But, since if you don't give it a name it usually means you don't want to touch it later - 'cause you couldn't know the name anyway - this shouldn't be much of a problem. Also, setf has been slightly improved, and a new SnowConstants class has been created to contain all the often-used constants such as version, unbound value, etc. 09-18-2005 Major rewrite of the interpreter. Now I/O, evaluation, widget creation and event management are clearly separate tasks, and each has its own class. Environments are now supported. Temporarily broken support for custom widgets. 09-16-2005 - Slightly changed the behaviour of classes in the snow.sexp package. toString() now is the old getValue() for CharString - eliminates the problem of the "". New print() method gives the printed representation of a SexpElement. S-expressions now can contain objects of any type - should Sexp be renamed to something like LinkedList at this point? - Added basic support for custom widgets 09-14-2005 Rewrite of SnowApp internals. Now widgets are all in the appropriate package and share a common interface. Created the SnowApp$ListenerFactoryclass to collect in the same place all the event-related code. 09-13-2005 Added support for dialogs. Added new widgets (sliders & progress bars). Minor fixing & reorganizing. Widgets example updated accordingly. 09-09-2005 Reorganized SnowApp a bit, added more widgets (combo boxes). Minor changes in the parser & sexp packages. Widget example updated. 09-06-2005 Widgets example added, which should show every widget supported by Snow. 09-05-2005 Added more menu widgets (checkboxes, radio buttons). 09-04-2005 Added some widgets (menus, tabbed panel). Fixed (well, not completely) a problem with splitpane when changing one of the children, which would not be updated. 09-03-2005 Started development of the C server. Changed the name to Snow (Snow's not ordinary webinterface) because Spring is already taken. 09-02-2005 Modified default server so to make clearer the separation between app code and GUI code --> response file support added. Calculator example modified accordingly. 09-01-2005 13:00 Startup notices added to Spring, SpringApp and default server; minor bug fixes. 09-01-2005 11:51 Changelog created
09-27-2005 Basic image support added. Now button and label take the :image attribute, which must be the result of an (image <name>) form. The request is made to the server using the main connection; however, image data is sent back by the server through a separate connection to avoid mixing image data and Snow code, or rendering the GUIunresponsive in case of a very large image being transmitted. There is support for both multithreading servers and single-threaded ones; in the latter case the separate connection is kept open to eliminate the need of an image-dedicated thread. (Note that this does not prevent the unresponsive GUI problem, since while the server is sending image data it cannot respond to events). 09-22-2005 "Composite" widgets support added: you can now define new widgets in terms of default ones. You can pass them parameters, access and modify their sub-components, and do with them everything you can do with default hard-coded widgets. They have their local environment so that names do not collide. However, (this is a bug) when you don't specify a name for a child a new name is generated every time an instance of the parent is created. But, since if you don't give it a name it usually means you don't want to touch it later - 'cause you couldn't know the name anyway - this shouldn't be much of a problem. Also, setf has been slightly improved, and a new SnowConstants class has been created to contain all the often-used constants such as version, unbound value, etc. 09-18-2005 Major rewrite of the interpreter. Now I/O, evaluation, widget creation and event management are clearly separate tasks, and each has its own class. Environments are now supported. Temporarily broken support for custom widgets. 09-16-2005 - Slightly changed the behaviour of classes in the snow.sexp package. toString() now is the old getValue() for CharString - eliminates the problem of the "". New print() method gives the printed representation of a SexpElement. S-expressions now can contain objects of any type - should Sexp be renamed to something like LinkedList at this point? - Added basic support for custom widgets 09-14-2005 Rewrite of SnowApp internals. Now widgets are all in the appropriate package and share a common interface. Created the SnowApp$ListenerFactoryclass to collect in the same place all the event-related code. 09-13-2005 Added support for dialogs. Added new widgets (sliders & progress bars). Minor fixing & reorganizing. Widgets example updated accordingly. 09-09-2005 Reorganized SnowApp a bit, added more widgets (combo boxes). Minor changes in the parser & sexp packages. Widget example updated. 09-06-2005 Widgets example added, which should show every widget supported by Snow. 09-05-2005 Added more menu widgets (checkboxes, radio buttons). 09-04-2005 Added some widgets (menus, tabbed panel). Fixed (well, not completely) a problem with splitpane when changing one of the children, which would not be updated. 09-03-2005 Started development of the C server. Changed the name to Snow (Snow's not ordinary webinterface) because Spring is already taken. 09-02-2005 Modified default server so to make clearer the separation between app code and GUI code --> response file support added. Calculator example modified accordingly. 09-01-2005 13:00 Startup notices added to Spring, SpringApp and default server; minor bug fixes. 09-01-2005 11:51 Changelog created
09-22-2005 "Composite" widgets support added: you can now define new widgets in terms of default ones. You can pass them parameters, access and modify their sub-components, and do with them everything you can do with default hard-coded widgets. They have their local environment so that names do not collide. However, (this is a bug) when you don't specify a name for a child a new name is generated every time an instance of the parent is created. But, since if you don't give it a name it usually means you don't want to touch it later - 'cause you couldn't know the name anyway - this shouldn't be much of a problem. Also, setf has been slightly improved, and a new SnowConstants class has been created to contain all the often-used constants such as version, unbound value, etc. 09-18-2005 Major rewrite of the interpreter. Now I/O, evaluation, widget creation and event management are clearly separate tasks, and each has its own class. Environments are now supported. Temporarily broken support for custom widgets. 09-16-2005 - Slightly changed the behaviour of classes in the snow.sexp package. toString() now is the old getValue() for CharString - eliminates the problem of the "". New print() method gives the printed representaton of a SexpElement. S-expressions now can contain objects of any type - should Sexp be renamed to something like LinkedList at this point? - Added basic support for custom widgets 09-14-2005 Rewrite of SnowApp internals. Now widgets are all in the appropriate package and share a common interface. Created the SnowApp$ListenerFactory class to collect in the same place all the event-related code. 09-13-2005 Added support for dialogs. Added new widgets (sliders & progress bars). Minor fixing & reorganizing. Widgets example updated accordingly. 09-09-2005 Reorganized SnowApp a bit, added more widgets (combo boxes). Minor changes in the parser & sexp packages. Widget example updated. 09-06-2005 Widgets example added, which should show every widget supported by Snow. 09-05-2005 Added more menu widgets (checkboxes, radio buttons). 09-04-2005 Added some widgets (menus, tabbed panel). Fixed (well, not completely) a problem with splitpane when changing one of the children, which would not be updated. 09-03-2005 Started development of the C server. Changed the name to Snow (Snow's not ordinary webinterface) because Spring is already taken. 09-02-2005 Modified default server so to make clearer the separation between app code and GUI code --> response file support added. Calculator example modified accordingly. 09-01-2005 13:00 Startup notices added to Spring, SpringApp and default server; minor bug fixes. 09-01-2005 11:51 Changelog created
Be the first person to add a text review.
Copyright © 2009 Geeknet, Inc. All rights reserved. Terms of Use
Thanks for your rating!
Would you also like to write a review?
Thanks for your review!
Get credit for your review by logging in via OpenID. Click your account provider: