POV-Ray : Newsgroups : povray.off-topic : Lots of statistics : Re: C# Server Time
29 Jul 2024 06:16:16 EDT (-0400)
  Re: C#  
From: Darren New
Date: 1 Sep 2012 14:11:48
Message: <50424fe4$1@news.povray.org>
On 9/1/2012 0:51, Orchid Win7 v1 wrote:
> My point is, for whatever reason, C-like languages became mainstream.

Right. And you should be asking yourself, given that the competition was C, 
COBOL, Fortran, Assembler, and Lisp, why it is that Lisp is the only 
language that never really persisted.

> In short, if you design a language which is /not/ C-like, it's going to be
> quite difficult for it to be popular. Regardless of how good the actual
> language design it, all of the factors above work against you.

Unless it's so orthogonal in capabilities to what C offers, yes.

> Now, it depends just /how/ different your new language is. I'm not really
> sure why Lisp never took off; I'm going to go with "historical accident".

There are other arguments. For example, LISP is so powerful that nobody ever 
really needed to build up a standard library like you see in Java and C#, 
and therefore everybody wound up reinventing events, OOP, complex data 
structures, etc etc etc.  Kind of like the same reason nobody programs to 
raw X-Windows, even though it's much more flexible than using widget sets.

> imperative and structured programming, OO is reasonably easy to assimilate.

I'd say more because it's an excellent fit for some kinds of very popular 
problems, while putting little in the way of those who need a different 
paradigm.

> Of course, there are factors other than language design in play. Java is a
> very mainstream language. Eiffel is an OO language like Java, but with a
> vastly superior design. In my limited experience, nobody has even /heard/ of
> Eiffel. Maybe it's because there isn't a huge multi-billion dollar
> corporation behind it. Maybe it's because there are really only two extant
> Eiffel compilers, one of which is commercial and extremely expensive. I
> don't know.

The lack of libraries is a killer too. You can no longer create a language 
that expects to be in its own little world without even a GUI language and 
expect it to fly.

> I still do not agree that a language must be badly designed to be popular.
> Rather, it seems to me that all the languages that turned out to be popular
> are so for reasons other than just language design.

Exactly. Yet if you create a brand new language that's not tremendously 
*more* productive in your chosen niche(*), then you've tossed away all the 
libraries, including conceptual library designs(+), that everyone else has 
already proven works.

(*) See, for example, Erlang, which succeeded because it's tremendously more 
productive in its niche (high-reliability computing) than its competitors. 
Or SQL.

(+) Conceptual library designs like threads, networking, data structures, 
GUI design, etc. You have to reimplement them for every language, but if you 
see a Thread class with a run() method and a wait() method and a notify() 
method, you pretty much don't have to read the documentation to know how to 
use threads.

-- 
Darren New, San Diego CA, USA (PST)
   "Oh no! We're out of code juice!"
   "Don't panic. There's beans and filters
    in the cabinet."


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.