Skip to content
Ikko language
Branch: master
Clone or download
Latest commit 6b8c1b7 May 4, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci Add build caching May 4, 2019
examples Change to an indentation-based grammar Apr 29, 2019
src Change to an indentation-based grammar Apr 29, 2019
tools Change to an indentation-based grammar Apr 29, 2019
.gitignore Rename Athena to Ikko Nov 9, 2018
LICENSE Initial commit Nov 9, 2018
Makefile Show progress Nov 15, 2018
README.md Change to an indentation-based grammar Apr 29, 2019
ikko.cabal Change to an indentation-based grammar Apr 29, 2019
stack.yaml

README.md

Ikko

Ikko is a programing language. See ikkolang.com for a bit more information, or the examples directory for some example code.

Building

This requires stack to be installed.

Run:

  • make to build
  • make test to run tests
  • make run to run an example
  • stack exec ikko -- examples/fib.ik to run a specific file

Example

See the examples/ directory for more examples.

fn identity<A>(a A) A:
    return a

fn main():
    print(identity("Hello generics\n"))

Features

  • Static typing with type inference.
  • No null value.
  • The type system has generics and tagged unions.
  • Garbage colection.
  • Pattern matching.

Not yet implemented:

  • Typeclasses (called traits in Rust).
  • Any kind of standard library.
You can’t perform that action at this time.