Re: Languages

From: Edward J Glamkowski (eglamkowski@angelfire.com)
Date: 03/05/99


On Fri, 5 Mar 1999 14:35:40    George wrote:
>On Fri, 5 Mar 1999, John Hines wrote:
>
>> Well to be truthful...What's wrong with sticking to
>> a good plan?
>>
>> I have yet to experience any troubles with C even
>> though people will tell you as fast as they can the
>> limitations of C. Then again what do I know...
>
> My biggest complaint with C++ is the gratuitous
> random variable placement in the middle of a
> function.  That becomes more an issue of not doing it
> (and preventing others from doing it) than a language
> problem though.

I do C++ all day at work, and I just want to say:
stick to C!

> Feels like BASIC all over again with variables just
> "popping" up here and there.

Ironically, this is one of the few C++ things I really
like - especially useful when you want to do a for
loop, as all those index variables clutter the rest
of the declarations.
And actually, you should make every effort to not
declare a variable until you absolutely have to, as
C++ calls constructors whenever you do, even on
standard datatypes, which has overhead associated
with it.

The only other thing I really like about C++ is
dynamic memory allocation.


As for Java, here's some comments a friend of mine
made (not all of them relevent to a mud...):

1.Byte-code: Java's byte code specification is
rediculous. What should have been built was a sort of
"universal assembley" that could, if needed, be
assembled.
     Instead we have a byte-code that is guaranteed to
be slow and difficult to port, because of purported
"security" issues (which only arise on MS-Windows
machines).
   2.Built-in: Java's built-in functions are obtuse and
random. No attempt was made to make modern visual
programming easy or even "probable". Just dragging
an image requires you to implement a double-buffer
class (or worse, find one). Thread management requires
you to manage time-slices yourself. No
multiprocessing is even implied. Event handling
consists of a bizarre series of derived classes which
export interfaces that are called by a main module
which performs a message handling loop. And that's the
easy part.
   3.The 90's: The complete lack of attention to modern
programming requirements was phenomenal. Of what use is
"Circle()"? Java's built-in graphics methods are good
for rendering Pong, and that's about it. However
actually implementing Pong in Java is a difficult task
that only experienced programmers should undertake.
Worse yet, the language variations are just enough so
that porting my C++ is a pain, but not enough to make
the language even a smidgeon easier than C++.
   4.Libraries: Who is deciding what "low-level"
libraries are important to distribute with the basic
Java interpreter? Is there a 3D modeling library? Is
there a serial communications library? Joystick
functions? Can I develop a proprietary library compiled
for use on multiple platforms and integrate it
seamlessly into Java? Or must I compile an Active-X
extension, a "shared.lib" and an X-Object ?
   5.Cross Platform: My Borland Code doesn't compile in
Microsoft's J++, and neither import into Visual Cafe at
all. The compiled version executes differently in every
browser and on every machine. It crashes on Mac
Netscape. What was the point? I was better off building
the whole thing in something like "CodeWarrior".



Angelfire for your free web-based e-mail. http://www.angelfire.com


     +------------------------------------------------------------+
     | Ensure that you have read the CircleMUD Mailing List FAQ:  |
     |  http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html  |
     +------------------------------------------------------------+



This archive was generated by hypermail 2b30 : 12/15/00 PST