On Sun, Jul 17, 2005 at 11:15:49AM -0400, Matthew Miller wrote: > Hi Phil, > > On Sun, Jul 17, 2005 at 01:36:05PM +0100, Philip Pemberton wrote: > > In message <20050717022439.GD16035@naxs.net> > > Matthew Miller wrote: > > > > > So, I'm looking for suggestions and comments. > > > > Pascal is quite easy to learn - take this for instance: > > > > I tend to use C more than Pascal, but Pascal is still a very capable (and > > simple) language. It's far easier to write a quick-n-simple Pascal > > interpreter/compiler than it is to do the same thing with C. You could also > > do Pascal-to-C translation if you had to - I think there's a program called > > "p2c" that does it. > > Using p2c is a good suggestion. It would allow me to use the existing robots > and software with the addition of only a translation step. I'll consider > pascal, but I'm concerned that it's not much more simple than C from the > perspective of a new student. Agreed. I have a suggestion. You have an specific application. You really need an application specific language. C and Pascal are good when you have a variety of problem domains that you want to write software for. General purpose languages add a lot of necessary complexity in order to be general purpose. Your LOGO thought is the right idea. When I used to teach the intro to programming class in C, I had students that struggled with the abstract concepts that I was trying to get across. So one semester I wrote a simulation scripting language, called MILO, that controlled a virtual monkey with commands (left, right, up, down, pickup, drop, eat, etc.) and the programming projects were to write scripts that controlled the monkey. Groups of students who were shown the simulation language did better when shown the abstract concepts of selection and repetition. My NPCI language takes a minimalist approach to program development. It's block structured, only has one simple construct per abstract concept, and sprinkles in a bit of microcontroller specific stuff like direct bit manipulation. I have a preliminary language overview here: http://www.finitesite.com/d3jsys/README-NPCI.html NPCI doesn't have polish yet though. But I'm getting ready to put it out there for public consumption. So if you're interested let me know. I can also dig up MILO too. I have it on a machine somewhere. Requires curses to do its job. So with the minGW compiler and the pdcurses DLL, it should be possible to get it running on a Windows box in short order. Good luck, BAJ -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist