When comparing Visual Basic vs Idris, 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 Visual Basic is ranked 74th. 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 Very simple and efficient language (in terms of number of lines of code)
Pro Easy to learn
Pro Capable language
Compiling to the same intermediate language as C# and compiling against the same .NET libraries, the differences between C# and VB are largely syntactic. Most VB features even have a 1:1 correspondence with C#.
Pro Huge community
Being Microsoft's introductory language, visual basic has a strong and large community.
Pro English-like syntax
Pro Flexible, won't get in the way of a beginner
A beginner developer can worry about the code logic first, and then learn the language. Visual Basic lets you do basically anything if you really want, while still having the power to be a fully statically-typed and object oriented.
Pro Sibling to C#
If you don't want to start with C# because of its high learning floor, you can start with VB. It is dead easy to switch between the two.
Pro Easy to deal with Win32API
Using platform invoke, it's very easy to use the win32 api in vb.net. Neat and clean syntax. Not a mess like c# (meaning those "{}"s).
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.
Cons
Con Almost as bad as Python, but less used
Con Bad reputation
Being a visual basic programmer, you're unlikely to be taken seriously by other programmers. According to the 2015 Stack Overflow survey, it was voted the second most dreaded language among developers.
Con Tends to get clunky due to prebuilt assets
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.