Log in

Practical Lisp 2008

A little more than three years ago there was a thread in comp.lang.lisp about what people were working on in Common Lisp. I found the replies, some summarized here, quite inspirational; they were from people doing practical stuff (even Real Work) with Common Lisp, beyond things like going through Project Euler or doing exercises from SICP. (Not that those aren't fine things to do, but.)

Let's update this. What are you using Common Lisp for in 2008? What are you using to do it? I'll start:

I mostly use Common Lisp to make graphics toys at Wigflip.com. To that end I'm always looking for new ways to produce or consume graphics-related things. For example, I'm adding support for processing OpenType fonts to ZPB-TTF and making a hybrid of Skippy and Vecto to produce simple vector-oriented animations. I'd also like to add APNG support to ZPNG.

I primarily use SBCL on Linux, x86 and x86-64, with Emacs and SLIME. For deploying all my website stuff I use Edi-ware extensively: Hunchentoot, HTML-TEMPLATE, and CL-WHO. I use CLSQL for a few things too. For graphics work, I use mostly my own libraries.

How about you? Leave a comment and let me know.



Page 2 of 3
<<[1] [2] [3] >>

NLP Stuff

I'm trying to do some NLP stuff with CL. Our system is a syntactic parser, and I'm trying to rewrite some parts of it in CL.


It aint dead

I work for www.cleartrip.com. The site mostly runs on CL. We use Allegro CL (earlier we did use CMUCL for some time). The UI rendering, the booking engines, the supplier integration, the payment gateways - all CL. Small parts of the site are done in RoR. We use hunchentoot, cl-ppcre, html-template, cl-memcached and lots of other lisp libraries. Company started with using a canned product made with Java+Oracle. We then replaced parts of it in parallel, proved better performance and stability and were then commissioned (so to speak).

We started with only me but now have about 10 lispers. Things learned : Freshers pick up lisp pretty fast if given simple guidance. You can build very high performance systems with CL. You can build very flexible and maintainable systems in CL.



I'm smuggling some CL into my paid job by writing a testing / conformance suite for an existing Python implementation of a network protocol we need to write a flash client to interface with. As the Python code is done using insane amounts of copy-paste, I went with heavy use of MOP to have the testsuite as declarative as possible.

I'm also trying to start my own company specialising in business (at least for now) CL (web) applications, basing it on extremely rapid customisation possible with Lisp.


Qualitative Simulation

I design and implement algorithm for automatic qualitative simulation of dynamical systems (Gene Regulatory Networks) with lack of precise quantitative information.
Common Lisp helps me when i have to represent and manipulate symbolic data.
I use Common Lisp also to develop UIs to show the results of the simulations.
This my full-time job but in the spare time I hack also on cl-objc.

I primarily use sbcl or ccl on gnu/linux and mac os x with emacs and slime.

what I do with Lisp

I use the Lispworks editor as my primary editor both for home and work. In support of using it for work, I wrote a small framework for making LW automatically mirror some files to a remote server on save, via rsync (described here (http://theclapp.blog-city.com/editing_locally_saving_remotely_lispworks_editor_backed_by.htm), with some maybe-actually-working code).

I have a couple of (relatively) active projects:

* a Vim mode for Lispworks (http://theclapp.org/blog/tags/vim_mode/)
* a GUI program to track my weight and exercise. I've never done much GUI stuff so it's very educational. I may decide to use Kenny's Cells library.

And an inactive project: a Lisp shell that works efficiently on both local and remote accounts.

And an idea for a project: a Lisp interface to the Linux userland filesystem (FUSE). I'd then enhance my editor plugin to use it, and enhance my current home-grown "time machine"-like rbackup setup to use it.

Monte Carlo Simulations

I use SBCL to write smallish MC simulations for my biophysics research.


Budget planning of the communes

we (http://common-lisp.net/project/cl-dwim/) are working on the budget planning and general communication to the communes in hungary.

this is basically an ajaxy webapp with ~5000 users (~500 at peak times) that gathers information from the communes and (based on the budget laws) computes the money each commune gets. at given moments in the year this survey is updated and the numbers recalculated based on the new survey results and the possible changes in the law. the site runs on a cluster of blades with threaded SBCL's (using sticky web sessions).

the whole software stack is free and on top of it is SBCL (a very big thanks to all the developers, SBCL is a key component for us and works great!).

we use numerous opensource libraries, and wrote several others ourselves. we are using the ucw_ajax branch, but there's some more detail available at the link above.

- attila.lendvai@that-big-mail-site-by-google

ps: although the app seems to be a big success based on the feedback from the users, it looks like the government is not willing to invest in it (and we are not willing to fill pockets). so we may be available for telecommunicating jobs in the near future...

Like the 80s, but less ambitious

I'm using Lisp to do vaguely AI-reminiscent stuff, though nothing as ambitious as early Lisp AI work was intended to be. In particular, Lisp is slowly working its way into the fit prediction algorithms at TrueJeans (http://truejeans.com/). I'm also doing some really basic algorithm prototyping for Credibli (http://credibli.com/) in Lisp.

I use SBCL and Clozure CL on OS X and Linux. Hacking with Slime, though thinking of trying Cusp, since just about everything else I do is in Eclipse these days.


I use Common Lisp for most of my tools and particularly for my Window Manager http://common-lisp.net/project/clfswm/.
I'm using mostly sbcl+slime under Linux for development and clisp for day to day use.


Letting out steam

Hobby hacker.

I'm teaching myself Lisp, through the excellent books Practical Common Lisp and Paradigms of AI Programming, and I've been at it for a couple of months now. It truly feels like I'm expanding my field of view in the programming world, which to this day has been BASIC, x86-ASM, C, C++, Java, Haskell & Python. Once the parens disappeared, I saw the beauty of Lisp. :-)

Daytime, I'm a C++ hacker at Opera Software (you know, the browser), doing ports to various Linux-based set-top boxes, music players and what have you. In order to not go crazy at the macro assembler that is C/C++, I'm letting out steam by reading c.l.l, my books, and writing about the things I learn, so my experiences can be of help to other Lisp-newbies (I hope!)



web startup

a sampling of the bountiful code we sit atop: sbcl, ucw_ajax, cl-cairo, cl-rsvg, cl-json, cl-migrations, clsql, cl-store, mel-base, pg-introspect, and lots of the other common packages. all wrangled through emacs/slime of course, on ubuntu at linode.

i'm very lucky in that this is my full time gig, and very thankful for the libraries, code, writing, and general expertise of the lispers whose shoulders have been offered for me to climb up on.


Re: Practical Lisp 2008

Currently devoting fractions of my sparetime cleaning up and making publicly available some general-purpose (AI/NLP/Data Mining) libraries I have worked on earlier. All in the hope that they will come useful later (for me or someone else).

So far I have gotten around to put up CL-ID3 (http://www.cliki.net/CL-ID3), CL-EARLEY-PARSER (http://www.cliki.net/CL-EARLEY-PARSER) and CL-CTRNN (http://www.cliki.net/CL-CTRNN).

More to come when more sparetime arrives...

Using OpenMCL(MacOSX) and LispWorksPro5 (Win).


How I Use Lisp

I'm using Lisp (SBCL) to implement a component based data mining platform with a web based front end. I work for a national research center in the U.S. and we have already developed one version of the system in Java. I have a lisp version working with a GWT front end. I'd like to replace the GWT parts with a lisp generated interface at some point. This work will be made public and open source in the near future under the SEASR project. See www.seasr.org.

My main interests are text mining -- primarily advanced information extraction.


my usage

I posted a response on my blog:




what I do with lisp

Hey, I work for a small oil drilling service company called "Secure Drilling".
We use Common Lisp (sbcl to be specific) to handle, share and help analyze all
the data we collect from real time instruments on drilling rigs. We're using Python (the language) for most of the display business.

All four of our developers are located in Houston. Our company won the Offshore Technology
Conference's "Spotlight on Technology Award" this year. Check it out:

Sometimes you'll see me lurking in #lisp as jasapp.

Lisp for fun and profit

I could say that I have been paid for doing Lisp for most of the past twenty years, starting as a student investigating a port of PCL to PSL (turned out to be too hard for me because PSL lacks closures) and writing a Lisp program (first running in PSL on a Cray-1, later ported to Lucid and Allegro on Sun-3s) to translate a DBMS system from BCPL to C as part of a porting project; then supporting A.I. researchers as a sysadmin and Lisp consultant (mostly on Allegro on Sun and SGI, as well as on Symbolics Lisp machines).

For the past more than eleven years I've been working at a research network operator. In 1998 I wrote an experimental system called "Fluxoscope" to process accounting information from the new "Netflow" system that Cisco added to its routers. Almost ten years later, this system is still in production, processing about 40'000 Netflow records per second year-in, year-out on a two-CPU Intel GNU/Linux server running Allegro CL. It is used for volume-based billing, monitoring, and traffic planning. I'm still adding functionality to this system, most recently Netflow v9/IPFIX and IPv6 support, as well as a special accounting application for a wireless "peering" project. Of course it contains an embedded HTTP server (based on AllegroScript), as well as an SNMP agent for monitoring.

Re: Lisp for fun and profit

I noticed on the fluxoscope page that you are willing to make the source code available. I am currently working on a distributed system monitoring application written in Lisp and could use some guidance concerning netflow data. Would you be willing to share your code with me? Email me at raison [at] chatsubo.net if you would like to discuss it further. Thanks!


I use lisp for...



SiteGrinder Photoshop plug-in

We use Lisp to develop a Photoshop plug-in that converts Photoshop designs to websites. http://www.medialab.com/sitegrinder Originally we were using xLisp embedded in the plug-in, but last year we ported it over as a smalll server written in Lispworks and run a thin client inside Photoshop. We are using Sven Caekenburgs s-http-server, Edi Weitz' cl-ppcre, among other libraries. The UI is done with OpenLaszlo.
I love my job.


What I Use Lisp For

I use Lisp to teach myself programming. I accidentally discovered this thing called hacking over a year ago and have been teaching myself using Lisp. After a brief period with Scheme, I switched to CL and I am loving every bit of it. To propel myself, I am developing an experimental database search - an interactive layer for manipulating some persistent objects using a mixture of combinatorics and other concepts (things I've never seen before but I am discovering as I progress on my journey.) I might turn it into a web app. Objectives? Fun. I've been using CLISP on Windows, but for its lack of threads I've turned to SBCL on Linux x86.

Yet more web stuff

Mostly, I'm using it to build a few online shops/galleries. I'm distilling a library from it, and will publish that once It's proven to be working usefully - hopefully it'll save somebody else from building the backend stuff from scratch all over again.

I'm sneaking it into my dayjob, in a Java house. Actually, it's not that stealthy - I said "by the way, it's in Lisp," got a few raspberries in response, and carried on. I've Buckley's chance of converting them, but at least I get to use my language of choice in writing utilities here. Mostly just crunching logfiles and using XML-RPC to update intranet pages, but we'll see how far I can expand it.

Which technologies am I using? cl-ppcre, clsql, hunchentoot and cl-who, off the top of my head and in no particular order. I was using araneida, but that seems to have died a death, so I've moved to a platform that runs on recent versions of SBCL.

VIlisp, Vim and a couple of x-terms are about as integrated as my development environment has gotten - who needs Java-style overhead? When I get the time free, I'll try re-implementing VIlisp in CL itself, but only because I don't like depending on Perl.


Lisp and 3D CAD

Here at CoCreate (http://www.cocreate.com, now becoming a part of PTC), Lisp and C++ are the main implementation languages for our flagship product CoCreate Modeling, which is a 3D CAD application. Lisp is also the main extension/configuration language for users and partners.

For details, see http://www.clausbrod.de/Blog/DefinePrivatePublic20071229 and the (Lisp-biased) FAQ pages on the product at http://www.clausbrod.de/OneSpaceModeling.



i use lisp to write games

i am currently writing a minimalist rts with lisp using opengl and cairo. it currently features procedurally generated textures, a simple ui, a developer console (aka a repl), a wide variety of building blocks for units and fragment-shaded laser beams. state of the art pathfinding is on the way.

-- cupe


I used SBCL and UCW to implement clone of FreeSide (http://www.freeside.biz/freeside/) billing system at http://card.surnet.ru .
Now in production for 3 years.

Last time I complitely rewrote Cells-GTK using Verrazano (http://common-lisp.net/project/fetter/) to autogenerate mostly all widgets
and signal handlers from GTK introspection. Also added GooCanvas (http://sourceforge.net/projects/goocanvas) support.

Not satisfied with Cells I'm experimenting with binding KR and other parts of Garnet to GTK now.


from mikel evins

This time around I'm working on Clozure Common Lisp. In my rather limited spare time I'm working (ever so slowly) on a network game. Mainly I use Clozure Common Lisp (formerly OpenMCL) for both, plus a few libraries, notably some made by Sven Van Caekenberghe and Edi Weitz.


We are compiling COBOL & CA-IDEAL to Java or C# with Common Lisp. Currently, we work with Lispworks.

Nothing particularly exciting, but we are doing control flow refactoring and mapping from say network databases to relational model.

main features are translation and BRE.

My development machine runs Linux, but it is a windows app, so my development is done inside VMWare (gonna get rid of it though after some tweaks to make it really cross-platform :) )

I am using Lispworks IDE at the moment. Emacs is/was my personal preference, but I got seduced by LW tools :)

Lately we moved to embrace and use some of freely available Common Lisp libraries. At this stage, only a little bit - however there are plans on using cl-ppcre extensively e.g..
Page 2 of 3
<<[1] [2] [3] >>