Exploring Programming Language Theory

Hello, Sorry in advance for the soft question: Recently I have been studying more about how a lazy functional language is designed and compiled and have been reading Peyton-Jones's book "implementing functional languages: an introduction"

Sorry for the multiple posts, last time I try to write any decent length
email from my phone...
Anyways, and that was "a tutorial" not "an introduction". I am also reading
his "The Implementation of Functional Programming Languages". But in any
case, I'm liking these books a lot! It's super interesting and everything
but a little out of date. Does anyone know of books that cover a similar
subject matter but are more current?
To summarize, books that go from compiling a high level language to lambda
calculus and/or the theory behind lambda calculus and similar?
Thank you so much!
On Sat, Dec 8, 2012 at 4:32 PM, Danny Gratzer
Hello, Sorry in advance for the soft question: Recently I have been studying more about how a lazy functional language is designed and compiled and have been reading Peyton-Jones's book "implementing functional languages: an introduction"
-- Danny Gratzer

SPJ's IFPL is an excellent starting point to learn the innards of Haskell. It allows a well-acculturated individual to grab the base of the trunk and start climbing the branches, which means reading the research papers (SPJ's website, mainly though not exclusively), all the way to the leaves (reading GHC source).
To summarize, books that go from compiling a high level language to lambda calculus and/or the theory behind lambda calculus and similar?
Other than Haskell? There's a comprehensive bibliography on the reading
scheme website, which also has loads of links to theory you might be
interested in.
Gotta say though, reading is one thing, but you've got to check your
understanding from time to time. Barendregt's "bible" on LC has good
exercises.
-- Kim-Ee
On Sun, Dec 9, 2012 at 5:41 AM, Danny Gratzer
Sorry for the multiple posts, last time I try to write any decent length email from my phone...
Anyways, and that was "a tutorial" not "an introduction". I am also reading his "The Implementation of Functional Programming Languages". But in any case, I'm liking these books a lot! It's super interesting and everything but a little out of date. Does anyone know of books that cover a similar subject matter but are more current?
To summarize, books that go from compiling a high level language to lambda calculus and/or the theory behind lambda calculus and similar?
Thank you so much!
On Sat, Dec 8, 2012 at 4:32 PM, Danny Gratzer
wrote: Hello, Sorry in advance for the soft question: Recently I have been studying more about how a lazy functional language is designed and compiled and have been reading Peyton-Jones's book "implementing functional languages: an introduction"
-- Danny Gratzer
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe

I should add that IFPL has important chapters written by authors other than
Simon.
-- Kim-Ee
On Sun, Dec 9, 2012 at 5:58 AM, Kim-Ee Yeoh
SPJ's IFPL is an excellent starting point to learn the innards of Haskell. It allows a well-acculturated individual to grab the base of the trunk and start climbing the branches, which means reading the research papers (SPJ's website, mainly though not exclusively), all the way to the leaves (reading GHC source).
To summarize, books that go from compiling a high level language to lambda calculus and/or the theory behind lambda calculus and similar?
Other than Haskell? There's a comprehensive bibliography on the reading scheme website, which also has loads of links to theory you might be interested in.
Gotta say though, reading is one thing, but you've got to check your understanding from time to time. Barendregt's "bible" on LC has good exercises.
-- Kim-Ee
On Sun, Dec 9, 2012 at 5:41 AM, Danny Gratzer
wrote: Sorry for the multiple posts, last time I try to write any decent length email from my phone...
Anyways, and that was "a tutorial" not "an introduction". I am also reading his "The Implementation of Functional Programming Languages". But in any case, I'm liking these books a lot! It's super interesting and everything but a little out of date. Does anyone know of books that cover a similar subject matter but are more current?
To summarize, books that go from compiling a high level language to lambda calculus and/or the theory behind lambda calculus and similar?
Thank you so much!
On Sat, Dec 8, 2012 at 4:32 PM, Danny Gratzer
wrote: Hello, Sorry in advance for the soft question: Recently I have been studying more about how a lazy functional language is designed and compiled and have been reading Peyton-Jones's book "implementing functional languages: an introduction"
-- Danny Gratzer
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe

Yes sorry, I followed the link off of his website so I generalized a little.
On Sat, Dec 8, 2012 at 5:00 PM, Kim-Ee Yeoh
I should add that IFPL has important chapters written by authors other than Simon.
-- Kim-Ee
On Sun, Dec 9, 2012 at 5:58 AM, Kim-Ee Yeoh
wrote: SPJ's IFPL is an excellent starting point to learn the innards of Haskell. It allows a well-acculturated individual to grab the base of the trunk and start climbing the branches, which means reading the research papers (SPJ's website, mainly though not exclusively), all the way to the leaves (reading GHC source).
To summarize, books that go from compiling a high level language to lambda calculus and/or the theory behind lambda calculus and similar?
Other than Haskell? There's a comprehensive bibliography on the reading scheme website, which also has loads of links to theory you might be interested in.
Gotta say though, reading is one thing, but you've got to check your understanding from time to time. Barendregt's "bible" on LC has good exercises.
-- Kim-Ee
On Sun, Dec 9, 2012 at 5:41 AM, Danny Gratzer
wrote: Sorry for the multiple posts, last time I try to write any decent length email from my phone...
Anyways, and that was "a tutorial" not "an introduction". I am also reading his "The Implementation of Functional Programming Languages". But in any case, I'm liking these books a lot! It's super interesting and everything but a little out of date. Does anyone know of books that cover a similar subject matter but are more current?
To summarize, books that go from compiling a high level language to lambda calculus and/or the theory behind lambda calculus and similar?
Thank you so much!
On Sat, Dec 8, 2012 at 4:32 PM, Danny Gratzer
wrote: Hello, Sorry in advance for the soft question: Recently I have been studying more about how a lazy functional language is designed and compiled and have been reading Peyton-Jones's book "implementing functional languages: an introduction"
-- Danny Gratzer
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
-- Danny Gratzer

If you want compiling functional languages and can relax the requirement for "up to date": Antoni Diller's "Compiling Functional Languages" is good. It is short enough (<300 pages) that you could reasonably work through it and it includes the full source of a compiler in the appendix - written in Pascal so translating it to something else is a sufficient exercise. It is long out of print, but copies turn up on Amazon - I got it from Amazon UK for a couple of pounds. Also Franklyn Turbak and David Gifford's "Design Concepts for Programming Languages" is very good (and new!) but huge. It is not quite exhaustive - as a skim reader I wanted the specification / translation rules for a particular compile step and frustratingly it was left as an exercise. Otherwise it is a very good presentation - it uses translation rules (ala the LaTeX Semantic package) rather than source code throughout, so once you are used to the style it is both very concise (and precise) and unlikely to go out of date any time soon.

Stephen Tetley
Also Franklyn Turbak and David Gifford's "Design Concepts for Programming Languages" is very good (and new!) but huge.
Yes! I like that book very much, and I use it for teaching semantics and compilation of programming languages. Semantics - by writing interpreters, in several domains. The book avoids the "M" word, but of course it is actually the Identity monad, the State monad, the CPS monad etc. (I guess it should really be presented via monad transformers, though.) J.W.

Try http://lambda-the-ultimate.org/node/492
On Sat, Dec 8, 2012 at 2:41 PM, Danny Gratzer
Sorry for the multiple posts, last time I try to write any decent length email from my phone...
Anyways, and that was "a tutorial" not "an introduction". I am also reading his "The Implementation of Functional Programming Languages". But in any case, I'm liking these books a lot! It's super interesting and everything but a little out of date. Does anyone know of books that cover a similar subject matter but are more current?
To summarize, books that go from compiling a high level language to lambda calculus and/or the theory behind lambda calculus and similar?
Thank you so much!
On Sat, Dec 8, 2012 at 4:32 PM, Danny Gratzer
wrote: Hello, Sorry in advance for the soft question: Recently I have been studying more about how a lazy functional language is designed and compiled and have been reading Peyton-Jones's book "implementing functional languages: an introduction"
-- Danny Gratzer
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
participants (5)
-
Danny Gratzer
-
Johannes Waldmann
-
Kim-Ee Yeoh
-
Sebastien Zany
-
Stephen Tetley