When comparing Idris vs Wolfram Mathematica, the Slant community recommends Idris for most people. In the question“What are the best (productivity-enhancing, well-designed, and concise, rather than just popular or time-tested) programming languages?” Idris is ranked 29th while Wolfram Mathematica is ranked 60th. The most important reason people chose Idris is:
Idris not only has support for type classes, but is a fully dependently typed language, giving you the full power to statically verify your code.
Ranked in these QuestionsQuestion Ranking
Pros
Pro Full dependent types
Idris not only has support for type classes, but is a fully dependently typed language, giving you the full power to statically verify your code.
Pro Domain driven design and type driven development
Because of full dependent types in Idris, the programmer can focus more on modelling the domain with types and waste less time fixing common bugs that the type checker will catch. Dependent types help apply type driven development and a lot of code auto generation, making the compiler and type checker an ally in developing working software instead of just getting in the way.
Pro Lots of functionality
Pro Built-in CPU Parallelization
Pro Very mature
Wolfram Mathematica has been around for a long time without any major changes in the basic design.
Pro Coherent API over different domains
Pro Supports units and can do much more than just maths
Other platforms severely lack this useful feature.
Pro Fully integrated symbolic processing
Pro Very powerful and fast, also possible to get for free
Cons
Con Not widely used
Con Not widely used
Con Weaker type inference
As type inference is undecidable for dependently-typed languages, Idris cannot offer the full type inference that Haskell supports, and so more type annotations will be needed.
Con Different semantics from Haskell
Idris, while similar to Haskell, has strict semantics, which may cause some confusion if your backend is done in Haskell. If using Idris, it would make sense to do the backend in Idris as well, if not for the fact that Idris currently has fewer libraries available for web development than Haskell.
Con Unintuitive data types and strange assignment statements
Representation of data still remains highly fragmented technically and one fumbles between data types and stumbles on strange assignment statements to attempt conversions of meaning.
Con Proprietary
