CATEGORICAL DESIGN SOLUTIONS

MSLUG October Meeting

Oct 23rd 2007
No Comments
respond
trackback

Last night the Montreal Scheme & Lisp user group (MSLUG) monthly meeting happened at a special session following the first OOPSLA conference day. The OOPSLA conference is going on in Montreal this year and it features a special section on dynamic languages.I booked a room at UQAM for the event since the conference participants were close to my building on the corner of St-Urbain and Sherbrooke. The room was almost full. It was certainly the biggest MSLUG meeting ever held. I never saw such a large concentration of Scheemers and Lispers.The meeting featured two speakers: Manuel Serrano (INRIA Sophia-Antipolis), the maker of Bigloo scheme compiler and Pascal Costanza (Vrije Universiteit Brussel) creator of Gilgul, Lava and JMangler.The night started with Manuel Serrano who presented the HOP web application development language. The main strength of HOP is to offer a unique language in which you can develop both the client and server side in a transparent way. Since HOP was first implemented over Bigloo, its syntax is mainly Scheme syntax (Lisp S-Expressions) but with two additional syntactic constructs “~” which evaluates the next S-Expression in the client (by compiling the HOP code inside to Javascript) and the “$” construct does the opposite: the expression following it will be evaluated on the server.Professor Serrano was very convincing when he showed some nice examples where he could demonstrate that his system could be used to develop very interactive web applications and avoid the Tower of Babel of Web programming (HTML, XHTML, CSS, Javascript, AJAX, Json, PHP, SVG, MathML…).I am convinced that the HOP system is very powerful but the proof of concept could be enhanced by using it to develop applications that are unique and that would be very difficult to implement using the usual web technologies (PHP, Ruby, …).  This talk was very interesting to us since web are using a very similar strategy at Categorical Design. We wrote our own web services server (like in HOP) and we program our web applications using S-Expressions (in SXML in fact). I was hesitating to implement that Scheme to Javascript compiler that HOP features. Manuel Serrano clearly convinced me of the benefits of doing this.

The second talk was from Pascal Costanza was also very interesting since it was promoting a new programming paradigm called Context Oriented Programming. He presented an extension of CLOS called ContextL that lets the programmer declare the behavior of classes, methods, and slots according to the context. He defines the notion of context as “Any computationally accessible thing.” which seems very general. Examples of a context could be: location, bandwidth, device, temperature, mood, …).Professor Costanza showed simple examples that he was typing in front of us in a common lisp environment. His examples were good enough to express most features of ContextL but showing a more elaborate example would have been much more convincing to me. He mentioned that the work was at an early stage. There was also a missing link in the talk: how is the context captured by the program.It was a very inspiring evening. Thank you Dominique Boucher for organizing this MSLUG event.Other links :Bill Clementson’s BlogPLNews


This post is tagged , , ,

No Comments

Leave a Reply