{"id":13546630,"url":"https://github.com/mmhelloworld/idris-jvm","last_synced_at":"2026-06-30T01:01:17.026Z","repository":{"id":9842870,"uuid":"63519226","full_name":"mmhelloworld/idris-jvm","owner":"mmhelloworld","description":"Idris on the JVM","archived":false,"fork":false,"pushed_at":"2026-06-26T22:48:02.000Z","size":59237,"stargazers_count":482,"open_issues_count":4,"forks_count":28,"subscribers_count":27,"default_branch":"main","last_synced_at":"2026-06-27T00:34:27.843Z","etag":null,"topics":["idris","java","jvm"],"latest_commit_sha":null,"homepage":"https://idris-jvm.readthedocs.io/","language":"Idris","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mmhelloworld.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":null,"support":"support/Makefile","governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2016-07-17T07:06:57.000Z","updated_at":"2026-06-26T11:18:14.000Z","dependencies_parsed_at":"2023-11-26T07:21:39.491Z","dependency_job_id":"fe07ef1b-ca1e-4e32-ab05-2d3a6e657e4e","html_url":"https://github.com/mmhelloworld/idris-jvm","commit_stats":{"total_commits":3075,"total_committers":245,"mean_commits":"12.551020408163266","dds":0.8439024390243902,"last_synced_commit":"11fec8f7ce26d116206118c17638ae00c61afa0c"},"previous_names":[],"tags_count":91,"template":false,"template_full_name":null,"purl":"pkg:github/mmhelloworld/idris-jvm","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mmhelloworld%2Fidris-jvm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mmhelloworld%2Fidris-jvm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mmhelloworld%2Fidris-jvm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mmhelloworld%2Fidris-jvm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mmhelloworld","download_url":"https://codeload.github.com/mmhelloworld/idris-jvm/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mmhelloworld%2Fidris-jvm/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34948227,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-29T02:00:05.398Z","response_time":58,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["idris","java","jvm"],"created_at":"2024-08-01T12:00:41.543Z","updated_at":"2026-06-30T01:01:17.000Z","avatar_url":"https://github.com/mmhelloworld.png","language":"Idris","funding_links":[],"categories":["Idris","JVM语言"],"sub_categories":[],"readme":"Idris 2 for JVM\n============\n[![Build Status](https://github.com/mmhelloworld/idris-jvm/actions/workflows/install.yml/badge.svg)](https://github.com/mmhelloworld/idris-jvm/actions/workflows/install.yml)\n\n[Idris 2](https://idris-lang.org/) is a purely functional programming language with first class types. This repository provides Idris 2 compiler targeting JVM bytecode so that Idris can run on the JVM.\n\n## Install\n\n* Download the latest Idris 2 JVM release from [Github releases](https://github.com/mmhelloworld/idris-jvm/releases/latest). If you prefer Maven, Idris compiler is available in\n  Maven central from [here](https://central.sonatype.com/artifact/io.github.mmhelloworld/idris-jvm-compiler).\n* Extract the archive and add `idris2` launcher script directory `\u003cEXTRACTED_DIRECTORY_ROOT\u003e/exec` to PATH.\n* Create an environment variable `IDRIS2_PREFIX` pointing to `\u003cEXTRACTED_DIRECTORY_ROOT\u003e/env`\n\n## IDE Support\n\nThe [**Idris 2 (JVM)** plugin for IntelliJ IDEA](https://plugins.jetbrains.com/plugin/32261-idris-2-jvm)\nprovides editor support backed by this compiler, including syntax highlighting, code completion,\ninteractive editing (case split, add clause, proof search, generate definition, holes), go-to-definition,\nand documentation lookup. It also surfaces the JVM FFI: completing on a Java class offers its full set of\ncallable members and generates the binding on demand.\n\nInstall it from the link above, or from within the IDE via\n*Settings → Plugins → Marketplace* and searching for \"Idris 2 JVM\". The plugin drives the `idris2`\nexecutable from this repository, so make sure it is installed (see [Install](#install) above).\n\n## Example\n\n#### helloworld.idr\n\n```idris\n    module Main\n\n    data Tree a = Leaf\n                | Node (Tree a) a (Tree a)\n\n    inorder : Tree a -\u003e List a\n    inorder Leaf = []\n    inorder (Node left a right) = inorder left ++ [a] ++ inorder right\n\n    tree : Tree String\n    tree = Node\n            (Node\n              (Node Leaf \"3\" Leaf)\n              \"+\"\n              (Node Leaf \"7\" Leaf))\n            \"/\"\n            (Node Leaf \"2\" Leaf)\n\n    main : IO ()\n    main = printLn $ inorder tree\n```\n\n#### Compile\n\n`idris2 helloworld.idr -o main`\n\n#### Run\n\n```shell\n% build/exec/main\n[\"3\", \"+\", \"7\", \"/\", \"2\"]\n```\n\n## Documentation\n* [Idris JVM documentation](https://idris-jvm.readthedocs.io/en/latest/)\n* [Idris 2 documentation](https://idris2.readthedocs.io/en/latest/index.html)\n* [Idris 2 (JVM) IntelliJ plugin](https://plugins.jetbrains.com/plugin/32261-idris-2-jvm)\n\n## License\nThis repository extends [idris-lang/Idris2](https://github.com/idris-lang/Idris2) repository with JVM backend. Files from [idris-lang/Idris2](https://github.com/idris-lang/Idris2) are covered by that repository's [license](https://github.com/idris-lang/Idris2/blob/main/LICENSE).\nAll other files from this repository are covered by BSD-3-Clause License. See [LICENSE](LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmmhelloworld%2Fidris-jvm","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmmhelloworld%2Fidris-jvm","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmmhelloworld%2Fidris-jvm/lists"}