A Dependently Typed Functional Programming Language
Go to file
Edwin Brady 0d5c5b650b Fix segfault in MKSTR
Can't assume that the string resulting from an FFI call is not null!
The RTS generally assumes strings are not null later, however, so it's
important to test.
2013-10-06 14:53:36 +01:00
contribs remove vim files from contrib in favor of idris-hackers repo 2013-10-04 16:01:02 +02:00
effects Another minor efficiency gain in elaborator 2013-09-28 12:16:11 -04:00
iif Change TRACE mode to use -O2 2012-09-05 17:24:37 +01:00
java Reverting the change to the POM template and removing the templating/clenup logic for the Java backend. 2013-09-25 00:13:46 -10:00
javascript Refactored the build inside Setup.hs and the various Makefiles. 2013-09-24 00:12:58 -10:00
js javascript: refactored tailcalls 2013-10-03 01:37:23 +02:00
lib Merge pull request #504 from david-christiansen/with-parser 2013-10-01 07:50:04 -07:00
llvm Refactored the build inside Setup.hs and the various Makefiles. 2013-09-24 00:12:58 -10:00
papers/impl-paper Finished proof-reading implementation paper 2013-09-15 17:11:17 +01:00
rts Fix segfault in MKSTR 2013-10-06 14:53:36 +01:00
samples Fix Vect arguments in samples/ 2013-07-28 14:03:52 +01:00
src Further splitting of Parser 2013-10-05 18:08:49 +01:00
support Don't build thread support (because it doesn't work...) 2012-05-10 11:37:46 +01:00
test runtest.pl revised and cleaned up 2013-10-04 22:47:29 +02:00
tutorial documentation: added javascript codegen section to tutorial 2013-10-03 20:42:14 +02:00
.gitattributes typo fix in git attributes, adding test results to gitignore 2012-11-26 21:09:59 -05:00
.gitignore Ignore Mac OS X .DS_Store files 2013-09-04 18:56:12 -06:00
.travis.yml (Temporarily) remove java tests from travis 2013-09-14 13:46:25 +01:00
CHANGELOG Merge pull request #479 from david-christiansen/repl-persistent-history 2013-09-14 05:45:03 -07:00
config.mk Take CFLAGS from environment in Makefiles 2013-07-31 21:23:30 -07:00
CONTRIBUTORS Update CONTRIBUTORS and CHANGELOG 2013-07-31 21:28:57 +01:00
idris.cabal Further splitting of Parser 2013-10-05 18:08:49 +01:00
LICENSE Fix LICENSE 2011-09-14 18:01:24 +01:00
Makefile Allow tests to be parallelized 2013-07-30 23:53:10 -04:00
README Added note about wiki to README 2013-09-26 19:58:11 -04:00
Setup.hs Reverting the change to the POM template and removing the templating/clenup logic for the Java backend. 2013-09-25 00:13:46 -10:00

Idris (http://idris-lang.org/) is an experimental functional programming 
language with dependent types.

To configure, edit config.mk. The default values should work for most people.

To install, type 'make'. This will install everything using cabal and
typecheck the libraries.

To run the tests, type 'make test' which will execute the test suite, and
'make relib', which will typecheck and recompile the standard library.

Idris has buildtime dependencies on the C libraries llvm-3.3 and libffi. Be sure these are compiled for the same architecture as your Haskell compiler (e.g. 64 bit libraries for 64 bit ghc).

Idris has a runtime dependency on libgmp, and on Boehm GC (libgc) when using the LLVM codegen. These are needed for linking into compiled programs, so be sure these are compiled for Idris's default target architecture (usually 64 bit on x86_64 systems).

The Idris wiki contains instructions for building on various platforms and for getting involved with development. It is located at https://github.com/idris-lang/Idris-dev/wiki .