|
How about a shout out for the old fashioned, always hated, sometimes loved, Job Control Language! I used to have to write FORTRAN 77 mainframe programs (System 370) to create JCL used for the input/output data sets. Those were the days. I also smoked cigarettes then. I've proudly given up both habits over a decade ago.
|
|
|
|
|
FORTRAN 77? Luxury!!!! I used to have to write FORTRAN IV programs
|
|
|
|
|
If Java / Javascript are so popular, why is C# listed here as the most favored? Is this because of the community here at CP, or indicative of some disconnect between what we'd like to program in vs. what we must program (for example, web apps) ?
Marc
|
|
|
|
|
I take it as an indication that there are a lot of web programmers here. I suspect that C++ and Java would score higher with a larger pool of application developers. I'm just guessing though.
Of course, things like JavaScript and Objective-C get used a lot as necessary evils, commonly used but not necessarily well-loved.
|
|
|
|
|
StatementTerminator wrote: Of course, things like JavaScript and Objective-C get used a lot as necessary evils, commonly used but not necessarily well-loved.
Testify brother
"If you don't fail at least 90 percent of the time, you're not aiming high enough."
Alan Kay.
|
|
|
|
|
with Atari BASIC a close 2nd!
|
|
|
|
|
HA HA - good memories. That was my first BASIC language.
|
|
|
|
|
I am really surprised seeing so many votes for BASIC and seeing such response from the community makes me think again that Old is Gold
|
|
|
|
|
F# is at the bottom of the list at the moment, probably because it is not very widely used - but for anyone who has a chance to use it I cannot recommend it enough, you can work on a complex problem in F# all day and at the end of it have expressed the solution with such elegance and so little clutter that it feels quite artistic.
|
|
|
|
|
Are you using F# as a purely functional language or also as OOP?
I'm currently following a course in Haskell, a purely functional language, and I must say that some problems are pretty neatly solved using the functional paradigm
For example the quicksort can be written in only 5 lines of readable code (taken from the Haskell introduction[^]).
quicksort [] = []
quicksort (p:xs) = (quicksort lesser) ++ [p] ++ (quicksort greater)
where
lesser = filter (< p) xs
greater = filter (>= p) xs I assume that's sort of how it looks in F# too.
It's MUCH more clear and readable than the C implementation (also on the Haskell Introduction[^]).
I'm not sure how I'll write enterprise apps in Haskell though...
It's an OO world.
public class SanderRossel : Lazy<Person>
{
public void DoWork()
{
throw new NotSupportedException();
}
}
|
|
|
|
|
Sander Rossel wrote: For example the quicksort can be written in only 5 lines of readable code
Sure, and how about a real-life quicksort - the in-place one
|
|
|
|
|
Dave Kerr wrote: you can work on a complex problem in F# all day and at the end of it have expressed the solution with such elegance and so little clutter that it feels quite artistic.
Agreed, but that's sort of the problem I find with FP in general -- I have to spend all day figuring out how to express the solution!
One of the biggest difficulties, and the reason I don't use F# as my primary language, is the issue of state. How have you solved the problem of managing state, or do you resort to using stateful / mutable objects? I understand how to pass state with monads (or continuations) but in broader terms, I still struggle with statefulness vs. pure immutable FP.
Marc
|
|
|
|
|
In all the C's, what about D? (http://dlang.org/[^])
2 bugs found.
> recompile ...
65534 bugs found.
|
|
|
|
|
Nothing like running close to the bare metal.
|
|
|
|
|
Because it's the language I wrote for myself
modified 13-Aug-14 4:40am.
|
|
|
|
|
Smalltalk introduced OOP.
Self made it efficient.
Both are LISP-like in their radical simplicity.
(In many respects, I regard most later "OOP" languages as compromised - too much influence from Simula/C++).
"If you don't fail at least 90 percent of the time, you're not aiming high enough."
Alan Kay.
|
|
|
|
|
An option for C#++ is missing.
Note: C#++ == C# && C++
|
|
|
|
|
Yeah, me too. C#++ is the best of all.
I chose C++ because... "C#, I am your FATHER!!!"
|
|
|
|
|
Ahh, but...the son can be greater than the parent.
Consider: Chuck Norris had a father (Ray Norris, who was a mechanic, bus driver, and truck driver)
You looking for sympathy?
You'll find it in the dictionary, between sympathomimetic and sympatric
(Page 1788, if it helps)
|
|
|
|
|
Surely it's important enough that we don't forget it ever even existed
|
|
|
|
|
You bet. That is almost all I've used since Turbo Pascal 1.0. Now I use Delphi Prism which is really RemObject's Oxygene for .net.
I REALLY like Oxygene. I can't see myself going back to Delphi unless I have to and I REALLY liked Delphi.
|
|
|
|
|
I might just go and have a look at Oxygene...
|
|
|
|
|
I was a little worried about learning Oxygene and moving away from Delphi, but I'm really glad I did. There are so many things that are a snap to do with xaml and some classes that were a royal pain to do in Delphi. Things like making a dbgrid cell have some combinations of controls or pictures. Trivial in Oxygene Silverlight or WPF app.
I do recommend learning it. The price is small and it works pretty well on multiple platforms (platform specific, not platform agnostic).
|
|
|
|
|
|
I was actually expecting the result to be in the low single-digits; I am actually surprised by the love I saw!
I grew up on BASIC - I cut my coding teeth using a TRS-80 Color Computer 2 with 16 K of RAM and cassette tape drive, running Microsoft's Extended Color BASIC.
Now, for a new problem - one I defined? I wouldn't select just any BASIC!
Today, I would use QB64 (http://www.qb64.net/) - cross-platform across the "big-3" (Windows, Mac, Linux) - compiles to native, and 64 bit. Supports everything on modern operating systems, including OpenGL! Best of all, the vast majority of QBasic and QuickBasic software will compile without changes needed. For those that do need changes, those changes will be relatively few. Those that will have major difficulty running will be those that used assembler routines or other direct hardware access, but if you understand what is being done by those routines, chances are they can be ported to use more standard methods.
The biggest downside, though, to QB64 - is the lack of object orientation. You can fake it a bit, but its fairly hacky - reminiscent of doing OOP in standard C (maybe worse).
I'll always have a place in my heart for BASIC. I'm glad to see others do, too!
|
|
|
|