A Dependently Typed Functional Programming Language
Haskell Idris C JavaScript Shell C++ Other
Latest commit 06db7dc Jan 9, 2018 @edwinb edwinb Fix corner case with dot patterns
They need to be solvable by unification with another pattern, so it's no
good if the metavariable in the argument position just solves directly
with what the programmer gave.

Fixes #3839
Permalink
Failed to load latest commit information.
.github Added issue template Aug 5, 2017
benchmarks Fix fasta benchmark Aug 6, 2017
codegen Merge branch 'master' into exportiface_js Sep 18, 2017
docs Update version number properly this time (sorry!) Jan 7, 2018
icons Add the idris icon to the windows build Jan 24, 2016
idrisdoc Updated signatures to use Conor colours, increased difference between… Apr 16, 2014
jsrts Fix undeclared variable in node runtime Aug 1, 2017
libs Add directory management functions Jan 5, 2018
logos Added SVG logos Jun 22, 2015
main Clean up unused imports (#4065) Sep 16, 2017
man Update version number properly this time (sorry!) Jan 7, 2018
rts Merge pull request #4275 from asandroq/remove-align-macro Jan 5, 2018
samples Remove long-deprecated `abstract` Dec 4, 2017
scripts Add OpenBSD support to shebang script Aug 3, 2017
src Fix corner case with dot patterns Jan 9, 2018
test Fix corner case with dot patterns Jan 9, 2018
.gitattributes typo fix in git attributes, adding test results to gitignore Nov 27, 2012
.gitignore Add cabal new-build's build dir to ignore Aug 6, 2017
.stylish-haskell.yaml Convert tabs to spaces in stylish Oct 13, 2016
.travis.yml Disable macOS builds on Travis Jul 24, 2017
CHANGELOG.md Update version number properly this time (sorry!) Jan 7, 2018
CITATION.md Added a citation file. Feb 26, 2015
CONTRIBUTING.md Update CONTRIBUTING.md Aug 5, 2017
CONTRIBUTORS Add the Vect version of dropElem. Oct 18, 2017
HLint.hs Turn on some LANGUAGE pragmas to make stylish-haskell happy. Oct 13, 2016
INSTALL.md added hint to get around build failures due to old ibc files Mar 29, 2017
LICENSE Fix LICENSE Sep 14, 2011
Makefile Fix typo, make stylize.sh work when a dist directory exists Oct 19, 2016
README.md Fix hackage widget Jul 2, 2017
RELEASE-CHECKS.md Update version numbers Apr 1, 2017
Setup.hs Fix build with Cabal 2.0.0.2 on Windows Aug 5, 2017
appveyor.yml fix PATH Nov 2, 2017
config.mk Fix the build on MSYS2 (Windows) when MSYSTEM=MINGW{32,64} Jan 30, 2017
custom.mk-alldeps Remove curses dependency Mar 3, 2016
idris-tutorial.pdf update tutorial binary. Nov 9, 2017
idris.cabal Update version number properly this time (sorry!) Jan 7, 2018
mkpkg.sh Calculate SHA256 in mkpkg.sh Mar 8, 2017
stack-shell.nix Refactor stack-shell.nix to use buildStackProject Oct 10, 2017
stack.yaml Bumped Idris to work with LTS Haskell 10. Dec 20, 2017
stylize.sh Abort if stylish-haskell is missing. Apr 4, 2017
win-release.sh Implement bundled toolchain feature Apr 2, 2015

README.md

Idris

Build Status Appveyor build Documentation Status Hackage Stackage LTS Stackage Nightly IRC

Idris (http://idris-lang.org/) is a general-purpose functional programming language with dependent types.

Installation Guides.

This repository represents the latest development version of the language, and may contain bugs that are being actively worked on. For those who wish to use a more stable version of Idris please consider installing the latest version that has been released on Hackage. Installation instructions for various platforms can be found on the Idris Wiki.

More information about building Idris from source has been detailed in the Installation Guide

Code Generation

Idris has support for external code generators. Supplied with the distribution is a C code generator to compile executables, and a JavaScript code generator with support for node.js and browser JavaScript.

More information about code generators can be found on the wiki.

More Information

If you would like to find out more information, or ask questions, we currently have a Wiki; a mailing list, and an IRC channel #idris on freenode. To join the IRC channel, point your irc client to chat.freenode.net then /join #idris.

For those further interested in using Idris for projects, the Idris Hackers GitHub organisation is where some interesting projects are being hosted.

For those interested in contributing to Idris directly we kindly ask that prospective developers please consult the Contributing Guide first.