A couple of suggestions
Posted: Tue Oct 11, 2011 7:07 pm
Hi. Let me say first that I really like this language. It has the advantages of Python while being, to my mind, cleaner and more usable.
I currently code mainly in VB.NET (with a little C++ and C# when appropriate), but I'd like to use Cobra for some of my own future projects. At the moment, however, I am hampered by a couple of issues.
Firstly, and most importantly, IDE support is practically non-existent. I have installed the Visual Studio add-in, and also (after much head-scratching) managed to compile and run Visual Cobra Express. However, neither of these IDEs seem to achieve much. Express, for instance, is mostly non-functional in any case. File->New->Project does nothing(!) and there is no way in either IDE to "save, compile and run" in one click or keypress. Further, intellisense (which nowadays is an expected feature of any language) is completely absent.
In short, we have nothing more than a text editor with syntax highlighting, making writing Cobra code a painful and tedious process. And that's a shame, because it's obviously an elegant and well-thought-out language; it's just being held back by these deficiencies. I mean, without proper IDE support, how many people will honestly take Cobra seriously? The notion of writing a complete application in what is - essentially - little better than Notepad makes me want to run away and hide underneath something.
Secondly, I'm concerned about the dot-prefix notation for accessing member functions and variables. It's very easy - indeed, it happened to me - to create a local variable when you really meant to access a class member. Took me 10 minutes to track the bugger down, and all because I'd missed a dot, which the compiler didn't catch. Perhaps the solution here is to implement something like VB's "Option Explicit" - that is, all variables must be declared with var before they can be used. It'd catch a lot of bugs at compile-time, which is why the option has existed in VB for over a decade.
I would like to help - either with the language design, with the IDE support, or both. I haven't had much experience with either, but I'm pretty good at coding in general, and I'm willing to learn.
I currently code mainly in VB.NET (with a little C++ and C# when appropriate), but I'd like to use Cobra for some of my own future projects. At the moment, however, I am hampered by a couple of issues.
Firstly, and most importantly, IDE support is practically non-existent. I have installed the Visual Studio add-in, and also (after much head-scratching) managed to compile and run Visual Cobra Express. However, neither of these IDEs seem to achieve much. Express, for instance, is mostly non-functional in any case. File->New->Project does nothing(!) and there is no way in either IDE to "save, compile and run" in one click or keypress. Further, intellisense (which nowadays is an expected feature of any language) is completely absent.
In short, we have nothing more than a text editor with syntax highlighting, making writing Cobra code a painful and tedious process. And that's a shame, because it's obviously an elegant and well-thought-out language; it's just being held back by these deficiencies. I mean, without proper IDE support, how many people will honestly take Cobra seriously? The notion of writing a complete application in what is - essentially - little better than Notepad makes me want to run away and hide underneath something.
Secondly, I'm concerned about the dot-prefix notation for accessing member functions and variables. It's very easy - indeed, it happened to me - to create a local variable when you really meant to access a class member. Took me 10 minutes to track the bugger down, and all because I'd missed a dot, which the compiler didn't catch. Perhaps the solution here is to implement something like VB's "Option Explicit" - that is, all variables must be declared with var before they can be used. It'd catch a lot of bugs at compile-time, which is why the option has existed in VB for over a decade.
I would like to help - either with the language design, with the IDE support, or both. I haven't had much experience with either, but I'm pretty good at coding in general, and I'm willing to learn.