|
I enjoyed Fortran, much more than I ever enjoyed any other language. C is a somewhat distant second, third place would probably be a tossup between awk and Excel VBA. The rest were just tools, use them where they made sense, or where they were imposed by the corporate overlords (that includes Cobol, PL/I, several flavors of assembler, RPG, SQL, and more proprietary languages than I care to think about).
|
|
|
|
|
In summer of 2000, I printed the C# language spec on the day of the first public CTP release, went to a coffee shop and read all of it. I then got giddy as a guy stuck between VN6 and Java and knew salvation had come.
|
|
|
|
|
I was very fond of Delphi but was very pleased when C# first appeared that it looked like Java but smelled like C#. I still go to Delphi if I want a simple Win32 GUI program.
|
|
|
|
|
The company I worked for pre-covid induced trip to Pub, had a whole load of applications in Delphi, they had to update so went on a quest to find an upto date compiler, last I saw was 2006 there appears to be more upto version... any clues where and how?
|
|
|
|
|
Embarcadero owns Delphi now and are doing regular releases. They are on version 10.3 now, I think, which is about 28 versions after Delphi 7.
Bond
Keep all things as simple as possible, but no simpler. -said someone, somewhere
|
|
|
|
|
The latest version is Delphi 10.5 (I am still on 10.3). Check Embarcadero's website. Community (free) edition is downloadable.
|
|
|
|
|
GW-BASIC, and then QBasic, for me, were the epitome of fun. I'm glad I started with them. From there I went to Pascal and Modula-2. Those were good educational tools.
"One man's wage rise is another man's price increase." - Harold Wilson
"Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons
"You can easily judge the character of a man by how he treats those who can do nothing for him." - James D. Miles
|
|
|
|
|
FORTRAN was fun - at least compared to COBOL which was pretty much the only other "mainstream" language which stood a chance of running on different machines! If you didn't like the operating system, you could change it using COMMON to declare a single integer and then use it as a five dimensional block of characters ... Who needed pointers to overwrite memory you didn't own?
Then Algol ... The poor mans Pascal. No fun at all. Pascal wouldn't even crack a smile for Niklaus Wirth!
Then came assembler ... and total control over the machine. Loved it.
Learned C, used that along with assembler (The compilers produced terrible code, and processor speed and memory were both limited)
Played with C++, but even at the beginning, it was trying to be the overcomplicated lump it is now.
Ack! Poo! VB for my sins, which mush have been significant ...
Then C# ... And I still smile when I see it - and damn good language, though it's starting to get messed with by both the C++ mob and the VB fanboise, sadly.
Basically, similar rods; same destination.
"I have no idea what I did, but I'm taking full credit for it." - ThisOldTony
"Common sense is so rare these days, it should be classified as a super power" - Random T-shirt
AntiTwitter: @DalekDave is now a follower!
|
|
|
|
|
re C# - my concerns exactly. Poor language is about to be C++/VB-ified....
|
|
|
|
|
Marc Clifton wrote: as I love C#.
and for me, that is all that matters...for now.
|
|
|
|
|
Marc Clifton wrote: nowadays, frameworks and languages are opting for fun.
Is that why there's so many frameworks to choose from? Because "fun" is subjective, and everybody has his own interpretation?
|
|
|
|
|
I suppose that a language which enforces discipline would be more fun because of it.
Or maybe the discipline:fun graph is a bell curve?
Languages which enforce too little or too much discipline provide less enjoyment, while there's a sweet-spot with "just" enough discipline to maximize the fun?
|
|
|
|
|
Well here is a less formal path to c#
Excel 1 - VBA macros converting lotus 123 macros, fun bah it fed my family for a number of years
SuperBase - complete PC database on a 3.5 floppy - fantastic fun as it was a flavour of basic
Access - MS bought the wrong database, SuperBase was way more fun.
Delphi - What a blast, loved it till someone pointed out I was pissing memory away everywhere.
One of the 4GLs - forgot which one but support was pathetic so I moved on.
VB - all flavours, fun, dammed right, churning out solutions for corporate was hugely interesting.
SQL - Going from Access to SQL Server was like stepping out into the sunlight.
VB.Net - natural progression and still enjoyable.
c# - finally made it to a decent platform with oodles of support.
Managed to dodge HTML5, loathed Javascript, Python scared the crap out of me with all those add ins that everyone uses.
Now I am making a Coffee/Venue rater in Xamarin and it is not fun.
Never underestimate the power of human stupidity -
RAH
I'm old. I know stuff - JSOP
|
|
|
|
|
Marc Clifton wrote: My journey through programming was like this: I wonder if my memory will hold up as well as yours!
- 1971 - FORTRAN - OK (had access to the Board of Education's IBM during the summer after 9th grade)
- 1975 - BASIC - boring (1st year university)
- 1976 - Pascal - good (2nd year)
- 1976 - PDP-10 assembler - tedious but still remembered very fondly (2nd year)
- 1977 - Simula - innovative (3rd year)
- 1978 - LISP - bizarre yet interesting (4th year)
- 1981 - Protel - advanced for its time (proprietary for large, embedded systems)
- 1986 - Modula - better Pascal (on the Amiga)
- 1996 - Protel-2 - excellent (OO extensions to Protel)
- 2002 - C++ - powerful and daunting (at a start-up and ever since)
modified 13-Oct-20 20:14pm.
|
|
|
|
|
My favorite language has always been the language I'm working in at the moment. Over time it's been:
Tiny BASIC: 26 variables, 16-bit signed integers named A-Z
TI-59 programmable calculator
FORTRAN, many flavors
8080/8085 assembly language
PL/I
Ada: Very disciplined
[Turbo] Pascal: awesome environment
LISP
C
80386 32-bit flat memory model assembly language; OS/2 device drivers, anyone?
C++
C# (my current favorite, with C++ a very close second)
Software Zen: delete this;
|
|
|
|
|
C - fun if you like memory leaks and overwriting memory you don't own
C++ - fun if you like the problems with C and the discipline of classes and templates
C# - a good balance between fun and discipline
I write a bit of software in C++, and things have really changed over the last years. Tooling, like AddressSanitizer, is a real game changer, so is using std::unique_ptr<> and std::shared_ptr<> . It is now rare that I experience the problems you describe for C while developing software in C++.
As for the fun: std::enable_if<> was/is an eyesore that most people struggled to get right, and I am happy that now that we have C++ 20 concepts the fun is back in the language. I also happen to write a bit of software in C#, and yes there is much that is good, but, honestly, I have more fun doing things in C++.
Espen Harlinn
Chief Architect - Powel AS
Projects promoting programming in "natural language" are intrinsically doomed to fail. Edsger W.Dijkstra
|
|
|
|
|
As someone else said, the fun language is the one I'm using at the moment.
In order of learning, my most fun languages are:
BASIC
6502 assembly
EDIT: Z80 assembly
Turbo Pascal, MS Pascal
Fortran
8088 assembly
C
6809 assembly
80286 assembly
C++
80386+ (flat mode) assembly
C#
Java
I include different generations of the 80x86 family because each of them has different challenges for writing optimized code.
Freedom is the freedom to say that two plus two make four. If that is granted, all else follows.
-- 6079 Smith W.
modified 14-Oct-20 4:11am.
|
|
|
|
|
BASIC - fun with a ugly programming language
Z80 Assembly - definitely fun
C - fun and discipline
Pascal - not that fun
Forth - fun and desolation
C++ - fun and discipline
Java - (no comment)
Lua - fun, fun and discipline, fun again
Python - fun, less interesting than Lua
PIC16 assembly - discipline, than, possibly, fun
PIC24 assembly - fun and discipline
PIC32 (MIPS) assembly - fun and discipline
8051 assembly - the poor man fun
Haskell - fun, but...
C# - interesting, less fun than C++
"In testa che avete, Signor di Ceprano?"
-- Rigoletto
|
|
|
|
|
I have always had fun with all the languages I have worked with.
Fortran IV On an IBM 360. Back in 1971
COBOL
PL/I
Assembler
C
Basic in numerous flavours from GW-BASIC, QBasic, Basic for the Oric, VB all up to 6 VB.Net and some I have forgotten. The first version I ever saw was in the 70s on an HP Computer that had a one line/80 character display. Actually wrote a small word processor on that.
Clipper with DBase I loved until Nantucket stepped aside
SQL is the one I cannot live without
PHP is fun but I have never used it professionally.
I have just started using C# and it looks good.
|
|
|
|
|
Depending on the defintion of "fun" and "disciplined", a language can be both. C, for example, demands heaps and heaps of discipline from the programmer while providing hardly any discipline by itself (undefined behaviour is a´n ugly can of worms as are forward declarations at a time where my smartwatch has more RAM, than a supercomputer in the 70s).
Then there's the difference between discipline for the sake of discipline, or discipline because it makes sense. "Do stuff this way because that's the way stuff is done" vs. "do stuff that way because that way ensures some basic code quality/debuggability".
The latter kind of discipline strongly correlates with fun, in my mind anyway.
I strongly agree on C#, it's IMHO a good example of fun discipline. Some parts still don't make sense (when I HAVE to use a goto to fall through a case, why not throw break out of the window entirely and have cases NOT FALL THROUGH at all?) but it's mostly a well-structured language. As is C++, by the way. Assuming you stick to the more modern parts of it. C++12 is somewhat fun. C++17 is sometimes cleaner, than non-preview C# as of now. Now if there were C++-compilers throwing errors or at least warnings on decades-old idioms, that would be nice. Python, for me anyway, lost it's fun appeal quickly when working with larger code bases. The total lack of structure (where's the entry point?) is fun for small projects, but becomes a chore of discipline for anything large.
-- modified 14-Oct-20 3:23am.
|
|
|
|
|
|
Doing a project in C++ in the meanwhile, clang-tidy can optionally be used from Visual Studio. I use it in release builds as it increased the build time by about an order of magnitude from compiling without it (and precompiled headers) and it helped me in a couple places already. Thank you!
|
|
|
|
|
ZX Spectrum BASIC
6502 Assembly
Pascal
SQL
COBOL
VBA(is it a programming language?)
Visual Basic
C#(still my favourite)
SAS(Statistical Analysis System)
TypeScript(Javascript done properly)
Python
Kotlin
“That which can be asserted without evidence, can be dismissed without evidence.”
― Christopher Hitchens
modified 14-Oct-20 4:35am.
|
|
|
|
|
Fortran, ALGOL-60, ALGOL-68: no fun at all.
Simula-67: I wouldn't say fun, but very mysterious and inspiring.
Basic was fun in the 80s, as was Z80 machine code (not Assembler).
Pascal (Delphi), Python, and Java: Never liked them because they give you points if you sit straight and are well-behaved. They get it wrong. No fun at all.
Cobol: Fun if you read source code written by a physics professor. So mostly for other people to write.
PL/1: Fun. You could have a string with a negative length and append it to another string.
C, PHP, Javascript: not fun, but a lot of freedom, so OK after all.
C++, C#: They do not fit in my brain case, leaving no room for fun. C# tries to become better at pattern matching. Points for that.
Bracmat: my workhorse, still much fun.
The winner is Snobol 4. So unorthodox. But that was back in the 80s.
|
|
|
|
|
Never heard of Bracmat, so I looked it up and found this example on GitHub:
& ( !table:? (!country.?len) ?
& :?N
& ( @( !arg
: ?
( %@?c ?
& ( !c:#
| !c:~<A:~>Z
& asc$!c+-1*asc$A+10:?c
& 1+!len:?len
| !c:" "&:?c
|
)
& !N !c:?N
& ~
|
|
|
|
|