I have never developed a plugin/module for the jetbrains and I wonder how hard would it be to support a new language.
And by new language, I mean vala.
Vala is a modern language (think C#) that simply compile to C files (that are compiled with gcc/clang).
(Here's a tutorial for the curious)
It has bindings to many many native library, provides deep integration with Gnome.
Basically, it's the secret weapon behind elementaryos (all the desktop applications - windows manager, music player, file explorer ... - are developped in vala)
(Don't be fooled by the ugly wbebsite, the language is awesome, and the guys behind it great all around)
But enough of the sales pitch :)
While vala is very nice, the tooling around it is lacking.
Granted cmake has built-in support, but gdb is still the debugger of choice (aouch).
My goal would be to leverage the awesome clion existing features to support vala cmake and use the clion integrated debugger (while tailoring it a little).
Only that: the other stuff like formatting, refactoring, even coloring can wait.
So I have the following questions:
- How hard would it be for an experienced vala/java developer? (a matter of days/weeks/months?)
- Can the existing C debugger be leveraged for projects that doesn't work on C files (but generate C files - and compile files with the #line directive)
- Can the existing debugging be extended (vala classes are mapped to C structs. So a mapping is needed to show the variables values in the debugger)
- What would likely be the next steps?
Any feedback is welcome.