3 ms·
As much as I've enjoyed writing Grails apps and Groovy scripts, what I don't like about groovy is that it comes with a large runtime jar and its binaries are no
by i386 15y ago
As much as I've enjoyed writing Grails apps and Groovy scripts, what I don't like about groovy is that it comes with a large runtime jar and its binaries are not really usable from java projects without API uglyness.
I wish Java had been designed with the same multi-language philosophy that .NET has had from the get go. Binaries produced in any language in .NET don't give any clues to what the language the binary was implemented in. For example, if your writing something using VB.NET and working with a library that was implemented in C# there really isn't any evidence that this is the case and the signatures look the same.
- Flow 15y agoBut that's mostly because VB.Net and C# are isomorphic, it's the same language with different syntax. I remember reading about the first versions of Eiffel on .Net. That gave the impression that unless you put a lot of effort into your language, it will probably be just a variant of C#/VB. The first versions of Eiffel for .Net lacked multi-inheritance and I think DBC was crippled somehow too. :-/
- pufuwozu 15y agoI don't think that's quite true. F# is very different to C# and VB but still very well supported.
- Flow 15y agoIt's mostly because of the effort the F# team put in. It's not inherent to the run-time and libraries. IMHO.
- eropple 15y agoActually, this isn't quite true. Close, but the languages do have a few differing features. Your main point is a little questionable - sure, there are languages very similar to C# (Nemerle, J#, etc.), but then you've got F#, P# (Prolog), IronScheme, IronPython, IronRuby... I mean, the existence of the DLR itself kinda puts holes in your argument (for some of the above languages). Claiming "yeah, but the F# team did everything" is somewhat true (as they did for the first release), but it's not a meaningful complaint. That's going to be the case for virtually any new paradigmatic language being put onto a general-purpose (i.e., procedural, object-oriented) programming framework. The Clojure team had to do everything to make it work on the JVM, too. And in current releases of .NET, more and more of that is being pulled into .NET core and being leveraged by C#.
- tszming 15y agoTry Mirah (http://www.mirah.org/ http://www.mirah.org/), Ruby like syntax without the need of runtime library.