« innsbruck | Main | good old tunes »

Helma, the closest thing to a convenient Lisp web app server

Helma200px

Helma is a trusty web app server for server-side JavaScript apps, which recently turned 1.6.0.

Helma is noteworthy for a couple of reasons:

Multi-app environment: A single Helma instance is an environment for multiple web apps.

Filesystem-based development: Helma uses the FS to structure web apps.

Completely dynamic: Simply save a file containing HTTP handlers written in JavaScript and Helma will reload them automatically.

Pervasive JavaScript: JavaScript is the only language you need to completely control Helma.

Convenient services: Helma provides a lot of convenient services, like a cron-scheduler and logging.

Zero-configuration: To run Helma, just dl it and run the start script. Presto. Creating a new app is equally simple.

Advanced HTTP support: Stuff like convenient access to request headers and parameters, and file upload monitoring.

Tracks evolving JavaScript language: The Helmatics have always pushed JavaScript, and the latest release includes goodies like E4X and __noSuchMethod__.

Java integration: Creating and calling Java objects from JavaScript is as easy as saying "importPackage".

Great tooling: Helma comes with a browser-based shell for evaluating JavaScript on the server, a graphical JavaScript debugger, object and database browsers, and a management console.

Mature: Helma has been actively developed, used, and refined for years (decades?) in a lot of installations, and there's a sizable community.

Helma also has ORM and a sophisticated templating framework, but I don't know them well.

On the downside, Helma can be rather hard to learn if you don't have an experienced Helmatic coaching you. But once you know your way around the different files and directories that make up a Helma app it's very easy.

All in all, Helma is the closest thing to a useful, convenient Lisp web application server that I can imagine.

Comments

Hey Manuel!

which of those points doenst apply to rails?

rgrds
chris

Hi Chris,

I don't know Rails well.

Here's a short article about the two systems:

http://www.scratchdisk.com/Random+Notes/November+2005/Helma+VS+Rails/

What does Helma have to do with Lisp exactly? I saw that it is written in Java and see a lot of mention of Javascript in this post but nothing about Lisp at any level. What gives?

It feels as good as a Lisp-based environment (such as Hunchentoot or Chicken's Spiffy). And in some senses Helma is more convenient than them: you have access to many libraries, and it works mostly identical on all major platforms. You have to pay the Java tax though.

Post a comment

If you have a TypeKey or TypePad account, please Sign In