Hacker News new | past | comments | ask | show | jobs | submit login
An Introduction to Nitra (jetbrains.com)
86 points by oal on Nov 12, 2013 | hide | past | favorite | 12 comments



This gets us ever closer to the goals of the elusive (and presumably abandoned?) Grok project [1].

I'd love to see syntax highlighters (like Pygments), editors and IDEs, autocompletion providers, debuggers, and all other language-related tooling consume a standardized canonical "language description format". Making a new language? Bam! It's automatically supported by Visual Studio, Eclipse, Emacs, vim, Sublime Text, gdb, Pygments, the list goes on.

The extension capabilities are also awesome. Let's say I have a huge project and, at a certain level of abstraction, users aren't allowed to use fprintf(stderr, ...), they need to use LOG(...). It would be great to have a file in your project that can tell your environment to give you the "red squigglies" and autofix information for such situations.

http://bsumm.net/2012/08/11/steve-yegge-and-grok.html


Steve spoke about Grok earlier this year: http://www.youtube.com/watch?v=uRO3dNJx5Dw (sadly the video is only worth listening to), and at the end of the talk guesses there would be more public information 1.5 years from then.


Looks very similar to OMeta (http://tinlizzie.org/ometa/)


Does OMeta allow extending existing languages or provide tooling around it such as analysis, refactoring, navigation?


It's object-oriented and especially designed to be extensible. The slides on the pages contain many examples. It's fairly stand-alone and isn't integrated into an IDE. However, it's small, which allows for easy implementation (see original OMeta in Smalltalk, Ometa/JS, Ometa#, etc.) and could be used as a base for implementing these IDE features.

I'd love to see a cleanup of OMeta/JS and combining it with CodeMirror.


seems more like an metaIDE framework


I hope some of the work they've done filters back into Nemerle. A lot of people were very excited when JetBrains picked up the Nemerle team but it's not clear that they have any intention of supporting the project - they just wanted the team...


The Nemerle team is still active and the project is very much alive. In addition, Nitra uses Nemerle.


I've been waiting for this for a year; the idea of having a language-within-a-language is extremely powerful.

Take our product: we have javascript, typescript, XML and SQL stored in strings in our C# codebase. As you can expect, these are really hard to maintain, and just has hard to move to separate templates.

Oh, did I mention that we also have our own templates, our own DSL, handlbar templates, jQuery templates and templates used in various libraries.

Nitra can support that all in one tool.


Am I being too simplistic when I think the following holds?

Easier to make a DSL => Wider adoption of new languages => Better grounds for experimentations => Much more creative stuff => More accessible technology


Don't see why not...


This is so awesome! I hope the resulting assemblies will be PCL though.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: