I am listing here some notes about programming languages.
- Proofs of equivalence (by induction) for standard ML functions
- Notes on recursion
- Notes on grammars
- Notes on object-oriented programming
- Notes on scoping
- Notes on functional programming
Parameter passing strategies:
- call-by-value: the parameter's value is evaluated and passed as an argument
- call-by-value-result: same than call-by-value, but the parameter value updated by the callee is copied back to the caller on return of the callee
- call-by-name: the parameter value is not resolved, and the name is passed. The value is evaluated lazily upon usage.
- call-by-reference: pass reference to callee (thus the callee and caller have access to the same object)
If you have any suggestions or happen to catch a typo/error in these notes, feel free to reach out to me on Twitter.