Re: GoTo in Java
- From: mwojcik@xxxxxxxxxxx (Michael Wojcik)
- Date: 26 Jan 2006 22:14:27 GMT
In article <1138214181.319054.287150@xxxxxxxxxxxxxxxxxxxxxxxxxxxx>, "Richard" <riplin@xxxxxxxxxxxx> writes:
> > Xlib, Xtk, Xaw, Motif...
>
> > Contrast that with languages that have large standard or semi-standard
> > libraries, like Java or C++
>
> C++ can use dozens of GUI API: wxWidgets, Qt, GTK, FLTK, FOX, Allegro,
> ...
Yes, but I'm afraid I don't see the relevance of that to my point. I
mentioned the proliferation of X11 APIs for C only as an example of
the proliferation of reinvention. When I invoked the C++ standard
library in the next paragraph I was referring to its breadth in
general; obviously it doesn't include an X11 API, or indeed any GUI
API.
> Java has AWT, Swing, SWT, wx4j (wxWidgets), BambooKit, Zaval
Swing was invented by Sun as a successor to AWT. wx4j is a port of a
preexisting API to Java. BambooKit isn't an API; it's an XML-based
GUI scripting language. None of them represent reinvention as such.
Zaval is something of a competitor to Swing, though even here there
are some distinct differences in design goals.
At any rate, the reimplementation of data structures in one C program
after another is a better example. C doesn't include any serious
container mechanisms in the standard language, and the availablilty
of free, open-source implementations hasn't dissuaded C programmers
from reinventing them time and again.
> > That doesn't explain the popularity of, say, C++.
>
> C++ is attractive to C programmers because they can continue writing in
> C and using C libraries and existing code and just bolt-on the ++ bits
> if there is an advantage.
No doubt some do, but many C++ developers - the good ones, IMO -
treat it as it should be treated, that is as a language that is quite
different from C, with its own capabilities and idioms.
At any rate, my comment above was a response specifically to your
claim that "they seem to prefer loosely typed dynamic OO scripting
languages", which would clearly not include C++.
My point throughout this discussion is that I don't believe there's a
single simple explanation, or even a small set of not overly complex
explanations, for programming language preference. I don't think
"rich libraries" is it. I don't think "dynamic OO scripting
languages" is it. I suspect that for any single reasonable criterion
we can find a counterexample.
> > Some do, for some tasks. But again I've seen countless lines of C++
> > struggling to perform what could be done with far less effort - and
> > far fewer bugs - in OCaml.
>
> I don't think that OCaml is in any way unique in that respect.
Nor do I, though I do think it's in the minority. But it was only
an example.
> Perl is
> renowned for its extreme conciseness, to the point of being cryptic,
> Ruby, PHP, ECMAscript (Javascript), Python, can all do stuff in a
> handfull of lines that may be pages of C++, Java or Cobol. With Python
> it will still be readable.
Of those, only Ruby and Python even approach OCaml's expressiveness.
And I wouldn't equate concision with reduced effort (which is the
metric I cited), nor with reduced error. APL is often very concise,
but rarely easy; command-shell scripts are often short and often
badly broken.
--
Michael Wojcik michael.wojcik@xxxxxxxxxxxxxx
Painful lark, labouring to rise!
The solemn mallet says:
In the grave's slot
he lies. We rot. -- Basil Bunting
.
- Follow-Ups:
- Re: GoTo in Java
- From: Richard
- Re: GoTo in Java
- References:
- GoTo in Java
- From: Howard Brazee
- Re: GoTo in Java
- From: Richard
- GoTo in Java
- Prev by Date: Re: GoTo in Java
- Next by Date: Re: GoTo in Java
- Previous by thread: Re: GoTo in Java
- Next by thread: Re: GoTo in Java
- Index(es):
Relevant Pages
|