LispCMS is een web application framework: met LispCMS moet je makkelijk applicaties kunnen maken die via je browser werken. Als voorbeeld van hoe het makkelijker kan met LispCMS is er een weblog/nieuws'applicatie', maar zoals bij veel talen geldt ook hier: there is more than one way to do it. LispCMS probeert makkelijker manieren te maken, terwijl het geen mogelijkheden wil wegnemen.
Een voorbeeld van hoe LispCMS scripts makkelijker en korter maakt: het onderstaande scriptje geeft de pagina's op deze screenshot.
(with-cms-address ("/change-foo") ; maak een adres aan
(with-form-env ; als er iets verkeerds ingevoerd wordt, start dan opnieuw vanaf hier.
(style-page ; maak een goede HTML pagina met een <h3> en een <p>
(:h3 "Verander *foo* hier.")
(:p "Vul aub hier een getal in.")
(with-form-out ; <form> en </form>
(status-line) ; eventuele foutmelding
(change-field *foo* nil :validator #'parse-integer) ; invoerveld
(submit-button "Verander!"))))) ; submit button
Wikipedia zegt: De programmeertaal Lisp is een functionele programmeertaal. Van Lisp zijn diverse talen of dialecten afgeleid, zoals Scheme, Common Lisp, Emacs Lisp en AutoLISP. Hierdoor kan Lisp worden beschouwd als een familie van programmeertalen. (...)
Lisp is een programmeertaal, net als iedere andere. Er is een probleem: de meeste mensen vinden het er eng uitzien. Oorzaak: de haakjes.
Als je de taal aan het leren bent, en een beetje gewend bent aan de haakjes, blijken ze meestal best mee te vallen, en zelfs handig te zijn. Als je de eerste drie hoofdstukken van Peter Seibel's boek Practical Common Lisp hebt gelezen, denk je heel anders over de haakjes, en zie je er het nut wel van in, denk ik.
Lisp links:
Zie het projectplan, ik zit er
waarschijnlijk redelijk dicht op.
Het project is nog wel even
in alfa-fase. Ook wat er nog moet gebeuren staat in het
projectplan.
Download het hier. Er staat een livecd bij, als je hem brandt en in je PC stopt werkt alles waarschijnlijk meteen. Verder kun je, als je gewoon het nieuwste wilt hebben, `svn checkout https://cvs.codeyard.net/svn/LispCMS/trunk' doen. Documentatie is hier te vinden.
In het bestand INSTALL staan instructies voor het installeren.