> Read the draft here and tell me what you think of it and whether you > have something to add:
I had a fairly quick glance through; I think you missed the point. Most of your arguments point to something like VB3, not Pascal, ADA or C. You mention the syntax of the Java class - Pacal and ADA are both more complicated. Pascal (okay, mainstream Borland dialect Pascal) has the Program and Unit constructs and ADA its Package body/specification (which IIRC you could skip, but still needed the Program construct similar to the Pascal/Modula3 one.) The Java class with a Main function is no more complex than a tradiditional Pascal "Program". In fact, C is probably the simplest, except you'd need to include at least stdio.h to do anything useful. At the end of the day, its down to syntactical preference. I've taught programming to novices (Pascal/Delphi) and there are as many "what does this mean", "why is that so complicated" and "I don't get why that is there" situations. The difference between program and unit. The sections in the unit (interface, implementation) the way the uses clause works. Circular references. Many, many, many. By contrast, the Java Class is quite simplistic. Especially if the student treats it as a stand alone entity (like a "program" in Pascal) to begin with and does not create any other classes. Pointers - no, no, no. Java passes by reference. This is not anything to do with "pointers" - you are getting confused between presentation and implementation. The implementation is nothing the student needs to know about at a beginners level. Passing by reference passes the "actual" typed object reference, passing a pointer in C does not. The equiv in C would be to use the & operator in the param list (if that is legal in C? It is in C++.) All [Borland/Delphi, non Turbo Pascal] Object Pascal classes are passed by reference too, so how is that any different to Java? If you wish to pass integral types by reference, box them. It's not exactly rocket science ;-) Non-standard compiled language.. Java is compiled to bytecode. The bytecode is basically a binary form. The bytecode is akin to machine code. There are plenty of tools (including those within the JDK) that will output Java "assembler" from the bytecode. Indeed, one critisism Java has is that reverse engineering it is trivial. There are also a number of free tools that will compile Java JVM bytecode markup (akin to assembler) to bytecode. Take a look at: http://jasmin.sourceforge.net/ and more specifically http://jasmin.sourceforge.net/instructions.html This one works. I've used it. There are a number of others. I know you want to seem "non-biased", but the artical sounds like you tried Java, and didn't like it - so you bash it, rather than say anything constructive. This response is coming from a hardened Delphi coder (of 10+ years) and C# convers ("Java, pah, I spit of you..") HTH M _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal