Page 1 of 1

Interesting Scheme applications

Posted: Sun Jun 29, 2008 11:11 am
by Martin
A place to post any interesting applications you happen to come across written in Scheme.

Some I've seen are:
http://www.pawfal.org/fluxus/
http://impromptu.moso.com.au/
http://www.metascoop.com/metamodeler.htm
http://scwm.sourceforge.net/
and
http://practical-scheme.net/wiliki/wiliki.cgi

Re: Interesting Scheme applications

Posted: Sun Jun 29, 2008 9:05 pm
by bubo
ad scwm

i have downloaded a scwm tarball a while ago. it was totally impossible to get the thing build with gcc 4.1. the last mail threads are from around 2002 or so, it does not seem to be maintained in any form anymore, hence there is also no debian binary for it, though it was. i played around with it for a week or so. i am not experienced enough to replace all the old libraries with new ones. of all scheme projects, which have been neglected, scwm is for sure the most interesting one - windowmanager for X, highly configurable through constaints...if you read through the manual, you can see how powerfull it actually could be. it is really a pity. would be a great excercise to rewrite it in guile, if you ask me...for now there is still sawfish, which works just great for me (who works anyway on the console most of the time...).

thanks for the links. i knew fluxus, but don't use it. (i barely use the gimp, which is custmizable with guile). how can i pay you now. maybe with other links?

http://www.scsh.net/ *here you will find even more links for all kind of smaller projects
http://okmij.org/ftp/Scheme/
http://arglist.com/guile/
http://www.gnu.org/software/guile/old-g ... jects.html *note that this is a list of semi-maintained guile-apps of which i just tested the interface for postgresql
http://community.schemewiki.org/?Stalin *that one is fun! i compiled smaller programs with it on an old PII box (don't laugh now, this thing can bring down your OS for sure! you never know where it will use memory, if the program has a mistake, but makes notably faster code...)

Re: Interesting Scheme applications

Posted: Sun Jun 29, 2008 10:41 pm
by jmbr
If you're looking for a lispy (not necessarily written in Scheme) WM, you might like StumpWM http://www.nongnu.org/stumpwm/

It is written in Common Lisp and is under active development.

Re: Interesting Scheme applications

Posted: Mon Jun 30, 2008 10:08 am
by Exolon
Wow! That looks really impressive. I'll have to check that out; seems like the kind of attention-grabbing, powerful thing that might attract someone to programming, too. Quality links :)

Re: Interesting Scheme applications

Posted: Tue Jul 01, 2008 11:43 am
by bubo
jmbr wrote:If you're looking for a lispy (not necessarily written in Scheme) WM, you might like StumpWM http://www.nongnu.org/stumpwm/

It is written in Common Lisp and is under active development.

that's exactly, what i like. i have downloaded and build the stuff, i think 0.92 or so (there is even a debian binary, but a veeery oooold one). however, i did it quick and dirty so it does not work perfectly. for example is all the other stuff i needed for it was from the debian repository, which means i could'nt build it with clisp (too old), only with sbcl and i don't know if the maintainer at debian's has compiled the sbcl package --with-threads and so on. but i really like it. it is like screen for the desktop. i use screen a lot on the terminal, actually all the time... so the little time i spent on the desktop to read manuals with gv or watch some stupid pictures, any window manager is o.k for me. don't have the time to play around with it now. for instance, if i start a gnome-terminal and watch pics with feh, then feh will not respond to my keystrokes et cetera et cetera. so i have to build all the nice lispy stuff from source (delete all debian binaries, download about 30 lisp applications and .....). after all, thanks a lot for the link! ;)

Re: Interesting Scheme applications

Posted: Wed Jul 02, 2008 11:12 am
by Martin
Not 'applications' in the sense I meant, but with the web being used more and more for such things I think Hop, SISCweb, Beautiful Report Language and Roadsend PHP (implemented with Bigloo and C) deserve mention here as well.


http://hop.inria.fr/
HOP is a new Software Development Kit for the Web 2.0. It relies a new higher-order language for programming interactive web applications such as web agendas, web galleries, music players, etc. HOP can be viewed as a replacement for traditional graphical toolkits. HOP is implemented as a Web broker, i.e., a Web server that may act indifferently as a regular Web server or Web proxy.
http://siscweb.sourceforge.net/
SISCweb is a framework to facilitate writing stateful Scheme web applications in a J2EE environment.

By using continuations, SISCweb does away with the page-centric execution model typical of web programming. Every time the program sends a response to the browser, its state is suspended, to be then resumed from that exact point when the browser submits a request.

One implication of this approach is that local variables in scope when the response is sent will still be in scope when the subsequent request is received, making much of the session-object data shuffling needless. Another consequence is that, much like in console-based applications, the conversational state between client and server is constantly maintained -- hence the term "stateful."

SISCweb is implemented in SISC, a Scheme interpreter for the JVM with support for full continuations.
http://brl.sourceforge.net/
BRL stands for Beautiful Report Language.

* Beautiful: It is easy to write BRL code that is understandable and maintainable, appealing to a programmer's sense of aesthetics.

* Report: BRL is particularly suitable for constructing output that is a mix of static and dynamic content, e.g. web pages, e-mail messages. Its greatest strength is constructing output from SQL databases.

* Language: The full power of a general-purpose programming language is there when needed. Simple examples are trivial uses of the language, but look more like templates than programming. The template system and programming language are more tightly integrated in BRL than in any other system.
http://www.roadsend.com/home/index.php
Roadsend PHP is a free, open source implementation of the PHP language. It includes a compiler that produces native binaries (no interpreter required). Roadsend Compiler can build online web applications with Fast/CGI, offline web applications with an embedded web server (MicroServer), desktop GUI applications with PHP-GTK, and console applications.

Re: Interesting Scheme applications

Posted: Mon Jul 07, 2008 5:35 pm
by doublec
Aviarc, a commercial system for building web applications, was written (at the time I was involved) in SISC Scheme: http://www.aviarc.com.au/main/

The end user of the system didn't write in Scheme (although they could drop down to it if needed), but wrote in another language which was compiled to Scheme under the covers.

Re: Interesting Scheme applications

Posted: Tue Jul 08, 2008 12:08 pm
by TheGZeus
not written in, but extended with scheme:
http://ccrma-www.stanford.edu/software/snd/
The Emacs of sound editors. The standard library's not huge and the keybinding method's a bit verbose...