REMINDER - Contributions to HC&A Report (November 2003 edition)
Alain Cremieux
alcremi at pobox.com
Mon Nov 3 00:40:15 EST 2003
Category : Applications, Groups, and Individuals
Subcategory : Individual Haskellers and their projects
I work in a company making software for payrolling, which is a
incredibly complex subject in France.
I'd like to use Haskell in my everyday's work, but up to now it's only
been a personal hobby ("passion" woul be more accurate).
I am convinced that embedded languages ("DSEL") have strong applications
in software-making companies. Of course Haskell is one of the best
language for that; but if there are many fascinating papers (resulting
from hard work & deep insights) on the subject, practical reusable code
lacks. Most projects are unfinished, and when code exists it is in "as
is" state, and never reusable without much work.
So as a start I am trying to implement How to write a financial contract
<http://research.microsoft.com/Users/simonpj/Papers/financial-contracts/pj-eber.ps>,
a chapter in "The Fun of Programming" by Simon Peyton Jones & Jean-Marc
Eber. This article details the full analysis (the hard part) of an
embedded language application. A deriving implementation should provide
several solutions, depending on design decisions (for instance a
"shallow" embedding and a "deep" embedding), simplifications rules
leading to a (moderately) optimised interpreter and a code generator
(C-- is my target language). And the code should work (calculate the
value of several common financial options).
Two other key papers for this work are Compiling Embedded Languages
<http://www.conal.net/papers/jfp-saig/>, by Conal Elliott, Sigbjorn
Finne and Oege de Moor, and Programming Graphics Processors Functionally
<http://www.conal.net/papers/Vertigo/> (Vertigo) by Conal Elliott.
Any advice and/or discussion would be welcome.
Alain Crémieux
More information about the Haskell
mailing list