README.md 1.9 KB
Newer Older
Yorick Peterse's avatar
Yorick Peterse committed
1
# Inko
Yorick Peterse's avatar
Yorick Peterse committed
2

3
**Inko** is a statically-typed, safe, object-oriented programming languages for
Yorick Peterse's avatar
Yorick Peterse committed
4
writing concurrent programs. By using lightweight isolated processes, data race
5
6
7
conditions can't occur. The syntax is easy to learn and remember, and thanks to
its error handling model you will never have to worry about unexpected runtime
errors.
Yorick Peterse's avatar
Yorick Peterse committed
8

9
10
11
For more information, see the [Inko website](https://inko-lang.org/). If you'd
like to follow this project but don't have a GitLab account, please consider
starring our [GitHub mirror](https://github.com/YorickPeterse/inko).
12

13
## Features
14

15
16
17
* A bytecode interpreter that is easy to build across different platforms
* Parallel garbage collection based on [Immix][immix]
* Lightweight, isolated processes that communicate using message passing
18
* Statically typed
19
20
21
22
23
* Explicit handling of exceptions, making it impossible for unexpected
  exceptions to occur
* Tail call optimisation
* A C FFI using [libffi][libffi]
* A standard library written in Inko itself
24

25
26
More information about all the available features can be found [on the Inko
website](https://inko-lang.org/about/).
27

28
29
## Supported Platforms

30
31
[![CI sponsored by MacStadium](macstadium.png)](https://www.macstadium.com/)

32
Inko officially supports Linux, Mac OS, and Windows. Other Unix-like platforms
33
such as the various BSDs should also work, but are not officially supported at
34
this time. Inko only supports 64-bits architectures.
35

36
## Installing
37

38
39
40
41
Details about how to install Inko and its requirements can be found in the
["Installing
Inko"](https://docs.inko-lang.org/manual/master/getting-started/installation/)
guide in the Inko manual.
42

Yorick Peterse's avatar
Yorick Peterse committed
43
## License
44

45
46
47
All source code in this repository is licensed under the Mozilla Public License
version 2.0, unless stated otherwise. A copy of this license can be found in the
file "LICENSE".
48
49
50

[immix]: http://www.cs.utexas.edu/users/speedway/DaCapo/papers/immix-pldi-2008.pdf
[libffi]: https://sourceware.org/libffi/