Projectplan LispCMS

[ home ] [ svntree ]

Over het project

Dit zijn meer de doelen voor de periode half feb. - eind mei

LispCMS moet een web development framework worden. Hiermee bedoel ik dat je ermee gemakkelijk webapplicaties kunt maken, zoals wiki's, online winkels. (N.B. deze voorbeelden zijn een klus op zich, maar met LispCMS moet het makkelijker kunnen.)

Een voorbeeld van wat ik ongeveer bedoel is een mix van Uncommon Web en iets als de basis van PostNuke. Zie projectplan onder voor details op de korte termijn.

Bovenop dit web development framework wil ik een klein weblog-systeempje bouwen. Dit geeft een voorbeeld van wat je er mee kan, en het maakt het ook minder abstract. (Bovendien geeft dit de naam meer betekenis.)

Doelgroep

De doelgroep van dit project is webontwikkelaars. Het zou leuk zijn als webloggers het zouden gebruiken, maar ontwikkelaars staan voorop.

Omdat ontwikkelaars de doelgroep zijn, besteed ik niet te veel tijd aan de gebruikersvriendelijkheid aan de kant van bezoekers van een applicatie, eerder aan een makkelijke 'API'. Ik probeer wel te zorgen dat het er makkelijk overzichtelijk uit komt te zien.

Over de code en documentatie

Sinds kort is er documentatie. Verder zijn er vaak docstrings bij functies en klassen, en documentatie over een bepaald onderwerp in het bestand dat dat implementeert.

Er is geprobeerd de code zo abstract mogelijk te schrijven, voor zover dat nuttig was en niet een heel stuk langer.

Het overgrote merendeel van de code is portable geschreven: het gebruikt alleen wat er in de standaard beschreven staat. Bij het sockets-gedeelte wordt nog wel een bepaalde implementatie (CMU CL) vereist, maar dat is makkelijk te verhelpen: op de mod_lisp site staat hoe het kan voor 5 implementaties. Verder is unportable een deel dat niet gedocumenteerd is (CPS transformatie), en dat ook niet echt gebruikt wordt, helaas (nog niet echt af, moeilijk te debuggen). mod_lisp is voor zover ik weet portable, het gebruikt immers de Apache libraries. Voor de rest is LispCMS+dependencies, voor zover ik weet, portable.

Projectplan

Het volgende projectplan is een schatting, omstandigheden en inschattingsfouten kunnen er natuurlijk voor zorgen dat alles wat anders uitpakt.

Wat ook nog moet:

Testen doe ik nadat een onderdeel klaar is, zodat er achteraf weinig testen nodig zijn.