{"id":18579050,"url":"https://github.com/lpeterse/koka","last_synced_at":"2025-07-10T17:04:48.967Z","repository":{"id":16009602,"uuid":"18753050","full_name":"lpeterse/koka","owner":"lpeterse","description":"A function-oriented language with effect inference","archived":false,"fork":false,"pushed_at":"2014-05-22T11:55:43.000Z","size":2060,"stargazers_count":19,"open_issues_count":2,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-10T22:44:05.453Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Haskell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lpeterse.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":"license.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-04-14T08:09:48.000Z","updated_at":"2024-03-20T09:22:25.000Z","dependencies_parsed_at":"2022-09-12T20:50:29.669Z","dependency_job_id":null,"html_url":"https://github.com/lpeterse/koka","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/lpeterse/koka","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lpeterse%2Fkoka","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lpeterse%2Fkoka/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lpeterse%2Fkoka/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lpeterse%2Fkoka/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lpeterse","download_url":"https://codeload.github.com/lpeterse/koka/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lpeterse%2Fkoka/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264614263,"owners_count":23637551,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-06T23:38:45.651Z","updated_at":"2025-07-10T17:04:48.940Z","avatar_url":"https://github.com/lpeterse.png","language":"Haskell","funding_links":[],"categories":[],"sub_categories":[],"readme":"Koka: a function-oriented language with effect inference\n--------------------------------------------------------\n\n To build Koka from source you need to install:\n\n  * The [Haskell platform](http://www.haskell.org/platform) (known to work with 2013.2.0.0 or later).\n  * libncurses5-dev (on Linux)\n  * node.js (optional)\n\nAfter installing the above tools, go to the Koka directory and type:\n\n    \u003e cabal update \u0026\u0026 cabal install\n\nThis will install Koka locally for the current user.\n\nStarting out\n------------\n\nAfter running `koka`, the Koka interpreter will start:\n\n    __          _\n    | |        | |\n    | | __ ___ | | __ __ _\n    | |/ // _ \\| |/ // _` | welcome to the koka interpreter\n    |   \u003c| (_) |   \u003c| (_| | version 0.5.0-dev (debug), Apr  8 2013\n    |_|\\_\\\\___/|_|\\_\\\\__,_| type :? for help\n\n    loading: std/core\n\nNow you can test some expressions:\n\n    \u003e println(\"hi koka\")\n    hi koka\n\n    \u003e :t \"hi\"\n    string\n\n    \u003e :t println(\"hi\")\n    console ()\n\nOr load a demo:\n\n    \u003e :l demo/collatz\n    compile: lib/demo/collatz.kk\n    check  : demo/collatz\n    modules:\n      demo/collatz\n\n    \u003e main()\n    Collatz(27) took 111 steps.\n\nOr a browser based demo:\n\n    \u003e :l demo/dom/starfield\n    loading: demo/dom/starfield\n    loading: sys/dom\n    loading: sys/dom/types\n    loading: sys/dom/document\n    loading: sys/dom/html/window\n    loading: sys/dom/html/htmlElement\n    loading: sys/dom/html/htmlCanvasElement\n    loading: sys/dom/html/canvasRenderingContext2d\n    loading: sys/dom/css/cssStyleDeclaration\n    loading: demo/dom/microsoftLogo\n    loading: sys/dom/html/htmlTableElement\n    loading: sys/dom/html/htmlTableRowElement\n    loading: sys/dom/html/htmlTableDataCellElement\n    modules:\n      demo/dom/starfield\n\n    \u003e main()\n\nAnd quit the interpreter:\n\n    \u003e :q\n\n    Before the effect one believes in different causes than one does after the effect.\n     -- Friedrich Nietzsche\n\nHave fun!\n  Daan Leijen\n  Lars Petersen\n\n\nDevelopment\n-----------\n\nFor development we recommend:\n\n  * The excellent [SublimeText](http://www.sublimetext.com) text editor. There is a full Koka and Haskell\n    language mode for SublimeText (run `jake sublime` to install the Koka mode on your system).\n\nTo generate a browsable haddock documentation run:\n\n    cabal haddock --executable --hyperlink-source\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flpeterse%2Fkoka","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flpeterse%2Fkoka","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flpeterse%2Fkoka/lists"}