Predecessors
Kedr builds upon multiple languages.
F#
Sequential code, indentation-based structure, syntax for types and functions, absence of parentheses in function invocations.
Rust
Mechanics of value types, propagation of mutability through fields, methods defined only on mutable instances, array being a regular value type, syntax for array type names, naming of numeric types, ref types in addition to the pointers, filler for unspecified field/parameter values, documentation shaped as a book and the software to produce it.
Kotlin
Syntax for closures, typealias, type casts in case of, when construct, step in loops.
Scala
Static objects, var and val as a mutable/readonly pair, implementation of abstract methods using fields, underscore for closure parameters, syntax for attributes.
C++
Objects with move semantics.
Pascal
Syntax for loops, case of.
Ruby
new syntax to create an object without constructor parameters, idea for symbols to be separate entities.
Jai
Bindings being owners of objects and pointers.