Allegro.cc - Online Community

Allegro.cc Forums » Off-Topic Ordeals » The genealogy of computer languages

This thread is locked; no one can reply to it. rss feed Print
 1   2 
The genealogy of computer languages
ReyBrujo
Moderator
January 2001
avatar

kazzmir said:

There was another one of these I saw a while back but it had fancy colors. Anyone know what Im talking about?

Yes, it was a PDF. I have it at work :/

--
RB
光子「あたしただ…奪う側に回ろうと思っただけよ」
Mitsuko's last words, Battle Royale

Soga
Member #4,589
May 2004

From what I've heard, many schools switched from C++ in programming classes to Java. Can you believe that?

Java. Wanna-be C/C++. I've been working with it recently, and have found nothing even remotely useful about the language, except that it can be incorporated into a website, but isn't that what Flash is for?

I mean, Java takes pretty much everything C++ has, except it's more error-prone. Not to mention... it's mostly event-driven. I find event-driven programming to be quite weak. It doesn't necessarily give you the same amount of control you have with frame-by-frame object oriented programming, which Allegro utilizes.

Compatibile with all platforms? That's because it requires you to download a runtime package. For those as lazy as I am, it's a great hassle just to download and install the runtime package. From what I heard, merely compiling a program on a certain platform will mark it compatible with the said platform. I think that's much less of a hassle on the user.

It's just silly. Whoever thought it would be a great idea to switch from C++ to Java should be slapped in the face. Multiple times. :-/

Gideon Weems
Member #3,925
October 2003

Soga, you might want to slap the AP Computer Science committee. From my understanding, they decided a few years back that any C/C++ programming classes in high school will not be rewarded with college credit. They only acknowledge Java. Or, perhaps that was only the AB version...

Anyway, they both have their points.

ReyBrujo
Moderator
January 2001
avatar

Hmm... Java has a much stronger object philosophy than C++, though less than Smalltalk. Installing it is just downloading a 15mb file and executing it.

The Java environment lets students forget about pointers, memory allocation and deallocation and all that stuff that is not strictly OOP, to focus only in the theory.

--
RB
光子「あたしただ…奪う側に回ろうと思っただけよ」
Mitsuko's last words, Battle Royale

X-G
Member #856
December 2000
avatar

Quote:

The Java environment lets students forget about pointers, memory allocation and deallocation and all that stuff that is not strictly OOP, to focus only in the theory.

... which is pretty bad. I'm not sure why they would do this; I'm confident that students are capable of understanding pointers and memory allocation just as well, and they are important things to know about. It seems to me pretty asinine to remove such a vital chunk of knowledge from a curriculum.

Also, the lack of value semantics in Java really annoys me. And then there's the lack of generics prior to 1.5 (which most still teach). And of course, it's slow.

--
Since 2008-Jun-18, democracy in Sweden is dead. | 悪霊退散!悪霊退散!怨霊、物の怪、困った時は ドーマン!セーマン!ドーマン!セーマン! 直ぐに呼びましょう陰陽師レッツゴー!

Oscar Giner
Member #2,207
April 2002
avatar

Quote:

... which is pretty bad. I'm not sure why they would do this; I'm confident that students are capable of understanding pointers and memory allocation just as well, and they are important things to know about. It seems to me pretty asinine to remove such a vital chunk of knowledge from a curriculum.

They don't remove it from the curriculum. But in a subject about OOP, losing time in pointers is useless. At least here, the main OOP subject requires to do a big project and not needing to care about them [pointers] makes possible to do more complex projects. Though we don't use Java, we use Eiffel, which has a much stronger OOP philosophy than both Java and C++, plus it incorporates design by contract built into the language, which is good for multi-team projects (as this one is). [yes, multiteam: 3 teams of 3 people each. Each team does a different but similar in some aspects project. It's mandatory to reuse classes between teams]

For pointers stuff there's already data structures and algorithms. We use C++ there.

Java is very used for database based and distributed applications.

ReyBrujo
Moderator
January 2001
avatar

Here I agree with Oscar. At school they don't teach you a language, but a concept and use the language to show you examples. In example, here they use Pascal for teaching structured programming, C for algorithms, Prolog for logic, Gofer for functional, Smalltalk for object-oriented, Java for client/server architecture, and some others I cannot remember right now.

If I put in my curriculum that I know Gofer, they might not know what that is. But I could switch to the correct form, and say I know the basics of functional programming, and put Gofer as example. That opens a wider range for the future.

--
RB
光子「あたしただ…奪う側に回ろうと思っただけよ」
Mitsuko's last words, Battle Royale

Evert
Member #794
November 2000
avatar

We did Gofer in our first year... I thought it was some fun, although I wouldn't at the time have called it programming...

Chris Katko
Member #1,881
January 2002
avatar

I followed a link from that page to the creator of C++'s page and found this amazing discovery!

Bjarne Stroustrup said:

C++ is a general purpose programming language with a bias towards systems programming that

* is a better C
* supports data abstraction
* supports object-oriented programming
* supports generic programming.

There! It's settled! C++ is better than C! ;)

That aside, that's a neat link. Thanks.

-----sig:
“Programs should be written for people to read, and only incidentally for machines to execute.” - Structure and Interpretation of Computer Programs
"Political Correctness is fascism disguised as manners" --George Carlin

 1   2 


Go to: