Jump to content

What programming languages have you used?


bascule

What programming languages have you used?  

1 member has voted

  1. 1. What programming languages have you used?



Recommended Posts

The more languages you've used, particularly from different areas, the better programmer you'll be! The Pragmatic Programmers recommend learning a new language every year. I'm presently learning a language called Scala.

 

What languages have you used?

Link to comment
Share on other sites

This goes back 38 years and is not complete. In time order, more or less.

Basic, PL/I, JCL and DOS (360, 370, CP/CMS), Assembler (many flavors, all forgotten), FORTRAN (IV, 66, 77), APL, HP RTE OS (Worst OS Ever), Ultrix, VAX/VMS, Lisp (InterLisp and ZetaLisp; I had Symbolics Machine #2!), an AI language I can't remember, Pascal, CLIPS, ART, Prolog, C, shell (sh, csh, bash, ksh, tcsh), awk, sed, perl, Java, Trick, C++, and Python. Plus a whole lot of tools and software packages.

Edited by D H
Forgot some.
Link to comment
Share on other sites

The only thing on the list I have used are forms of BASIC. The one thing I do use quite often is Mathematica, though I am not sure if one would call that a language.

Link to comment
Share on other sites

C++'s slogan: Hard to learn and built to stay that way.

 

...from an introductory book to Python, which has become in less than a week my favorite language. I also know "math" languages; Octave/MatLab, Maple, a little bit of Mathematica and SAGE (which is, basically, Python for maths).

Link to comment
Share on other sites

Read the first response.

 

Mea culpa

 

C++'s slogan: Hard to learn and built to stay that way.

 

You know, it's funny, I was just realizing how much better C++ would be if it had a garbage collector (even if it were just there so exceptions are sane) and got rid of the C legacy, then realized I was describing Java, which isn't exactly my language du jour (although it appears to be the most popular language around these parts)

Link to comment
Share on other sites

C++ has so many quirks. Just to name three: Multiple inheritance, polymorphism, and the C++ I/O model.

  • The C++ multiple inheritance model is so fraught with pitfalls that many C++ projects have a very simple rule to avoid them: No multiple inheritance.
  • Why in the world do I have to make a destructor virtual in order to make a class polymorphic? This is not a big problem if you get in the habit of always making destructors virtual, but why? In most other languages, classes are polymorphic, period.
  • I don't know anyone, not even the most diehard C++ fanatic, who thinks overloading the bit shift operators to form the C++ iostream operators is a good idea. Instead, it is often used as the prototypical example of when not to do operator overloading.

Link to comment
Share on other sites

Why in the world do I have to make a destructor virtual in order to make a class polymorphic? This is not a big problem if you get in the habit of always making destructors virtual, but why? In most other languages, classes are polymorphic, period.

Non-polymorphic is faster and takes up less memory?

I don't know anyone, not even the most diehard C++ fanatic, who thinks overloading the bit shift operators to form the C++ iostream operators is a good idea. Instead, it is often used as the prototypical example of when not to do operator overloading.

I don't think it is a good idea in the sense that I think it's the best way (though I prefer it over using "+" and over not being able to paste different objects into an output in one command at all). But I don't really see a problem with it, either.

Link to comment
Share on other sites

Non-polymorphic is faster and takes up less memory?

Water under the bridge, but Stroustrup could have used 'struct' to indicate a non-polymorphic object. As it stands, class and struct are near-synonyms. They differ only in that class has an implicit private after the open brace and struct an implicit public.

Link to comment
Share on other sites

I don't know anyone, not even the most diehard C++ fanatic, who thinks overloading the bit shift operators to form the C++ iostream operators is a good idea. Instead, it is often used as the prototypical example of when not to do operator overloading.

 

Languages where you don't do a lot of bit twiddling have found novel new uses for the operators.

 

Ruby uses it for cases where you're adding one object to another but modifying the receiver, e.g.:

 

String concatenation:

>> foo = "foo"; foo << "bar"; foo

=> "foobar"

 

Adding an element to an array:

>> foo = [1,2,3]; foo << 4; foo

=> [1,2,3,4]

 

That said, the way it's used by iostreams is far less straightforward and substantially uglier. Although if you want, Ruby will allow you to print things in a quasi-iostreams style with:

 

STDOUT << "Hello," << "world\n"

 

I can't say I know anyone who'd ever consider writing Ruby like that though.

Link to comment
Share on other sites

Everyone writes a "Hello, World" program as a test of a language. I once took a CS class where we had to write a program to compare languages. It was not "Hello, World". We had to implement a rather nasty math algorithm in four languages that we got to choose, with constraints. One language had to be a functional language. Two choices were fixed -- Fortran (Fortran before recursion) and assembly. The nasty math function: Ackermann's function. Ouch.

Link to comment
Share on other sites

BASIC (6 dielects), Assembly language (Z80, 6502, 680x0), direct machine code (Z80, 6502, 680x0), (Psion)OPL, Forth.

 

 

Machine Code!! Wow! My mate has programed directly machine code. He is a developer and game writes for consols. He used to write a column for one of the games mags in the 80's... 'Crash' I think.

 

 

 

I've only ever the done the most basic things in BASIC. (Q-BASIC, VISUAL and perhaps another form). And even then I've had to get help..

Link to comment
Share on other sites

lolcode RAWKS!!!

 

Other than the ones I ticked :P

 

I've also done some machine code... it was part of one of our practical electronics modules lol! Build some ram program some assembly...

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.