Sponsored Link •
A Weblog by Michele Simionato
Michele Simionato is interested in languages and techniques that make programmers' lives easier.
B. Scott Andersen
Vladimir Ritz Bossicard
James O. Coplien
Cees de Groot
David Heinemeier Hansson
Jakob Eg Larsen
Robert C. Martin
John D. Mitchell
Eric S. Raymond
Guido van van Rossum
Richard Hale Shaw
June 5, 2009, Submit comment
After a short introduction about the relevance of macros as tools to design abstractions, including full programming languages, I show some common patterns of Scheme macrology: recursive macros, accumulators, and the usage of literals to incorporate helpers in macros.
June 3, 2009, 11 comments
Observations about the organization of the conference and about the talks discussing the future of Common Lisp.
June 1, 2009, 10 comments
Some thoughts about programming-language communities, inspired by the Lisp conference I attended last week.
May 29, 2009, Submit comment
A pointer to the slides I prepared for the Second European Lisp Symposium http://www.european-lisp-symposium.org/
May 20, 2009, Submit comment
In the last episode we saw that PLT Scheme performs much more instantiation and visiting of modules than other implementations. The reason for such behaviour is that PLT Scheme aims to avoid cross-phase side effects. In this episode I explain what cross-phase side effects are and why they are evil.
May 18, 2009, Submit comment
In episode 19 I noticed that the R6RS module system allows for separate compilation, but I have not mentioned the subtilities associated with it. This episode discusses the topic, the concept of visit time and the intricacies of the "import" semantics.
May 11, 2009, Submit comment
This episode goes in depth through the most obscure secrets of Scheme, by exploring the (Dark) Tower of Metalevels of the R6RS module system.
May 6, 2009, 8 comments
Last week my MacBook died of a premature death at age 2. Out of necessity, I have been forced to borrow my wife's EeePC for a while and to use it as my main development platform. The unexpected thing is that it just works perfectly.
April 30, 2009, 3 comments
In this episode I introduce the concepts of implicit phasing, explicit phasing and multiple instantiation of modules. Moreover, I discuss various portability issues of the R6RS module system related to the different phase separation concepts.
April 27, 2009, 5 comments
One of the trickiest things about Scheme is the distinction between the interpreter semantics which is typically (but not always) used at the REPL and compiler semantics which is typically (but not always) used in scripts.
April 21, 2009, Submit comment
This is the first of six episodes concerning the R6RS module system. The module system is quite new and it is the result of several compromises. As a consequence, it has some rough edge and writing portable code - specially for macro writers - is not always trivial.
April 8, 2009, 4 comments
In this final installment I show a solution of the design problem posed last week, i.e. I show a possible mechanism for adding multiple interfaces to an object without polluting its namespace with mixin methods.
April 3, 2009, 1 comment
My series against mixins continues. This time I consider using proxies instead of mixins, and I pose a design problem which will be solved in the last issue.
March 21, 2009, 2 comments
A preview of the next cycle of Adventures is given. I ask from reader's feedback and I announce the availability of the Adventures in both PDF and HTML formats. Rejoice!
March 11, 2009, Submit comment
A list of all the Adventures published until now.