Skip to content

Programming language combining features from ES7, CoffeeScript, TypeScript, Rust, Swift, C# and more

License

Notifications You must be signed in to change notification settings

kaoscript/kaoscript

Repository files navigation

License NPM Version Dependency Status Build Status CircleCI Coverage Status Known Vulnerabilities

NPM

What's kaoscript?

kaoscript is programming language combining features from ES7, CoffeeScript, TypeScript, Rust, Swift, C# and more.

Currently, kaoscript is transpiled to JavaScript.

Features

  • easy syntax: close to ES6 and Swift
  • fully OOP: extendable native classes but fully compatible with the node.js
  • partial/impl paradigm
  • async/await: don't need ES7
  • check variables existences
  • automatically declare variable: i = 0 => let i = 0
  • array range
  • for/to, for/til, for/in, for/of, for/range, until: no more for(;;)
  • comprehensions
  • typed or not let i = 0 or let i: Number = 0
  • automatic typing: on assignement with operator :=
  • type alias: type float = Number
  • generics
  • chained operations: 1 < x < 10
  • enum
  • namespace
  • import/export: import is the equivalent of node.js require
  • require: declare requirements (only for a module)
  • extern/declare: explicit global scope
  • typed import: import non-kaoscript objects and indicate their types
  • function overloading
  • advanced parameters
  • error handling: by default, it's à la Java but it's configurable
  • attributes
  • conditional compilation
  • macro

Documentation

The official documentation is available at kaoscript.tech.

License

MIT © Baptiste Augrain