>>>>> "Mike" == Mike Bresnahan <mike at fruitioninc.com> writes: >> Supposedly with lower level languages you buy better run time with a >> big expenditure of more programmer time; but by and large I don't see >> the payoff as being worth it. YMMV, but for anything other than >> hard-core systems programming (including developing inner-loop >> libraries), C, C++, and even Java (although it's certainly easier than >> the first two) seem really masochistic. Mike> I guess I find it, well WEIRD, that you would consider Java Mike> as a low-level systems programming language. To me it is a Mike> very high level language. It runs on top of a virtual Mike> machine and you have zero direct access to the hardware. It Mike> has feature-full runtime metadata system, dynamic code Mike> swapping/generation/instrumentation, and garbage collection. Mike> Plus it has a whole host of IDEs offering GUI painters, code Mike> generation, documentation, profiling, and refactoring tools. Mike> In fact, it is plain terrible at systems programming. It's Mike> difficult to do things as simple as process control or Mike> determine if a file is executable. Mike> Perhaps my viewpoint is different because I programmed in C Mike> and C++ for several years before using Java. Chacun a son gout. Here's someone's inflammatory assessment of Java. If it doesn't match your experience, feel free to ignore it. But it's a good rant: "Object-oriented programming generates a lot of what looks like work. Back in the days of fanfold, there was a type of programmer who would only put five or ten lines of code on a page, preceded by twenty lines of elaborately formatted comments. Object-oriented programming is like crack for these people: it lets you incorporate all this scaffolding right into your source code. Something that a Lisp hacker might handle by pushing a symbol onto a list becomes a whole file of classes and methods. So it is a good tool if you want to convince yourself, or someone else, that you are doing a lot of work." --- http://www.paulgraham.com/noop.html Every time I think about using Java, I am astounded by what a blizzard of objects I have to grapple with to do what seems to me to be the simplest thing. For example, the difference between what it takes to get something displayed on the screen in Java + Swing and perl + tk, or tcl/tk. For example, the test scroll pane thing, draws a picture and lets you scroll over it, which I opened at random to in a Swing book, consumes about 30 lines. That's approximately as much as is consumed by a sample graph editor (micro-Visio) in Ousterhout's Tcl book. And you just let the wish interpreter have at it, modding it as you go. No heavy lifting with the IDE, the editor, etc. Tcl isn't really to my taste, but that's a pretty good example of what I mean by a high-level languge. _______________________________________________ TCLUG Mailing List - Minneapolis/St. Paul, Minnesota Help beta test TCLUG's potential new home: http://plone.mn-linux.org Got pictures for TCLUG? Beta test http://plone.mn-linux.org/gallery tclug-list at mn-linux.org https://mailman.real-time.com/mailman/listinfo/tclug-list