Awesome Idris !Awesome (https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg) (https://github.com/sindresorhus/awesome)  (https://www.idris-lang.org/) ▐ An auxiliary list of awesome Idris (https://www.idris-lang.org/) resources. Idris is a general purpose pure functional programming language with dependent types. Dependent types allow types to be predicated on values, meaning that some aspects of a program’s behaviour can be specified precisely in the type. It is  compiled, with eager evaluation. Its features are influenced by Haskell and ML. Contents - Official resources (#official-resources) - Articles (#articles) - Books (#books) - Papers (#papers) - Presentations (#presentations) - Projects (#projects) Official resources ⟡ Official website (https://www.idris-lang.org/) ⟡ Official repo (https://github.com/idris-lang/Idris-dev) Articles ⟡ 10 things Idris improved over Haskell (https://deque.blog/2017/06/14/10-things-idris-improved-over-haskell/) ⟡ Meet Idris, a language that will change the way you think about programming (https://crufter.com/idris-a-language-that-will-change-the-way-you-think-about-programming) ⟡ Tests vs. Types (http://kevinmahoney.co.uk/articles/tests-vs-types/) Books ⟡ Type Driven Development With Idris (https://www.manning.com/books/type-driven-development-with-idris) - Most important book published so far. ⟡ Type Theory and Functional Programming (https://www.cs.kent.ac.uk/people/staff/sjt/TTFP/) ⟡ Programming in Martin-Löf's Type Theory (http://www.cse.chalmers.se/research/group/logic/book/book.pdf) ⟡ Software Foundations (https://idris-hackers.github.io/software-foundations/pdf/sf-idris-2018.pdf) - Repo is here (https://github.com/idris-hackers/software-foundations). ⟡ Gentle Introduction to Dependent Types with Idris (https://leanpub.com/gidti) Papers ⟡ Elaborator Reflection: Extending Idris in Idris (https://eb.host.cs.st-andrews.ac.uk/drafts/elab-reflection.pdf) - David Christiansen and Edwin Brady, 2016. ⟡ Cross-platform Compilers for Functional Languages (https://eb.host.cs.st-andrews.ac.uk/drafts/compile-idris.pdf) - Edwin Brady, 2015. ⟡ Programming and Reasoning with Side-Effects in Idris (https://eb.host.cs.st-andrews.ac.uk/drafts/eff-tutorial.pdf) - Edwin Brady, 2014. ⟡ Idris, a General Purpose Dependently Typed Programming Language: Design and Implementation (https://pdfs.semanticscholar.org/1407/220ca09070233dca256433430d29e5321dc2.pdf) - Edwin Brady, 2013. ⟡ Programming and Reasoning with Algebraic Effects and Dependent Types (https://eb.host.cs.st-andrews.ac.uk/drafts/effects.pdf) - Edwin Brady, 2013. ⟡ Sequential decision problems, dependently typed solutions (http://eb.host.cs.st-andrews.ac.uk/writings/plmms13.pdf) - Nicola Botta, Cezar Ionescu and Edwin Brady, 2013. ⟡ Programming in Idris: a tutorial (http://eb.host.cs.st-andrews.ac.uk/writings/idris-tutorial.pdf) - Edwin Brady, 2012. ⟡ Idris — Systems Programming Meets Full Dependent Types (https://eb.host.cs.st-andrews.ac.uk/writings/plpv11.pdf) - Edwin Brady, 2011. ⟡ Scrapping your Inefficient Engine: using Partial Evaluation to Improve Domain-Specific Language Implementation (http://eb.host.cs.st-andrews.ac.uk/writings/icfp10.pdf) - Edwin Brady and Kevin Hammond, 2010. ⟡ Correct-by-Construction Concurrency: using Dependent Types to Verify Implementations of Effectful Resource Usage Protocols (http://eb.host.cs.st-andrews.ac.uk/writings/fi-cbc.pdf) - Edwin Brady and Kevin Hammond, 2010. ⟡ Domain Specific Languages (DSLs) for Network Protocols (http://eb.host.cs.st-andrews.ac.uk/drafts/ngna2009-dsl.pdf) - Saleem Bhatti, Edwin Brady, Kevin Hammond and James McKinna, 2009. ⟡ Lightweight Invariants with Full Dependent Types (http://eb.host.cs.st-andrews.ac.uk/drafts/tfp08.pdf) - Edwin Brady, Christoph Herrmann and Kevin Hammond, 2008. Presentations ⟡ Idris: General Purpose Programming with Dependent Types (https://www.youtube.com/watch?v=vkIlW797JN8) - Presentation by Edwin Brady, Idris' creator. Projects ⟡ GitHub's trending Idris repos (https://github.com/trending/idris) ⟡ iridium (https://github.com/puffnfresh/iridium) - xmonad with the X11 abstracted and configured with Idris. ⟡ lightyear (https://github.com/ziman/lightyear) - Parser combinators for Idris. ⟡ quantities (https://github.com/timjb/quantities) Type-safe physical computations and unit conversions in Idris. ⟡ idris-type-providers (https://github.com/david-christiansen/idris-type-providers) - Type provider library for Idris. ⟡ IdrisScript (https://github.com/idris-hackers/IdrisScript) - FFI Bindings to interact with the unsafe world of JavaScript. ⟡ idris-containers (https://github.com/jfdm/idris-containers) - Various data structures for use in the Idris Language. ⟡ IdrisSqlite (https://github.com/david-christiansen/IdrisSqlite) - Effectful bindings for SQLite. ⟡ idris-http (https://github.com/uwap/idris-http) - HTTP library for Idris. ⟡ RingIdris (https://github.com/FranckS/RingIdris) - Ring solver for Idris. ⟡ specdris (https://github.com/pheymann/specdris) - Test framework for Idris. ⟡ idris-config (https://github.com/jfdm/idris-config) - Parsers for various configuration files written in Idris. ⟡ probability (https://github.com/BlackBrane/probability) - Probabilistic computation in Idris. ⟡ idris-protobuf (https://github.com/google/idris-protobuf) - Partial implementation of Protocol Buffers in Idris. ⟡ idris-free (https://github.com/idris-hackers/idris-free) - Free Monads and useful constructions to work with them. ⟡ idris-ct (https://github.com/statebox/idris-ct) - Formally verified category theory library ⟡ typedefs (https://github.com/typedefs/typedefs) - Programming language-agnostic, algebraic data type definition language Backends ⟡ idris-jvm (https://github.com/mmhelloworld/idris-jvm) - JVM bytecode backend for Idris. ⟡ idris-llvm (https://github.com/idris-hackers/idris-llvm) - LLVM backend. ⟡ idris-erlang (https://github.com/lenary/idris-erlang) - Erlang backend. ⟡ idris-malfunction (https://github.com/stedolan/idris-malfunction) - Experimental Malfunction (OCaml internal representation) backend. Build tools | Package managers - Idris Rules (http://idris.build) - Idris rules for Bazel - Ikan (https://github.com/idris-industry/ikan) - A package manager for idris, in idris - Elba (https://github.com/elba/elba) - A package manager for Idris - idream (https://github.com/idream-build/idream) - A simple build system for Idris Community ⟡ Mailing list (http://groups.google.com/group/idris-lang) ⟡ IRC: #idris on freenode.net (https://webchat.freenode.net/) ⟡ GitHub organization (https://github.com/idris-hackers) ⟡ Community Standards (https://www.idris-lang.org/documentation/community-standards/) License !CC0 (http://mirrors.creativecommons.org/presskit/buttons/88x31/svg/cc-zero.svg) (https://creativecommons.org/publicdomain/zero/1.0/) idris Github: https://github.com/joaomilho/awesome-idris