Re: [Haskell-cafe] Re: [Haskell] Compiler Construction course using Haskell?

2008-08-31 Thread Johan Jeuring
Dear Johannes, Besides the IPT course, we also teach a course hat used to be called grammars and parsing. This course is taken before the compiler construction course. In this course we deal with parser combinators, datatypes, folds, first and follow, LL(1), and some more stuff, all in Haskell.

[Haskell-cafe] Re: [Haskell] Compiler Construction course using Haskell?

2008-08-20 Thread Derek Elkins
On Wed, 2008-08-20 at 16:03 +0200, Johannes Waldmann wrote: Hello. I plan to give a course in compiler construction, using Haskell as the implementation language (not as source or target language). Something along these lines: 1. combinator parsers (Parsec), 2. simple interpreter

Re: [Haskell-cafe] Re: [Haskell] Compiler Construction course using Haskell?

2008-08-20 Thread Chris Eidhof
I plan to give a course in compiler construction, using Haskell as the implementation language (not as source or target language). Something along these lines: 1. combinator parsers (Parsec), 2. simple interpreter (arithmetical expressions) 3. add algebraic data types, functions 4. type checker

[Haskell-cafe] Re: [Haskell] Compiler Construction course using Haskell?

2008-08-20 Thread Larry Evans
On 08/20/08 11:43, Derek Elkins wrote: On Wed, 2008-08-20 at 16:03 +0200, Johannes Waldmann wrote: Hello. I plan to give a course in compiler construction, using Haskell as the implementation language (not as source or target language). Something along these lines: 1. combinator parsers

Re: [Haskell-cafe] Re: [Haskell] Compiler Construction course using Haskell?

2008-08-20 Thread Don Stewart
chris: I plan to give a course in compiler construction, using Haskell as the implementation language (not as source or target language). Something along these lines: 1. combinator parsers (Parsec), 2. simple interpreter (arithmetical expressions) 3. add algebraic data types, functions

[Haskell-cafe] Re: [Haskell] Compiler Construction course using Haskell?

2008-08-20 Thread Krasimir Angelov
Hi Johannes, There is a similar course in Chalmers. The home page is here: http://www.cs.chalmers.se/Cs/Grundutb/Kurser/progs/current/ There students were required to implement full parser, partial typechecker and partial interpreter for C++ in either C++, Java or Haskell. We used BNFC for the

Re: [Haskell-cafe] Re: [Haskell] Compiler Construction course using Haskell?

2008-08-20 Thread Don Stewart
Similar course at UNSW, http://www.cse.unsw.edu.au/~cs3161/ type checker, type inference and interpreter + proofs. kr.angelov: Hi Johannes, There is a similar course in Chalmers. The home page is here: http://www.cs.chalmers.se/Cs/Grundutb/Kurser/progs/current/ There students were

Re: [Haskell-cafe] Re: [Haskell] Compiler Construction course using Haskell?

2008-08-20 Thread Johannes Waldmann
Thanks for all the pointers. This is very useful. On parsers: yes, LL/LR theory and table-based parsers have been developed for a reason and it's no easy decision to throw them out. Still, even Parsec kind of computes the FIRST sets? And - I positively hate preprocessors. I really want my domain

[Haskell-cafe] Re: [Haskell] Compiler Construction course using Haskell?

2008-08-20 Thread Johannes Waldmann
This has me worried slightly: do you intend to showcase monads, or do you intend to teach compiler construction? The subject is Compiler Construction ... Doing tree traversals via monads would, in OO-Speak, just correspond to using some Visitor pattern for the AST. The students know about

Re: [Haskell-cafe] Re: [Haskell] Compiler Construction course using Haskell?

2008-08-20 Thread Philippa Cowderoy
On Wed, 20 Aug 2008, Johannes Waldmann wrote: On parsers: yes, LL/LR theory and table-based parsers have been developed for a reason and it's no easy decision to throw them out. Still, even Parsec kind of computes the FIRST sets? No, it doesn't. That's not actually possible for monadic

[Haskell-cafe] Re: [Haskell] Compiler Construction course using Haskell?

2008-08-20 Thread Johannes Waldmann
Martin Erwig wrote (on a similar course he taught): * Many students did not know Haskell before, so I had to teach some Haskell and was forced to avoid some more advanced features, such as type classes and monads. Yeah, in my case I know they don't know Haskell... Still, I trust them to pick