6 ms·
Nemerle 1.0
- whalesalad 15y agoIt looks a lot like python + javascript.
- xpaulbettsx 15y agoNemerle's coolest feature(or most evil, depending on your perspective) is its macros - it's one of the few modern languages that support them.
- kung-fu-master 15y agoExactly. AFAIK, it has small core language and all other constructions like if/else, while, for, foreach etc are made with macros. I think that Nemerle is Lisp macros + static types + OCaml (algebraic data types, pattern matching) + .Net ecosystem (even Visual Studio support).
- andrewcooke 15y agohow does it square typing with macros? is it typed after macro application?
- ziaw 15y agoyes, but macros can operate with typed AST too
- hi_octane 15y agoThere are different "macro stages" to allow macro application on both typed and untyped source.
- andrewcooke 15y agoso if macros can operate on typed source and/or on the typed ast tree, do they (the macros) have a type system that guarantees that they will preserve correct typing? or are types still checked agan (globally?) after applying the macro? what i'm really asking is, is there anything "smart" about how the macro works with the type system?
- VladD2 15y agoMacros are expending in the typing process. In macro you can use compiler API to type some untyped AST (for example, argument of macro). For example, "foreach" macro use compiler API to infer type of collection. This macro generate specialized code for different collection kind (array/list/IEnumerable).
- VladD2 15y agoFor example, see implementation of "lock" macro: http://code.google.com/p/nemerle/source/browse/nemerle/trunk/macros/core.n#434 http://code.google.com/p/nemerle/source/browse/nemerle/trunk...
- x5315 15y agoSemicolons. Ew.
- ziaw 15y agonot nessesary with indent syntax http://goo.gl/EqeaD http://goo.gl/EqeaD
- leif 15y ago> The world of statically typed languages has the same framework (Scala’s Lift). But the implementation for Nemerle is based on macros and recognized standards such as LINQ. I can't stand it when people parade around the "recognized standards" some company made up and then recognized on their own.
- ddkrone 15y agoSo far Scala is the only language I have looked at that does a decent job of mixing object oriented and functional constructs without making your eyes bleed. Nemerle seems pretty nifty based on it's feature list but I'm wondering what programmers they are targeting. .NET programmers seem pretty happy with C#/F# so they don't have much incentive to adopt another language.
- norswap 15y agoIt looks all nice and well, but why can't languages these days be compiled ? I reckon it's way harder to do, but there's no major impediment to achieve what can be achieved in a language based say on the CLR.
- tomjen3 15y agoWhy waste time writing a compiler when you can leverage much of the work already done to optimize .NET? If the clients don't have it, make your installer download it and be done with it.
- regularfry 15y agoIt's much harder to get enough of a .NET runtime together for a new platform than it is to lean on a platform compiler and binary toolchain which must already exist. It's all very well saying "just download the installer," but that won't get my nemerle code running on my phone.
- icey 15y agoWhat phone? Chances are Mono run there...
- regularfry 15y agoNokia N900. Ok, so there's Mono for Maemo, so that's not a particularly convincing argument in itself. However, the point stands - replace Nemerle with Scala, for instance, and I'm stuffed (mostly).
- VladD2 15y agoCompiled in native? CLR compile IL before execution. In the next version of Nemerle we plan to create Interchangeable back-ends: http://code.google.com/p/nemerle-2/wiki/BackEnds?wl=en-US http://code.google.com/p/nemerle-2/wiki/BackEnds?wl=en-US As one of the variants we consider to create backend for LLVM. At least we think about it.
- Alistra 15y agoonly windows installer...
- lazylland 15y agoBeautifully written intro that gave me a complete feel for the language. I think that it is a really difficult thing, to communicate that well. All the best ! I hope Nemerle becomes a fantastic option on the .NET platform. Though, with the speed that Microsoft likes to develop C#, it might most probably end up looking like this.