As I'm finding my way through TaPL and ATTaPL today, it occurs to me that I should implement a real language as an exercise; that real language turns out to be Perl6. So it begins...
"Started at 2005-02-01, Pugs is my attempt at writing a Perl6 interpreter in Haskell. Currently it is in its very early stages.
Although Pugs does not yet directly relate to PGE or Parrot, the hope is that it can flesh out corner cases in the Synopses during implementation, as well as contributing more test cases to the main Perl6 project.
The first milestone is to get parrot/perl6/t/* running, hopefully in time for its YAPC::Taipei talk on March 26th."
I'm truly happy that my brain can manage to fit one synopsis at a time; as (AT)?TaPL provides straightforward implementation strategy to many of them, I'll probably just quickcheck/test/code away and see how far it brings me. :-)