Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I think the author assumes u know how to apply a practical foundation. We need another book here.


The practical application of these foundations is the field of programming language theory. At least that is the application I know of.

Whether programming language theory is practical or not depends, I think, on your attitude to programming languages. For example, if you think C is a masterpiece of clean and elegant design I suspect you won't have much time for programming language theory. If you think C is riddled with mistakes, then you will find solutions in programming language theory.


You do understand how a mathematical Theory (a set of true propositions made by relating operations i.e. from axioms and inference rules) and a Model (a set of elements with all the operations defined and where all the propositions are true) are related, i presume?

PLT is not one theory but a set of theories from which you are free to pick and choose any subset you would like to model in your language's abstract machine and syntax/semantics.

C simply chose a "minimal theory" and there is nothing wrong with that.


C arguably doesn't actually have formal semantics, the struggles of the standard committee trying to figure out the pointer provenance being one obvious example.


C does have formally defined semantics as given by the standard but chose to leave some open-ended to give compiler writers more freedom in the form of a) Unspecified behaviour b) Implementation defined behaviour and c) Undefined behaviour.





Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: