Is there an application server like Apache Tomcat that I can use with a Lisp like web language?
I've been playing a little bit with Arc/Anarki and Clojure lately. But what I really miss is something like mod_arc or mod_clojure for Apache. What I really miss is good Apache integration for a Lispy web language.
Both Arc and Clojure use their own built in webserver that you launch within your code. I want all the functionality, resiliency and scalability that Apache httpd gives me. Is anyone working on an Apache module for Arc or Clojure? Is there another Lisp like language that I can use with Apache?
I come from a background in PHP and Perl. But also have lots of experience in C and /bin/sh. Since when I started writing web apps I was using cgi-bin and stdin to C binaries.
For web development as for any other task, one can leverage Common Lisp's advantages: the unmatched REPL that even helps to interact with a running web app, the exception handling system, performance, the ability to build a self-contained executable, stability, good threads story, strong typing, etc.
One of the old languages, LISP, has lost its fame and started its journey to death. The language is being rarely used by developers these days. LISP is a language of fully parenthesised prefix notation and is the second oldest high-level programming language, developed in 1960.
Features of LISP Programming Language: It allows us to create and update the programs and applications dynamically. It provides high-level debugging. It supports object-oriented programming.
Lisp (historically LISP) is a family of programming languages with a long history and a distinctive, fully parenthesized prefix notation. Originally specified in 1958, Lisp is the second-oldest high-level programming language still in common use. Only Fortran is older, by one year.
You can set up a Clojure/Java HTTP server (Jetty, etc.) running on some port, then use Apache's mod_proxy to forward certain requests from Apache to Clojure on that port. Something like this in your Apache configs:
ProxyPass /static !
ProxyPass /cgi-bin !
ProxyPass / http://localhost:8080/
ProxyPassReverse / http://localhost:8080/
So Apache will send every request to your Clojure app on port 8080 except requests to things in /static
and /cgi-bin
, which Apache will handle itself.
Maybe mod_lisp would work?
Hunchentoot, a web server in/for Common Lisp, can also be used behind Apache, through mod_lisp2.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With