PDA

View Full Version : IDE enhancements



nisbus
03-21-2009, 07:58 AM
Hi,

I've been getting to know the spin language and coming from a luxury IDE like Visual Studio and Delphi I really miss the intellisense features of those IDE's.

It's a big hurdle for a programmer like me to get into a new language if I have to rely on a book (or google) for all available keywords and object methods.

I started to write an Intellisense kind of project for spin in C# and am thinking of adding it to codeplex.

Anyone interested in participating in such a project?

I've finished the keywords dictionary and a parsing of all .spin files in a directory (reads it into a db for easy lookups) but the interface itself is not finished at all.

I'd be interested to hear if anyone would think this would be of use and/or if codeplex is the best way to host such a project.

BTW, why isn't there a specific topic for the propeller tool on this forum?

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Thanks,
nisbus

russ christensen
03-21-2009, 08:14 AM
I would be totally interested in such a tool, and would be more than willing to help code/test it.· Let me know what I can do.· Not a big C# person, but I'm learning as I use it.· Just let me know in a PM or w/e.· :)

Russ

mctrivia
03-21-2009, 08:30 AM
memorizing key words and variables would be very useful

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Need to make your prop design easier or secure? Get a PropMod (http://propmodule.com) has crystal, eeprom, and programing header in a 40 pin dip 0.7" pitch module with uSD reader, and RTC options.

Ale
03-21-2009, 03:10 PM
That kind of code completion tends to get in the way every time I use Netbeans. I do not know about any other IDEs since I stopped using RHIDE some years ago. One feature I find useful though is to bring the help over a function/class/etc name. I can only keep a vague idea of what something does. Runtime libs tend to be excessively big.
On the contrary SPIN has a limited and not growing number of functions and the rest are external "objects", not real ones, but the other ones are not real too, so who cares. You may need to parse them every time a file changes otherwise you will lose sync.

Not a critic, but otherwise it comes to BST, I'll not use it, why you should care ? because it is the other IDE besides PropTool with features that PropTool has not, like multiplatform support.
You will need a compiler too, mpark wrote one I think in C# too or was you mctriva ?. Make it run under Mono and you may have a winner, at least with the users that do not use winblows because the ones that do mostly use PropTool.
It took BradC around six months to get the IDE to work really well in the three platforms, you may expect a similar time.

Sourceforge is quite good, I think.

Ale

Cluso99
03-21-2009, 03:46 PM
For some Prop Tools index, see the link on my signature

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Links to other interesting threads:

· Home of the MultiBladeProps: TriBladeProp (http://forums.parallax.com/showthread.php?p=786418), SixBladeProp (http://forums.parallax.com/showthread.php?p=780033), website (Multiple propeller pcbs) (http://bluemagic.biz/cluso.htm)
· Single Board Computer·using the TriBladeProp board (ZiCog Z80 Emulator) (http://forums.parallax.com/showthread.php?p=790917)
· Prop Tools under Development or Completed (Index) (http://forums.parallax.com/showthread.php?p=753439)
· Emulators (Micros eg Altair, and Terminals eg VT100) - index (http://forums.parallax.com/showthread.php?p=778427)
· Search the Propeller forums (via Google) (http://search.parallax.com/search?site=parallax&client=parallax&output=xml_no_dtd&proxystylesheet=parallax&proxycustom=<HOME/>&ie=&oe=&lr=)

My cruising website is: ·www.bluemagic.biz (http://www.bluemagic.biz)·· MultiBladeProp is: www.bluemagic.biz/cluso.htm (http://www.bluemagic.biz/cluso.htm)

mctrivia
03-21-2009, 09:43 PM
was not me who wrote the compiler. I have never used c#

there is a really good ide called komodo that I have used for php programming. it is a generic ide so it could be used for spin if a compiler was made for it. the feature I like the best is it remembers variables and functions so when you type in an object name then . it gives a list of all public functions and variables.

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Need to make your prop design easier or secure? Get a PropMod (http://propmodule.com) has crystal, eeprom, and programing header in a 40 pin dip 0.7" pitch module with uSD reader, and RTC options.

nisbus
03-22-2009, 02:01 AM
Thanks, for all your replies.

As the original post implied this is a project on enhancing the current IDE and not about writing a new one from scratch.
There are some things I really like from the current tool.
SpinIntellisense as I'm thinking of it would give you hints over object methods, variables and keywords and help you with using external objects by giving you a list of available methods when you add the . after the object name in your code.

I've written the parser that reads the files in the library and I'm working on getting it to look for items according to the selected word.
I've never used Mono but I don't think there should be anything in my code that's Windows specific so compiling for mono shouldn't be a big issue.

I'll put what I've got already on Codeplex today and post a link here.

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Thanks,
nisbus

BradC
03-22-2009, 07:03 AM
nisbus said...
Thanks, for all your replies.

As the original post implied this is a project on enhancing the current IDE and not about writing a new one from scratch.
There are some things I really like from the current tool.
SpinIntellisense as I'm thinking of it would give you hints over object methods, variables and keywords and help you with using external objects by giving you a list of available methods when you add the . after the object name in your code.



This is something I've been looking at for a while, but it requires "compile as you go" or as you have done, a separate parser to keep on top of referenced objects. It's doable but I've never had a case that I could not solve simply by flicking open the other object in a new tab and checking the methods in the folded view.

The mouse-over hover is a neat idea. I've been playing with it on and off but I've not got it to work properly across all 3 platforms without a performance impact yet. There is quite a bit of scanning/parsing in the background to locate the information to display in a hint.

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Cardinal Fang! Fetch the comfy chair.

jazzed
03-22-2009, 07:16 AM
Having Spin intellisense is a great idea. I look forward to testing what you have. I'm curious about what "enhancing the current IDE" means ... and how that would be done.

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
--Steve


Propalyzer: Propeller PC Logic Analyzer (http://www.brouhaha.com/~sdenson/Propalyzer)
http://forums.parallax.com/showthread.php?p=788230 (http://forums.parallax.com/showthread.php?p=788230)

mpark
03-22-2009, 07:58 AM
Surely it should be Spintellisense.

mpark
03-22-2009, 08:03 AM
CogniSense?

nisbus
03-23-2009, 05:02 PM
I'm thinking of calling it Spinsense.

A small delay in setting it up on codeplex.

Hopefully I'll manage to post it tonight.

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Thanks,
nisbus