Page 3 of 3

Re: What are you doing in Common Lisp lately?

Posted: Tue Jul 08, 2008 6:07 am
by luskwater
I'm writing a card-scanner configuration tool for my company. We have about 20 retirement communities, and are using three different types of proximity ID cards. Each type has its own scanner model, and requires its own custom (non-factory) configuration.

One of the sweet things about Lisp (some part of which I could have done in Ruby, my other language) ist that it prints structures in a format Lisp can read back. Thus, rather than custom-code a configuration format, I can take the printed output from a working card reader and include it as a list of configuration settings; Lisp will read it into the correct C-flavored structure (thanks to Swig and clisp).

Then, I can mapcar through the list, applying a generic function set-config to each entry: the GF's methods call the correct configuration function based on the structure that Lisp re-created from the original config output.

This gives me bit-level access to the configurations, without having to hand-code a config-to-struct transform, etc. In addition, the configuration entries are readable, since the Lisp structure I/O is readable: instead of

Code: Select all

BIT_SETTINGS = [[0,0,16,26], [1,1,16,26], [1,1,25,32]]
as in my original Ruby implementation, I can represent (one part of this) like

Code: Select all

(defvar mt-config
  (list #S(PCPROX-API::ID-BIT-COUNTS :LEAD-PARITY 1
                                     :TRAILING-PARITY 1
                                     :ID 16
                                     :TOTAL 26
                                     :IPAD4 0
                                     :IPAD5 0
                                     :IPAD6 0
                                     :IPAD7 0)
  ...))
I also have used Lisp and Parenscript with Hunchentoot to generate the first cut of a new employees display page, which provided a slideshow of new employees.

Re: What are you doing in Common Lisp lately?

Posted: Mon Jul 14, 2008 5:08 pm
by xristos
i'm working on a network packet dissector sitting on top of plokami
(http://www.cliki.net/plokami) for realtime network packet analysis.
The aim is to create interactive, lisp programmable packet sniffer/generator
something similar to scapy but much faster in realtime processing
(sbcl vs python = no contest).

I also started writing an opengl livecoding environment similar to fluxus entirely in CL.
Its at a very early stage but a sample video of the opengl repl is here:
http://tinyurl.com/6yh7zy (quicktime .mov)

Re: What are you doing in Common Lisp lately?

Posted: Mon Jul 14, 2008 5:22 pm
by Sacha
I just did and sold a call shop management program. It routes phone calls to different providers based on the prefix, shows real time cost of calls in each phone booth, prints receipts, shows real time call information on lcd displays in each booth, does the usual statistics and so on. The program runs in each call shop, it is web based but the server sits on the same computer as the browser. I used hunchentoot and did all the ajax stuff on my own. This was done using lispworks.

This was my first lisp commercial project. Overall a pretty good tool for the job. I had some problems with application delivery, and had to fall back to some delphi code in a dll in order to do the receipt printing. I'm not too pleased with the process (as in windows process) handling in lispworks.

Most of my problems were coming from the compatibility layer with other OSes, I'd rather have a tool which is only directed toward windows (where are my customers). For instance there are too many layers to the GDI stuff, it's all undocumented, and the source code is not available. I couldn't build my own grid CAPI component because of this. I have pretty high standards and the provided example was way off. That's why i went for a web interface.

The lispworks people were very helpfull, when i found a bug they fixed it within a week.

And now i'm doing ..... the very same program for another company ! This time they'll want a centralized version as well, so i'm trying to use immutable persitent data structures all the way, which should allow for better concurrency. They're talking about 6000 callshops, that's a lot of requests per second ... we'll see how it goes !

Sacha

Re: What are you doing in Common Lisp lately?

Posted: Tue Jul 15, 2008 9:00 am
by WarWeasle
I'm creating something like a 3D Emacs that's a media editor instead of just a text editor.

Here's my page: http://cl-beer.blogspot.com/

I have a ton of ideas but right now I am using CFFI to create binding for Cairo [done, as a learning exercise], Pango [Almost Done], cl-OpenGl [Which seems to have broken with the latest cffi], and PixBuf. I imagine that it could display any type of data by abstracting the view from the data itself. Eventually I want to implement multiple users modifying shared data, encryption for communications, intrinsic version control and history, a Lisp sandbox, etc. I know it's a huge project but Lisp is making it possible.

Let me know what you think at my site.

Thanks!

WarWeasle

Re: What are you doing in Common Lisp lately?

Posted: Tue Jul 15, 2008 1:26 pm
by Balooga
I am one of the maintainers working on the SDL, SDL_gfx, SDL_mixer, SDL_ttf, SDL_image and OpenRM bindings for the Lispbuilder project.

Re: What are you doing in Common Lisp lately?

Posted: Wed Jul 16, 2008 12:44 pm
by sasha
Building http://toonlet.com, a free make-your-own-webcomic site. It uses UCW and a bunch of other libs. Pretty much everything but the character tool, which is in flash, is lisp-powered.

Re: What are you doing in Common Lisp lately?

Posted: Thu Jul 17, 2008 4:40 am
by theclapp
vi bindings for Lispworks are inching along. (http://common-lisp.net/project/lw-vim-mode/ and http://theclapp.org//blog/tags/vim_mode/) Changing jobs soon, so not a lot of time or energy to work on it. Hoping to pitch Lisp to the new company. (Currently they're using Perl, mostly.)