I'm a Lisp newbie, and having fun learning how things work. I've been reading the newsgroups for a couple of months, but haven't gotten a great impresssion of what people are *actually* using Lisp for.
I'd go first, but have no active project.
Any takers for the question "What are you doing in Lisp, right now?"
Tait
ps I'm looking for inspiration here. Pleaes don't bother with "Something really great and world changing, but I can't tell you because I'm on an IND."
On Wed, 03 Nov 2004 13:03:41 -0800, Tait Stevens wrote:
> Any takers for the question "What are you doing in Lisp, right now?"
OK, I might as well 'fess up. Maybe it'll give me the extra kick I need to finish some of these things. I'm currently working on:
- Writing something that will talk to an imap server and make an archive of an email account that I have no access to except via imap. I've got something working using cl-postoffice, but now I'm thinking I should have used mel-base... oh well, in any case it's just about working... except it writes mbox format that other programs don't seem to like reading very much. Must get around to fixing that some time.
- Converting an old project of mine (http://www.abstractnonsense.com/portfolio/ocr.html) from Java to Lisp, and being constantly amazed at how much smaller it's getting. I've converted about 90% of it now.
Cheers, Bill. -- "If you give someone Fortran, he has Fortran. If you give someone Lisp, he has any language he pleases." -- Guy Steele
> I'm a Lisp newbie, and having fun learning how things work. I've been > reading the newsgroups for a couple of months, but haven't gotten a > great impresssion of what people are *actually* using Lisp for.
> I'd go first, but have no active project.
> Any takers for the question "What are you doing in Lisp, right now?"
Right now?
Writing macro-writing utilities, and trying to figure out if it's possible to get lazy evalution to work.
I'm also writing yet another html-generating framework, that being easier than adapting any of the current ones. Can't seem to find any html coders who will work for bananas; they all prefer to work in libraries.
In article <458628b3.0411031303.1f67e...@posting.google.com>, tait.stev...@gmail.com (Tait Stevens) wrote:
> Hi All,
> I'm a Lisp newbie, and having fun learning how things work. I've been > reading the newsgroups for a couple of months, but haven't gotten a > great impresssion of what people are *actually* using Lisp for.
> I'd go first, but have no active project.
> Any takers for the question "What are you doing in Lisp, right now?"
> Tait
> ps I'm looking for inspiration here. Pleaes don't bother with > "Something really great and world changing, but I can't tell you > because I'm on an IND."
(1) While hoping for new funding to resume work on a mostly complete huge application to support clinical drug trials (its funcionality encompasses those of PageMaker, Lotus Notes, SQL, and includes its own GUI)...
(2) I am developing a portable GUI framework involving OpenGL, OpenAL, arbitrary graphics files and more so I can...
(3) ...resurrect a line of commercial educational software.
> Any takers for the question "What are you doing in Lisp, right now?"
Currently i'm writing a web platform for developing Database front-ends (CRUD). It is my first large project (non-toy) in lisp, and i'm loving it.
First, i have a macro that automagically generates a clsql view-class from a table in my postgres database. This includes setting up all the relationships with the proper :join-class info. The hardest part of this was figuring out the postgres system tables.
The macro also defines a view-class-metadata method that returns some info about the table (col-names, types, pkeys, fkeys, etc.)
Using the created view-classes and metadata, i then define a UCW componenent with a custom sql-view-class parent class that can autmatically display/query/edit/add/etc by calling a more specific component (view-class-search say) with itself as a slot.
(UCW is a great web-app development platform, similar to struts or seaside, only quite a bit better IMO).
What this gets me is a complete basic CRUD screen with roughly 2 lines of code (connect to database, generate classes). Then it's simply a matter of specifiying the methods on my new classes to change the default behavior. I can then whip up a quick data driven web app in a few short hours of coding.
Eventually, the goal is to create an Access-like package on top of mozilla and UCW, and allow my clients to create minimal databases with crud screens, simple by creating tables in the DB (which can be done via a wizard interface .. no sql needed)
Since it's all generated from a postgres database, and a lot of the functionality of the interface derives from a proper specification of primary and foriegn keys, i think the databases will be of a higher quality then Access-msjet type projects, even though they are written by the same class of user.
I was inspired by a similar package written in Perl (Maypole). I found that while it created the defaults very well, as soon as you tried to change it you ran into hackery. With my lisp approach, everything is seamless, and simple to extend/modify. A lot of it's ease is due to the incredible UCW package, which makes web-dev simple, as it handles all the HTTP bits for you. I suggest you check it out if you are a web developer.
> I'm a Lisp newbie, and having fun learning how things work. I've been > reading the newsgroups for a couple of months, but haven't gotten a > great impresssion of what people are *actually* using Lisp for.
> I'd go first, but have no active project.
> Any takers for the question "What are you doing in Lisp, right now?"
(Something I get paid to do:)
1. A code-walker for the commercial product produced by my employer. It walks the full source code of the product (which is written in 5 programming languages), finds every bit of code that emits any text to the Linux system logging facility, parses out the messages, fnids references to variables and constants and substitutes their values, and writes a nicely-formatted report in which all the messages are sorted according to logging level.
(Something I'm doing in return for non-monetary consideration:)
2. Figuring out how to interface a certain Lisp to the OSX UI frameworks.
(Something I'm doing to help some friends get some business deals:)
3. Client code to suck very large datasets from publicly-available databases (mostly genome and proteome records) and parse them into tree structures that are easy to search, annotate, and update.
(Things I'm doing because they are fun and/or someone would like me to do them:)
4. A programmable word processor (Alpaca) for Mac OS X.
5. An economic simulation game (Hansa2).
6. A Lisp IDE for Mac OS X.
7. The framework code and tools used to build (4), (5), and (6) (Bosco).
8. A VM suitable for running the output of Lisp compilers.
Yes, this is too many projects. Yes, it means that releases take a long time.
On the other hand, one of the reasons I use Lisp is because II can actually continue to make progress and releases in the little bits of time I have to give each spare-time project.
On 3 Nov 2004 13:03:41 -0800, tait.stev...@gmail.com (Tait Stevens) wrote:
> Any takers for the question "What are you doing in Lisp, right now?"
For money:
1. A web application which dynamically generates PDF, RTF, or HTML from XSL-FO templates. Data is filled in from a hierarchical database which is itself extended and modified on the fly by the templates when they're uploaded. We use TBNL/mod_lisp plus CL-WHO for the web app and CLSQL/PostgreSQL for backups. For XML parsing we prototyped with XMLS but will now switch to either CXML or Franz' new SAX parser. The conversion from XSL-FO to the afore-mentioned output formats is done with external Java tools.
2. Another web application which gathers data from surveys done by pharma companies and produces up-to-date graphical output of the current results for the client. The data is uploaded as CSV data and the graphical output can be modified by the guy who coordinates the surveys with a simple Lispy configuration file - he's not a programmer himself. These are static pages created by a cron job using CL-GD and CL-WHO.
3. Maintenance of a Windows app (done with LispWorks' CAPI) I wrote about a year ago. It is used by my client to assemble data from various websites and generates CSV output for MS Excel. It makes heavy use of CL-PPCRE to extract the relevant data from the various sites it encounters. (No, this is not used for unsolicited marketing.)
For fun:
4. A .NET layer for Common Lisp, currently for LispWorks. I've stopped working on it after I showed an initial prototype in Amsterdam but I'll continue real soon now... :)
Cheers, Edi.
--
Lisp is not dead, it just smells funny.
Real email: (replace (subseq "spamt...@agharta.de" 5) "edi")
tait.stev...@gmail.com (Tait Stevens) writes: > Any takers for the question "What are you doing in Lisp, right now?"
Right now I'm working on a book about Common Lisp. That has involved writing code to: filter spam, parse binary data in general, parse ID3 tags from MP3 files, organize the data so parsed into a queryable in-memory database, stream MP3s to MP3 clients such as iTunes, XMMS, and Winamp using the Shoutcast server, programatically generate HTML, and put the last four together into a web interface for the Shoutcast server and MP3 database. If I get to it I'll be writinga parser generator (actually the code is already written ) a la Yacc or ANTLR.
When I finish the book I will--finally--get to pop the stack back to my long delayed project to implement a genetic programming system for breeding critters that play the game of Go.
In article <458628b3.0411031303.1f67e...@posting.google.com>, tait.stev...@gmail.com (Tait Stevens) wrote:
> Hi All,
> I'm a Lisp newbie, and having fun learning how things work. I've been > reading the newsgroups for a couple of months, but haven't gotten a > great impresssion of what people are *actually* using Lisp for.
> I'd go first, but have no active project.
> Any takers for the question "What are you doing in Lisp, right now?"
> Tait
> ps I'm looking for inspiration here. Pleaes don't bother with > "Something really great and world changing, but I can't tell you > because I'm on an IND."
For money:
I'm writing, in Common Lisp, a programming language for writing models of human cognition.
I am continuing to evolve a system that generates business applications for .NET in C#. It is like a domain specific language with an underlying framework. (It could easily generate Java or other languages.)
We have been using it in its evolving state for about 5 years now and it is giving us about a 10-1 productivity gain in the initial development. Since the generated code is (now) essentially bug free, this also saves LOTS of time. And it is MUCH easier to evolve programs too - more savings.
Why do we not just use Lisp as the delivery language? It comes down to components. .NET (and Java) have huge choices of commercially available components for GUI, Infrastructure, Database, ... (not available in Lisp).