mirror of
https://github.com/Ed94/LangStudies.git
synced 2024-09-20 05:07:33 -07:00
657 B
657 B
Eva Programming Langauge
Dynamic programming langauge.
Simple syntax, functional heart, OOP support.
Eva Expressions:
(<type> <op1> <op2> ... <opN>)
Example:
(+ 5 10)
(set x 15)
(if (> x 10)
(print "ok")
(print "error")
)
(def foo (bar)
(+ bar 10)
)
(lambda (x) (* x x) 10)
Design Goals
- Simple syntax: S-Expression
- Everything is an expression
- No explicit return, last evalulated expression is the result
- First class functions
- Static scope: all functions are closures
- Lambda functions
- Funcitonal programming
- Imperative programming
- Namespaces and modules
- OOP: Class or prototype based.