Where is a good place to get started with studying formal semantics? I've tried to follow chapters about formal semantics in LiSP, TAPL, CTM, and _The Definition of Standard ML_ with varying degrees of success (the material in TDoSML was beyond me), but I'm not sure where to start. I know part of the issue is getting familiar with the dense notation. I'm gradually getting an intuition for the stuff, but reading the right book would go a long way.
I've wondered if this is one of the things I missed by being self-taught, but I don't think most programmers working in (say) Java or Python could really follow it either.
Comments
Where is a good place to get started with studying formal semantics? I've tried to follow chapters about formal semantics in LiSP, TAPL, CTM, and _The Definition of Standard ML_ with varying degrees of success (the material in TDoSML was beyond me), but I'm not sure where to start. I know part of the issue is getting familiar with the dense notation. I'm gradually getting an intuition for the stuff, but reading the right book would go a long way.
I've wondered if this is one of the things I missed by being self-taught, but I don't think most programmers working in (say) Java or Python could really follow it either.
"Where is a good place to get started with studying formal semantics?"
I found "Design Concepts in Programming Languages" by Gifford and Turbak (http://www.amazon.com/Design-Concepts-Programming-Languages-...) well written and comprehensive. ( I am self taught too! :-))
I'll look into it, thanks!
Branching off the links that fadmmatt posted above, I found a booklist (http://matt.might.net/articles/books-papers-materials-for-gr...) with a PDF of Nielson & Nielson's Semantics with Applications (http://www.daimi.au.dk/~bra8130/Wiley_book/wiley.pdf). That looks good, too.
It sounds like I'm used to reading operational semantics, but have usually seen them specified in S-Expressions (as mini-interpreters in Scheme).