QUOTE (rturner @ Apr 16 2009, 08:10 PM)

Greg M. pretty much hit the nail on the head.

QUOTE (rturner @ Apr 16 2009, 08:10 PM)

- Gcode is already available, well known, and developed. There are almost limitless resources for learning about Gcode via its userbase. As a side benefit to being a nearly ancient programming language, it is completely platform agnostic, & doesn't care what CNC machine you're running, how the code was generated, or what computer/controller/interpreter you are using.
This doesn't mean that improvements couldn't be made. When I used to program in HEX (yes, I did, and no I did not like it) I craved a higher level language. But that does not mean gcode should be made obsolete. It would be cool to see a higher level language than gcode that could be directly translated into gcode. Much like C or C++ code usually does not run as written, but instead gets compiled into juicy executable programs. If an intuitive, human understandable machine control language was written, I would argue it should translate itself into gcode or one of its brethren.
QUOTE (rturner @ Apr 16 2009, 08:10 PM)

- Gcode is freely and easily generated from and converted between almost every known 3d or 2d format, including other competing machine control languages- such as HPGL or Gerber.
- Gcode is already essentially (if not explicitly) an open platform. The fact that there are different flavors of Gcode point to the fact that developers have already made their own versions that suit their products. AFAIK there's no reason (other than practicality and compatibility) that you couldn't develop your own. EMC, which uses a variant of RS274NGC, has a thriving userbase that works with its developers to constantly improve the front-end, the back-end, and the Gcode its self. If you want to see a function implemented, just tell them, and if enough agree, it'll get added to the roadmap and someone will develop it.
Those are some nice bits about gcode history. Is it somewhere up on the EMC website or something?
QUOTE (rturner @ Apr 16 2009, 08:10 PM)

- Despite the fact that there are several flavors of Gcode, most are either directly compatible with each other, or are easily converted.
- Gcode is already a high level programming language (not too unlike BASIC) that is capable of math, logic loops, numeric variables, can make external calls to value tables, other Gcodes, executables, and scripts.
While gcode can make those constructs Robin, I will agree with the openSBP folks that they are not intuitive (abbreviations and intuition do not inherently mix). I just do not think openSBP makes those constructs nicer by any significant margin.
QUOTE (rturner @ Apr 16 2009, 08:10 PM)

- Gcode (seemingly) shares most of the functionality of openSBP.
- Gcode is extendable (ok, not sure if that's a word.. but you know what I mean) by writing your own executables and naming them in the Gcode nomenclature. Meaning that functionality can be expanded/tailored to suit your needs.
- Gcode has several very capable and mature interpreters that are capable of all manners of kinematics and IO.
- This isn't so much a Gcode thing, but EMC (which my respect for is continually growing) already allows for direct motion control via Python. It's back-end allows for nearly infinite expansion and configurability.
Python is a fairly cool language. Personally I favor Ruby, but whetever they are both solid languages. I assume you are talking about examples like this:
http://wiki.linuxcnc.org/cgi-bin/emcinfo.p...Code_GeneratorsQUOTE (rturner @ Apr 16 2009, 08:10 PM)

It's not that I think that openSBP sounds bad per se, it's just that most of its claimed advantages.... aren't advantages it really has. In fact, it seems like a smaller, less popular, less understood, less supported, and weirder version of Gcode. Kind of like OS2 verses Windows - they both did more-or-less the same thing, it's just that one was completely unpopular for anything other than ATMs.
It's just that I don't think the world really *needs* another gcode-like programming language. What's needed are intuitive front ends that make numeric control easy- regardless of how that control is achieved... And that's not something that openSBP will accomplish.
I couldn't agree more Robin. gcode (and others) do not really need to be human readable, or even human understandable (aside from a small portion of society of course) unless of course you have to tune and optimize your operations in such a way that your tools that generate your gcode do not allow.
Ultimately, the idea of a higher level language that translates into gcode actually does appeal to me. I just think it would require a large concerted effort, and a bunch of time.