Commit 4bfe6d95 authored by Dan Frumin's avatar Dan Frumin

Comments in the README

parent d7dd1e96
# λMC – monadic translation of mini C
Here is the list of notations used in λMC:
**Monadic part**
- `x ←ᶜ y ;;ᶜ z` and `x ;;ᶜ z`: bind
- `e1 |||ᶜ e2`: par
**C translation**
- `♯ l` and `♯ₗ l`: `return` of literals and locations
- `allocᶜ ( e1 , e2 )`: alloc
- `e1 =ᶜ e2`: assign
- `∗ᶜ e`: dereference
- `e1 ;ᶜ e2` sequence points
- `ifᶜ ( e1 ) { e2 } elseᶜ { e3 }`
- `whileᶜ ( e1 ) { e2 }`
- `callᶜ ( f , a )`
- Binary and unary operations:
+ `e1 +ᶜ e2`
+ `e1 -ᶜ e2`
+ `e1 *ᶜ e2`
+ `e1 ≤ᶜ e2`
+ `e1 <ᶜ e2`
+ `e1 ==ᶜ e2`
+ `e1 !=ᶜ e2`
+ `~ᶜ e`
- Pointer arithmetic:
+ `e1 +∗ᶜ e2`: addition
+ `e1 <∗ᶜ e2`: comparison
- "Pre" operations:
+ `e1 +=ᶜ e2`
+ `e1 +∗=ᶜ e2`
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment