2 ms·
Catches: - having to write separate interface files (analogous to header files in C) - only one relevant compiler vendor; somewhat bad history with GNAT not s
by _pmf_ 10y ago
Catches:
- having to write separate interface files (analogous to header files in C)
- only one relevant compiler vendor; somewhat bad history with GNAT not supporting all the features the commercial AdaCore tooling supports. AdaCore has IMO been instrumental in holding back adoption of Ada, although they probably see themselves as evangelists.
- no metaprogramming
- the way generics work is a bit peculiar: it's less powerful than C++ templates (but a bit easier to learn) and slightly more powerful than Java/C# generics, but I find it to be a weird middle ground. I implemented some generic graph traversal algorithms via generics, but it felt like jumping through hoops (although once tackled, it was very robust and extensible).
- pjmlp 10y agoAs a side note generics are quite similar to how they are done in Modula-3 as well.