[vox-tech] Programming languages and the Haskell meeting

Brian Lavender brian at brie.com
Thu Jun 30 10:39:39 PDT 2011


I was initially excited about the Haskell presention, but at the end
I was sort of disappointed. It seemed like we got a lot of "This is
really good stuff", but I was looking for a little more of "show me
what you have done or are doing". But hey, I did learn about using let
for defining functions in ghci. That was good news. I had been always
loading functions from files.

I took a class on Programming Language Principles at Sac State where we
used SML to define the grammar, do static analysis, dynamic analysis,
and finally evaluate the program. The starting point for this was that we
manually derived the program in Bauchus Naur Form.  SML is a functional
programming language and in the end, we could see the power of SML. Yet,
I have been eager to continue doing work in this area.

Here are few tools/resources I am excited about and I would like to
share.

1. Most languages are constructed using a Context Free Grammar (CFG)
   and ANTLR works has a graphical interface for laying out your rules. 
   It will construct the lexer and parser code too,
   but beyond that, I don't think Java is the right tool. 
   http://www.antlr.org/download/antlrworks-1.4.2.jar
   http://www.antlr.org/ 

2. I got a hold of Dan Friedman's book 
   "Essentials of Programming Languages". It uses Scheme and one
   can use Dr. Racket (http://racket-lang.org/) that has a
   EOPL (abbreviation for the book) mode.

3. I found that my thinking recursively could be improved, so I also
   got Dan Friedman's book titled "The Little Schemer". It has
   a lot of practical examples that I think really help look 
   at things recursively, as seems to be essential in writing
   a language.

Hopefully someday, I will have a language of my own. ;-)

brian
-- 
Brian Lavender
http://www.brie.com/brian/

"There are two ways of constructing a software design. One way is to
make it so simple that there are obviously no deficiencies. And the other
way is to make it so complicated that there are no obvious deficiencies."

Professor C. A. R. Hoare
The 1980 Turing award lecture


More information about the vox-tech mailing list