There's a lot of examples of languages implemented in Haskell to choose
from, too

    
http://haskell.org/haskellwiki/Applications_and_libraries/Compilers_and_interpreters#Large_languages

michael:
> Thank you all for your encouragement. I need to think about the core
> functionality, and do some reading.
> 
> On Fri, Aug 20, 2010 at 2:33 AM, Josef Svenningsson
> <[email protected]> wrote:
> > On Fri, Aug 20, 2010 at 6:05 AM, Jason Dagit <[email protected]> wrote:
> >>
> >>
> >> On Thu, Aug 19, 2010 at 8:05 PM, Michael Litchard <[email protected]>
> >> wrote:
> >>>
> >>> I'd like the community to give me feedback on the difficulty level of
> >>> implementing an awk interpreter. What language features would be
> >>> required? Specifically I'm hoping that TH is not necessary because I'm
> >>> nowhere near that skill level.
> >>
> > Implementing an awk interpreter in Haskell can be a fun project. I have a
> > half finished implementation lying around on the hard drive. It's perfectly
> > possible to implement it without using any super fancy language features.
> > But as other people have pointed out, monads are helpful for dealing with a
> > lot of the plumbing in the interpreter.
> >>>
> >>> An outline of a possible approach would be appreciated. I am using
> >>> http://www.math.utah.edu/docs/info/gawk_toc.html
> >>> as a guide to the language description.
> >>
> >> You might also focus on the 'core' of awk.  Think about, what is the
> >> minimal language and start from there.  Grow your implementation adding
> >> features bit by bit.  It's also a good opportunity to do testing.  You have
> >> a reference implementation and so you can write lots of tests for each
> >> feature as you add them.
> >
> > When I wrote my awk interpreter I decided to go for the whole language from
> > start. I had reasons for doing this as there were certain aspects of this
> > that I wanted to capture but it is not they way I would recommend going
> > about it. I definitely second Jason's advice at trying to capture the core
> > functionality first.
> > Have fun,
> > Josef
> _______________________________________________
> Haskell-Cafe mailing list
> [email protected]
> http://www.haskell.org/mailman/listinfo/haskell-cafe
> 
_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to