Predecessors

Kedr builds upon multiple languages.

F#

The main source of visual appearance and core features. Indentation-based structure and absence of parentheses in function invocations. Objects are an evolution of the primary constructor concept.

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 keyword, type casts in case of, when construct, step in loops.

Pascal

Syntax for loops, case of.

Scala

Static objects, var and val as a mutable/readonly pair, implementation of abstract methods using fields, underscore for closure parameters, syntax for attributes.

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.