Idea: Visual NXC

Discussion specific to NXT-G, NXC, NBC, RobotC, Lejos, and more.
muntoo
Posts: 834
Joined: 01 Oct 2010, 02:54
Location: Your Worst Nightmare
Contact:

Re: Idea: Visual NXC

Post by muntoo »

doc-helmut wrote:I really don't want to discourage you or call your challenge into any question, but given the fact that it is an almost unmanageable chunck of keywords, definitions, predefined expressions and macros (look at NXCdefs.h) which have to be processed into a graphic symbol it's worth while a big team of specialists who care about it's implementation and redeployment and it's hard to see in how many years this project will ever be finished...
That just made me push C# in my to-learn list even more. :D
Image

Commit to LEGO Mindstorms Robotics Stack Exchange:
bit.ly/MindstormsSE


Commit to LEGO Stack Exchange: bit.ly/Area51LEGOcommit
sidneys1
Posts: 141
Joined: 01 Oct 2010, 14:38
Location: Pennsylvania - The United States of America
Contact:

Re: Idea: Visual NXC

Post by sidneys1 »

doc-helmut wrote:1.) visual Basic or Delphi or Borland C++ (which I actually know better) don't generate code that calculates or writes any useful routines - they generate just a user interface with windows, buttons, canvas, menus, edit boxes. What happens "internally" if a user pushs a button must still be written in "legal handwritten C or Pascal code" - each variable, each loop, each if, is +, *, / -, ^, % or what ever.
No idea what you're saying here, but C# has excellent "code-behind" features. It's not just an interface.. And even if it wasn't, .NET allows close integration of CLI and Native codebases. I could write all of the codebehind in C++ if I knew it and wanted to.
doc-helmut wrote:2.) What you try to do is much more than this: you try to put every keyword, variable, more-dim. array, expression, macro, modifier, device, into a graphic symbol.
Not quite. Blocks will merely represent a snippet of NXC code. There will not be a single block for 'every line of code'. Some blocks will contain dozens of lines of code. Variables will be handled automatically (to some extent) in that local varaibles will not conflict with global variables, and the user will have access to the global vars if and only if they want it.
doc-helmut wrote:3.) NXC has lots of keywords and symbols and devices and what else...
See my response to point #2.
doc-helmut wrote:4.) If you try to put all this (the programming language itself, not just the user panel and interface) into grafic symbols you will end up inevitably at a grafic language which more or less looks like or similar as NXT-G or Robolab or Labview, except the fantastic benefit that you will have an additional written code in NXC syntax.
That is the idea :) And, unlike NXT-G, Robolab, or Labview I am planning on having a special block for advanced users that allows them to write the code within the block themselves.. Think of an "nxc code" block in NXT-G.
doc-helmut wrote:I really don't want to discourage you or call your challenge into any question, but given the fact that it is an almost unmanageable chunck of keywords, definitions, predefined expressions and macros (look at NXCdefs.h) which have to be processed into a graphic symbol it's worth while a big team of specialists who care about it's implementation and redeployment and it's hard to see in how many years this project will ever be finished...
The "chunk of keywords, definitions, expressions, and macros" is hardly unmanageable. V-NXC already parses all commands, constants, and keywords (2,000+ of them) to do the code highlighting. It loads this all when the "view output" window opens, and takes no noticable time at all.
doc-helmut wrote:I personally almost would have resigned since quite from the start, but I honestly hope this could be a further incentive for all for all involved people to bring this actually magnificent project to a glorious final... :)
That is also the idea :)

Have a nice day,
~Sidneys1
My Mindstorms website: http://sidneys1.com
HaWe
Posts: 2500
Joined: 04 Nov 2014, 19:00

Re: Idea: Visual NXC

Post by HaWe »

No idea what you're saying here, but C# has excellent "code-behind" features. It's not just an interface.. And even if it wasn't, .NET allows close integration of CLI and Native codebases. I could write all of the codebehind in C++ if I knew it and wanted to.
what I meant was: if I want to write code for odometric navigator and maze solver I would have to write my C or Pascal code on my own (using Borland Delphi or C++), both won't give me any libraries with precast code for calculting all the astar nodes and paths and trigonometric formulas for positions from odometric data. There is just the code for the windows and buttons a.s.o.

But I wish you good luck^^
muntoo
Posts: 834
Joined: 01 Oct 2010, 02:54
Location: Your Worst Nightmare
Contact:

Re: Idea: Visual NXC

Post by muntoo »

You know, I think you should convert the SVN to Mercurial*. SVN is designed for a one user project; Hg is for an entire team.

I believe SourceForge supports Mercurial, but I recommend the best: Bitbucket.

-----

*Or git, I guess, but I'd much rather have the awesome ease and elegance of Merucial (Hg) by Selenium (Se). And, yeah, we're doing Chemistry in Science class.

WARNING: Link contains a "bad word" in large, unfriendly capital letters. :o Link.
Last edited by muntoo on 09 Jun 2011, 00:51, edited 1 time in total.
Image

Commit to LEGO Mindstorms Robotics Stack Exchange:
bit.ly/MindstormsSE


Commit to LEGO Stack Exchange: bit.ly/Area51LEGOcommit
sidneys1
Posts: 141
Joined: 01 Oct 2010, 14:38
Location: Pennsylvania - The United States of America
Contact:

Re: Idea: Visual NXC

Post by sidneys1 »

muntoo wrote:You know, I think you should convert the SVN to Mercurial.
I'll look into it.

Have a nice day,
~Sidneys1
My Mindstorms website: http://sidneys1.com
mightor
Site Admin
Posts: 1079
Joined: 25 Sep 2010, 15:02
Location: Rotterdam, Netherlands
Contact:

Re: Idea: Visual NXC

Post by mightor »

SVN is not designed for a single user, that's nonsense. I have been part of very large projects that used SVN. It has everything you need for conflict resolving, etc. Now unless you are hosting a project involving hundreds, if not thousands of users using many geographically distributed repositories, SVN will do just fine.

Don't make things more complicated and complex than they have to be.

- Xander
| My Blog: I'd Rather Be Building Robots (http://botbench.com)
| RobotC 3rd Party Driver Suite: (http://rdpartyrobotcdr.sourceforge.net)
| Some people, when confronted with a problem, think, "I know, I'll use threads,"
| and then two they hav erpoblesms. (@nedbat)
sidneys1
Posts: 141
Joined: 01 Oct 2010, 14:38
Location: Pennsylvania - The United States of America
Contact:

Re: Idea: Visual NXC

Post by sidneys1 »

Actually I'm really liking Mercurial. I'm finding its commit/revision system to be more comfortable (and per-file!), I can better see what exactly changed, commit notes are better integrated, and it all just seems.. 'cleaner'. Just personal preference, but at least on this project I'm a convert.

Have a nice day,
~Sidneys1
My Mindstorms website: http://sidneys1.com
muntoo
Posts: 834
Joined: 01 Oct 2010, 02:54
Location: Your Worst Nightmare
Contact:

Re: Idea: Visual NXC

Post by muntoo »

You really should upload your new DLL Libraries (specifically STP.Rgi). I've been itching to compile this...

Also, you should edit your SourceForge Visual NXC project page to include a "redirect" to your new repository.
Image

Commit to LEGO Mindstorms Robotics Stack Exchange:
bit.ly/MindstormsSE


Commit to LEGO Stack Exchange: bit.ly/Area51LEGOcommit
sidneys1
Posts: 141
Joined: 01 Oct 2010, 14:38
Location: Pennsylvania - The United States of America
Contact:

Re: Idea: Visual NXC

Post by sidneys1 »

muntoo wrote:You really should upload your new DLL Libraries (specifically STP.Rgi). I've been itching to compile this...

Also, you should edit your SourceForge Visual NXC project page to include a "redirect" to your new repository.
Thanks for the reminder! I've been meaning to do that for a while now..

Have a nice day,
~Sidneys1

EDIT: Fixed.
My Mindstorms website: http://sidneys1.com
sidneys1
Posts: 141
Joined: 01 Oct 2010, 14:38
Location: Pennsylvania - The United States of America
Contact:

Re: Idea: Visual NXC

Post by sidneys1 »

Also, for anyone who doesn't want to download and complile the code themselves, I compiled a minor update here. No real changes, just a few little bug fixes and tweaks.

Visual NXC v0.1.0.5r (r for 'refresh')

So, there you go, peeps too lazy/unable to compile :D Also, as mentioned in my previous post, I updated the "DLL Libraries.zip" file, which contains the new dependancies required for V-NXC to compile.

Enjoy!
Have a nice day,
~Sidneys1
My Mindstorms website: http://sidneys1.com
Post Reply

Who is online

Users browsing this forum: No registered users and 25 guests