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."
Right Now??
Writing a Telephony Based Appointment Confirmation System for a group
of Ear/Nose/Throat Doctors. I am working with Dave Bakhash (PortusGroup).
LispWorks, Windows and Linux. CAPI Interface, Client/Server (Both written in Lisp).
Wade
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
> 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?"
>
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.
(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.
For what would you like to use Lisp?
kenny
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.
oh, and of course, clsql rox0rs!
drewc
(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.
> 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 "spam...@agharta.de" 5) "edi")
> 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.
-Peter
--
Peter Seibel pe...@javamonkey.com
Lisp is the red pill. -- John Fraser, comp.lang.lisp
For money:
I'm writing, in Common Lisp, a programming language for writing
models of human cognition.
Been doing this kind of work for over a decade.
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).
A particle engine for a 2d side-scroller (and I guess the
side-scroller itself, too).
Vladimir
>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?"
>
BioLingua, a biologist-programmer's workbench
> Tait Stevens wrote:
> > Any takers for the question "What are you doing in Lisp, right now?"
>
> Writing a Telephony Based Appointment Confirmation System for a group
> of Ear/Nose/Throat Doctors. I am working with Dave Bakhash
> (PortusGroup).
>
> http://www.portusgroup.com
>
> LispWorks, Windows and Linux. CAPI Interface, Client/Server (Both
> written in Lisp).
I should add that we just completed a massive email-to-voice gateway for
a company currently specializing in email-to-fax gateway services. It
was a combination of a Lisp engine, alongside several Perl scripts which
elegantly handle email-related routines.
The service should be available some (hopefully early) next year.
Personally, I've been managing development for a few websites. I had a
huge opportunity a few years ago, to develop a large diamond website,
based out of New York City, but chose Java over CL. Our company is now
developing another one, for which we've decided to use PHP.
We have yet another website we'll be starting in a few months, and this
will probably be the first website we try to tackle in CL. Of course,
Wade will be the project lead. The website is for an Oral and
Maxillofacial Surgery practice.
--dave
Programming language "research"[1], focusing on concurrency at the
moment. For me, Common Lisp is more a language to write programming
languages than a language to write programs.
Kind regards,
Dirk Gerrits
[1] I'm not actually a researcher who gets paid to do this at the
moment. Just a student with a hobby.
> tait.s...@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
> [...]
> 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.
Game of GO and Lisp! Sounds like music to my ears ;-)
--
Emre Sevinc
eMBA Software Developer Actively engaged in:
http:www.bilgi.edu.tr http://ileriseviye.org
http://www.bilgi.edu.tr http://fazlamesai.net
Cognitive Science Student http://cazci.com
http://www.cogsci.boun.edu.tr
Tait,
Thanks a lot for the question which produced a lot of
interesting responses, I'm also a Lisp newbie and plan
to write/translate/publish some introductory articles,
interviews, projects, etc. for introducing Lisp to the
Turkish speaking IT world (consider me
as partner-in-crime of BM ;-).
Applications like Lisp code that generates C# or Java
code looks very interesting, I'd like to see more examples
of that.
If responders provide URLs for the projects they were
involved (as some of them did) this will be great for
me because one thing I'm sure is that many young computer
enthusiasts will ask questions like "hey, show me a
cool app. written in Lisp and give reasons why the authors
preferred Lisp over other development platforms".
The more concrete examples the better.
Oh, by the way, the first example I give is Edi Weitz's
Regex Coach:
http://www.weitz.de/regex-coach/
which is one hell of an application which saved my life
for oh-so-many-times! I use regexen in Perl, VBScript,
JScript, PHP, etc. so maybe you understand what I mean.
That Regex Coach is the best *visual* regex debugger I've
ever seen, it runs on Windows, GNU/Linux, etc. it small
in size, fast, loads of features and leaves competition
in the dust (the last regex helper I've seen was a .NET
application with all the bells and whistles (read: bloatware)
and required me to install .NET runtime). It seems that
you'd better not challenge experienced Lisp programmers
or they can come up with very sharp tools ;-)
Edi Weitz wrote:
> On 3 Nov 2004 13:03:41 -0800, tait.s...@gmail.com (Tait Stevens) wrote:
>
>
>>Any takers for the question "What are you doing in Lisp, right now?"
>
> 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... :)
Can I declare my love fo you? :)
Cheers
--
Marco
Simulating video rendering strategies for film restoration.
Actually, right now nothing, but when I pick it up again in a week or
so, I will be.
I am currently working on writing an IRC bot similar in style to Eliza
or Alice. This is a self-motovated project, although I will get a CS
credit for it, when complete at school.
--
Certum quod factum.
Philip Haddad
> Can I declare my love fo you? :)
Yeah, but I'm not sure if that'll make progress faster... :)
>For profit (well, as part of my job):
> Taking network log data and munging it around (I actually started
> using python, but it just wasn't fast enough; the library that
> extracts log entries has been posted to the small-cl-src list).
Could you post it to some web site? O:-)
Thanks
> 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."
Here are two really BIG projects that could be done with Lisp.
1) Electronic Voting Machine. Diebold seems to be missing the ball.
Do it with a port of Symbolics to custom voting hardware or maybe Allegro CL
on some secure BSD system. Take your pick.
2) A replacement for the US Air Traffic Control System. A project that
has failed multiple times.
How's that for inspiring?
Wade
[This thread is turning into a great public service!]
Current career:
Flow problems in graph theory. Started from algorithms of
Ford-Fulkerson and others, and built ideas on top of them. This
helped solve two problems at work: graph layout in a GUI, and avoiding
bottlenecks in telecommunications. Lispy features: macros,
tail-recursion, dolist.
Also coming soon: dumping a graph layout into SVG format.
Continuing my last career:
Please see http://www.geocities.com/mmcconnell17704/math.html This
contains the Lisp code that was my main research project up to 1999,
plus Java code written since then. (Why Java? Don't ask....) My
current project is translating some or all of the Java code back to
Lisp, where there will be several advantages:
macros for compile-time type optimization (used with care)
first-class functions
transparent big-integer arithmetic
multiple inheritance
By the way, here are some other places to look for real-life Lisp
projects.
www.common-lisp.net
www.cliki.net
www.alu.org
www.franz.com
www.lispworks.com
The mailing list has an archive.
Right now I feel we are loosing too much time in our projects on hand coding
java scripts to test forms. The prototype I am currently working on is a
proof of concept tool that uses form and field CLOS objects to generate html
forms and form processing methods including tests on constraints on the
individual fields and constraints between fields. The prototype should
include client side tests in java script as well as server side tests and
generate meaningful error messages on ALL violations at once, not just the
first one on the form, any time the user tries to send in the form.
The last time Lisp saved my life was early this summer, when I promised a
colleague to have somebody create reports for about 350 students that
graphically informed them about their progress on group working skills over
a period of time. The students' data on these skills turned out to be locked
up in more than 1000 html-pages (don't ask.) and the reports had to be
generated in Excel. This task involved writing a parser to extract the data
from the html pages, accumulating them per student, writing the data per
student to Excel to generate a file that included several graphs and saving
that file under the id-number of that student. When asking around for a
solution I was informed that this would be a complex and risky project that
would involve some serious time/money that I could not allocate. To keep the
promise this ended up being an enjoyable two or three night lisp project
using existing connection and html-parsing libraries.
> ps I'm looking for inspiration here.
For inspiration: in jobs that involve systems administration, development or
data processing, you'll encounter challenges that other people think of as
(too) complex, (too) time consuming, inevitable problems or impossible
solutions. Lisp programming skills will give you career-lasting
opportunities to have a good time proving them wrong or convincing yourself
that they are right. And as a bonus your successes will get you ample of
opportunities to hone your social skills.
Search this newsgroup for the third post in the thread "how to do java
in lisp ?" that started July 13, 2004.
At work, I'm writing a compiler. It takes our in-house language and compiles
it down to x86 machine code. No compile-link-load-crash cycle, it's all in
session and seemless like good stuff should be.
At home, I've written two games for my toddler in the past two weeks (mostly
because of the silly C++/games flame war going on):
Concentration: the classic picture matching game. This was a user acceptance
failure: she calls the game "Cat," and demands I click on the pictures until
a cat image appears.
Letters: based on user feedback, I wrote this 'game.' Kid hits alphanum key
on the keyboard, big full-screen letter appears on the display. Child happily
yells out name of the letter, hilarity ensures. This would be a bigger seller
than Doom for the under-3 crowd.
On 3 Nov 2004 13:03:41 -0800, Tait Stevens <tait.s...@gmail.com> 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
I am still enough of a newbie to appreciate the light at the end of
the tunnel.
There are a lot of neat ideas floating around, and Lisp sounds like it
is insanely powerful once you get set up and going.
I have just started on a solution set for the questions in ANSI Common
Lisp. I will post a link here when done if anybody is interested in
reviewing them.
Thanks again,
Tait
tait.s...@gmail.com (Tait Stevens) wrote in message news:<458628b3.04110...@posting.google.com>...
I do know about the book, and will continue to look at it as time
permits.
The reason I looked at Lisp in the first place was as a possible Go
programming engine. Man am I out of practice.
Thanks for the response,
Tait
Thanks!
I have been to the above sites in the past, but hadn't remembered the
project pages. I'll spend some time there this weekend.
Tait
Good luck! It seems like work with little reward, but probably well
worth it in the long run.
> If responders provide URLs for the projects they were
> involved (as some of them did) this will be great for
> me because one thing I'm sure is that many young computer
> enthusiasts will ask questions like "hey, show me a
> cool app. written in Lisp and give reasons why the authors
> preferred Lisp over other development platforms".
> The more concrete examples the better.
Good idea. Several people have done so.
> Oh, by the way, the first example I give is Edi Weitz's
> Regex Coach:
>
> http://www.weitz.de/regex-coach/
> ...
That's really cool. It would have saved me some time even yesterday.
(Downloading now).
> ... It seems that
> you'd better not challenge experienced Lisp programmers
> or they can come up with very sharp tools ;-)
I agree - or, even better "It seems that you had better challenge
experienced Lisp programmers *because* they can come up with very
sharp tools.
Now to get my webhost to add mod-Lisp....
Tait
I program in C & assembly on MIPS and Powerpc embedded systems for a
living, I use Lisp to speed up debugging and testing. One huge
benefit Lisp has given in this application is I can add new analysis
functions to the program and just run them, right from inside the Lisp
environment. Often, I'll do all the work right there anyway because
sometimes each call to the analysis code needs little tweaks to the
parameters to get things closer to what I want. This ended up being
such a helpful technique that I was able to justify buying Lispworks
as an upgrade from clisp. The upgrade has helped a lot because
compiling the analysis code sped it up considerably.
Of course, this could also be done in most any other language.
However, doing it in Lisp made many of the smaller little usage &
architectural issues go away and I could put the complication where I
wanted it and leave the rest simple. This application seems to
benefit from working directly with the Lisp read/eval/print loop, with
compiled utility functions and ad-hoc, interpreted, dynamically
written top-level functions to direct the processing.
At home, I've been working on and off writing a macro assembler for an
8051 microcontroller, using a "lisp-ified" assembly syntax that works
right off the Lisp reader. The theory is since the assembler syntax
is fully integrated with Lisp, I can use the full power of Lisp macros
to do snazzy macro stuff in the assembly program. I have the
variations of the first 10 or so instructions implemented & things are
acting right; plausible code is generated and the right sorts of
things are showing up. In a couple weeks I have a long conference
trip to make, I'm hoping to get a bunch more done enroute.
Gregm
On my own time i am in the process of building the foundations for MMP
games.
As a simple test case I have developed some code which sets up a 3d
environment using OPENGL and displays and animates one of the popular
FPS model types (i forget which...haven't looked at that piece since i
convinced myself that CL would suit my purposes). On the current
development thread,
I have developed a reactor based framework with async integration to
postgresql upon which the client/server communications with reside, as
well as supporting the server side processing. I have developed the
first cut of a rete implemenations for it that is specialized to the
type of processing required on the server side (prioritized processing
queues, special handling of certain types for fast deletion).
Currently i'm building a B2B product on top of the communications
framework with the intention of using it to pay the bills while i work
on the game as a hobby.
> My current Lisp stuff:
>
> ...
>
> At home, I've written two games for my toddler in the past two weeks (mostly
> because of the silly C++/games flame war going on):
>
> Concentration: the classic picture matching game. This was a user acceptance
> failure: she calls the game "Cat," and demands I click on the pictures until
> a cat image appears.
>
> Letters: based on user feedback, I wrote this 'game.' Kid hits alphanum key
> on the keyboard, big full-screen letter appears on the display. Child happily
> yells out name of the letter, hilarity ensures. This would be a bigger seller
> than Doom for the under-3 crowd.
Thanks for this post, this was very amusing. :)
I'm a college student (not even in CS or CE at that), so my project is
much less impressive than other posters'. I'm currently building a
clone of SHARK (http://www.alphaworks.ibm.com/tech/sharktext), an
interesting input application for pen-based platforms, such as my
Tablet PC. The idea is that, first, I'll copy most of the application,
and only then add what i think would be useful. It's the first time
I've really used the Win32 API, and I did so in a completely new
environment (ACL, instead of clisp) but I managed to progress
relatively quickly. My first FFI bindings (I have to use user32 to
actively lose the focus), getting acquainted with Franz's toolkit,
first use of CLOS... and a basic window that's topmost, knows where
the mouse is, doesn't have the focus and sends keyboard events to the
active window. It took me approximately 6 hours to get there, but if I
were to do it again, it'd probably be more like 1-2 hours. All that's
left is the panel where the user can edit the words, and the actual
recognition engine, which I'm keeping for dessert.
Paul Khuong
The really neat thing about it is that I wrote it bottom-up without
really knowing what it was going to be. So I wrote several files of
interesting Lisp chemistry stuff, and it all seems to work well
together. I hacked up a GUI in a day, using ltk.
I also do miscellaneous stuff like genetic programming and interval
arithmetic, which is fun and very educational.
-Peter
At work, (1) a small piece of Lisp code that generates pieces of C code
that are similar but not identical, (2) a web download manager.
--
Ng Pheng Siong <ng...@netmemetic.com>
http://sandbox.rulemaker.net/ngps -+- M2Crypto, ZServerSSL for Zope, Blog
http://www.sqlcrypt.com -+- Transparent AES Encryption For SQLite
Just a quick suggestion, but if you added an option for audio that says the
Letter/Number of the key it, it seems like it would be more fun.
Johnny
Peter, that sounds really really cool. Have you thought about putting
it up on the web?
Tait
1. A specialized CLOS modeller for web application/database development
2. web content management system
Andreas
Thanks! It's funny; when I was programming in C++, I made RPN
calculator programs to show off my snazzy linked lists, and wondered
when I'd ever get to write interesting things. Now, I sit down and
write interesting things. Isn't life great? (It also helps that Lisp
has lists built in....)
> Have you thought about putting it up on the web?
The program isn't finished by any stretch of the imagination, but now
that I think about it, there are some parts that I could release.
Coming soon to http://www.common-lisp.net/project/chemboy/:
1. A periodic table and lookup functions.
2. Parsing and pretty-printing of chemical formulas. This one was a
lot of fun; I got to play with META and write some hideously ugly but
extremely useful macros.
Does anyone know a good way to write GUI programs with Corman Lisp? I
know that Corman has what seems like a thin layer over the Win32 API,
but I'm hoping for something higher-level. I guess I've been spoiled
by playing with CAPI and Common Graphics, which are both very lispy
and pleasant.
-Peter
> Does anyone know a good way to write GUI programs with Corman Lisp? I
> know that Corman has what seems like a thin layer over the Win32 API,
> but I'm hoping for something higher-level. I guess I've been spoiled
> by playing with CAPI and Common Graphics, which are both very lispy
> and pleasant.
You wrote in your earlier post that you used Ltk - if you are
looking for alternatives, is there anything missing for you?
Peter
--
pet project: http://dawn.netcologne.de
homepage: http://www.peter-herth.de
lisp stuff: http://www.peter-herth.de/lisp.html
get Ltk here: http://www.peter-herth.de/ltk/
Yes. First, there's the fact that the Tk "command" setting for the
Entry widget isn't supported. This is pretty minor, and I'm sure that
with a bit of poking around the Ltk source I could fix it myself, but
for now I'm too lazy.
Second, distribution is a headache unless your Lisp implementation has
some way of making it easier. I can't afford to buy LispWorks or ACL,
so I'm limited to cheaper Lisp implementations. On Linux, I use SBCL,
and on Windows I use various trial versions of things. If I want to
distribute standalone executables on Windows, my only cheap option
(AFAIK) is Corman Lisp.
On Linux, you can generally count on the availability of wish. On
Windows, though, it's usually installed seperately. And to make things
worse, the ActiveTcl package that I downloaded to test Ltk on Windows
doesn't seem to have plain old command line wish installed. Instead,
they thought it would be cute to replace it with this weird GUI thing.
If you know anybody who has managed to get Ltk to work on Windows,
please tell me.
My chemistry program can already do stuff that would have made me very
happy in Chemistry class last year. I'm going to be taking another
chemistry class next year, so it'll be useful to me later, but I'd
like for it to be something that I can share with other people. Most
people don't know or care about Lisp; they just want a nice,
non-threatening installer program that they can download and run. Is
Ltk campatible with that? If not, what else can I do without paying
lots of money?
-Peter
> Peter Herth wrote:
>> Peter Scott wrote:
>>
>> > Does anyone know a good way to write GUI programs with Corman Lisp? I
>> > know that Corman has what seems like a thin layer over the Win32 API,
>> > but I'm hoping for something higher-level. I guess I've been spoiled
>> > by playing with CAPI and Common Graphics, which are both very lispy
>> > and pleasant.
>>
>> You wrote in your earlier post that you used Ltk - if you are
>> looking for alternatives, is there anything missing for you?
>
> Yes. First, there's the fact that the Tk "command" setting for the
> Entry widget isn't supported. This is pretty minor, and I'm sure that
> with a bit of poking around the Ltk source I could fix it myself, but
> for now I'm too lazy.
Well, you won't succeed there for the simple reason that the Tk entry
widget has no "command" option. However, binding the "return" key, this
is easily achieved. For this purpose, I have written a subclass of
entry, "history-entry" which offers a command option aswell as a history
of all input. It is in the file "ltk-mw.lisp". As I am not finished with
the next realease version of Ltk, I have uploaded the current development
version as "ltk-newest.tgz" on the Ltk page, it contains ltk-mw.lisp.
In general, if you are missing a feature, or just have a question about
Ltk, never heasitate to drop me a mail, either I can point out to a
solution or take it as a hint what needs to be added to Ltk :)
> Second, distribution is a headache unless your Lisp implementation has
> some way of making it easier. I can't afford to buy LispWorks or ACL,
> so I'm limited to cheaper Lisp implementations. On Linux, I use SBCL,
> and on Windows I use various trial versions of things. If I want to
> distribute standalone executables on Windows, my only cheap option
> (AFAIK) is Corman Lisp.
> On Linux, you can generally count on the availability of wish. On
> Windows, though, it's usually installed seperately. And to make things
> worse, the ActiveTcl package that I downloaded to test Ltk on Windows
> doesn't seem to have plain old command line wish installed. Instead,
> they thought it would be cute to replace it with this weird GUI thing.
> If you know anybody who has managed to get Ltk to work on Windows,
> please tell me.
I have heard of Ltk running under Windows using the ActiveTcl package,
so there should be a way... sorry I can't be more specific because
currently I have no access to a windows box.
> My chemistry program can already do stuff that would have made me very
> happy in Chemistry class last year. I'm going to be taking another
> chemistry class next year, so it'll be useful to me later, but I'd
> like for it to be something that I can share with other people. Most
> people don't know or care about Lisp; they just want a nice,
> non-threatening installer program that they can download and run. Is
> Ltk campatible with that? If not, what else can I do without paying
> lots of money?
For Ltk itself, you do not need any installer, just distribute your
Lisp core with Ltk loaded. The only thing an installer would need to
take care of, is getting Tk installed on the system. But that should
be possible with any generic installation program like installshield
for example. AFAIK ActiveTcl comes with its own installer, so it should
not be too threatening for a potential user to get it installed, if
you point out the url...
> On Linux, you can generally count on the availability of wish. On
> Windows, though, it's usually installed seperately. And to make things
> worse, the ActiveTcl package that I downloaded to test Ltk on Windows
> doesn't seem to have plain old command line wish installed. Instead,
> they thought it would be cute to replace it with this weird GUI thing.
> If you know anybody who has managed to get Ltk to work on Windows,
> please tell me.
>
> -Peter
Hi,
I got Ltk working in winXP with clisp. There was only one real issue
after I got it all installed and it wasn't a show-stopper by any means.
The Tcl package I used was
http://downloads.activestate.com/ActiveTcl/Windows/8.4.7/ActiveTcl8.4.7.0-win32-ix86-108887.exe
If you want to email me about it feel free
charburr at uk2 dot net
Cheers
Charlie.
> 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).
Why not deliver Lisp that *connects* to the dotnet runtime? (e.g.
Python.Net does this and Cincom Smalltalk is heading in the same
direction with their Fall 2004 release.)
http://zope.org/Members/Brian/PythonNet
http://www.cincomsmalltalk.com/CincomSmalltalkWiki/Cincom+Smalltalk+Roadmap
Chris Perkins
http://www.medialab.com
I could have sworn that I saw it in a Tk reference---but now that I
look at a different reference, I see that you're right.
> However, binding the "return" key, this
> is easily achieved. For this purpose, I have written a subclass of
> entry, "history-entry" which offers a command option aswell as a history
> of all input. It is in the file "ltk-mw.lisp". As I am not finished with
> the next realease version of Ltk, I have uploaded the current development
> version as "ltk-newest.tgz" on the Ltk page, it contains ltk-mw.lisp.
Great! It looks like my Tk interface will do nicely, then, once I
spiff it up a little.
BTW, you have a problem with your web server. ltk-newest.tgz has the
MIME type text/plain, which leads to nasty complications with my web
browser---specifically, page after page of symbols.
[Distribution]
> For Ltk itself, you do not need any installer, just distribute your
> Lisp core with Ltk loaded. The only thing an installer would need to
> take care of, is getting Tk installed on the system. But that should
> be possible with any generic installation program like installshield
> for example. AFAIK ActiveTcl comes with its own installer, so it should
> not be too threatening for a potential user to get it installed, if
> you point out the url...
In that case, I'll just have to figure out how to make ActiveTcl play
nice with Ltk. Thank you!
-Peter
>Any takers for the question "What are you doing in Lisp, right now?"
>
I'm a composer, and I've been using Lisp for close to five years to help
design and implement musical compositions. Lately I've done an
implementation of the neo-Riemannian "Tonnetz" and have used the
Screamer nondeterminism package to generate melodies and rhythms that
obey a set of constraints.
There is currently no viable Lisp that does this.
And the connection needs to be two-way -- .NET returns a DataSet that
you manipulate in Lisp that you pass as a DataSet to a grid that you
extract and manipulate in Lisp and pass back to .NET to save... -- and
reasonably performing.
I would like nothing more than a real Lisp in .NET. Now we have the
best of all worlds. The best programming language with the best
components! Those of us that would use Lisp would now be unassailable!
1. http://www.newlisp.org/
This one's a lisp like scripting environment, not sure if it will help
or not. Tk widgets, gui development, windows platform.
2. http://armedbear-j.sourceforge.net/
platform independent lisp environment (java based)
It's core project is a text editor of all things, but it is a really
good lisp environment. I haven't actually seen any gui examples,
however. Color highlighting IDE, email reader, java debugger, lisp
compiler, this thing is really quite a project. Supposedly 99% ANSI
compliance (or something, don't quote me on that). You can call java
libraries from lisp. I wrote a small example lisp routine to open a
network socket and download webpages. Works like a champ.
wayne