|
The first (real) language I learned was Pascal and I still respect the walrus operator. It just always seemed more imperative than plain '='.
cheers
Chris Maunder
|
|
|
|
|
I used Delphi at my previous job, 2001-2012. The team lead had written a lot of projects in Turbo Pascal. They converted nicely to Delphi. Unfortunatly the bad habbits that were needed in DOS came along free for the ride.
The biggest was string handling. Trying to move from Delphi 7/Delphi 2006 to Delphi XE was a killer because the default definition of 'string' being an AnsiString changed to a UnicodeString breaking a lot of our libraries as they treated the strings as arrays.
They other issue was that the code was written as giant loop that ran in the idle time of Windows. This had the side effect of showing our application using 100% of the CPU time.
I do miss the Borland days though.
|
|
|
|
|
BASIC, in all the flavors I've used since I started this craft: MS-BASIC, GW-BASIC, QuickBasic, PowerBasic, VB 1 for DOS, VB4, VB6, VB.NET.
I learned and achieved a lot using it, and have no regrets or embarrassment.
My favorite language is the first one I learned, though I've rarely used it: Assembly
There are no solutions, only trade-offs. - Thomas Sowell
A day can really slip by when you're deliberately avoiding what you're supposed to do. - Calvin (Bill Watterson, Calvin & Hobbes)
|
|
|
|
|
Languages (both natural and computer) are tools. Would you ask a carpenter whether he/she/it is ashamed of using a hammer?
There are languages that are better (or worse) for a particular purpose, and there are languages whose syntax causes me to shudder (e.g. Python's significant indentation), but there is no language that I would feel ashamed to know.
Freedom is the freedom to say that two plus two make four. If that is granted, all else follows.
-- 6079 Smith W.
|
|
|
|
|
Some mechanics look down their nose at impact wrenches. Just sayin'
Check out my IoT graphics library here:
https://honeythecodewitch.com/gfx
And my IoT UI/User Experience library here:
https://honeythecodewitch.com/uix
|
|
|
|
|
honey the codewitch wrote: Some mechanics look down their nose at impact wrenches. Just sayin'
As the son of a mechanic, I'd say, none of these people has ever tried to make a living as a mechanic. Or they're paid by the hour.
|
|
|
|
|
Or really big forearm muscles? Really big.
|
|
|
|
|
I'd say they're paid by the hour.
But I mean, you could extend the analogy to something like C versus VB6 I think.
Check out my IoT graphics library here:
https://honeythecodewitch.com/gfx
And my IoT UI/User Experience library here:
https://honeythecodewitch.com/uix
|
|
|
|
|
Sure.
I was probably being way too literal.
|
|
|
|
|
Youl'd never undo the machine assembled bits without an impact
In a closed society where everybody's guilty, the only crime is getting caught. In a world of thieves, the only final sin is stupidity. - Hunter S Thompson - RIP
|
|
|
|
|
There's nothing you can't undo with enough heat and a long enough lever.
Check out my IoT graphics library here:
https://honeythecodewitch.com/gfx
And my IoT UI/User Experience library here:
https://honeythecodewitch.com/uix
|
|
|
|
|
True
In a closed society where everybody's guilty, the only crime is getting caught. In a world of thieves, the only final sin is stupidity. - Hunter S Thompson - RIP
|
|
|
|
|
... because most still don't torque wheel nuts right (the mechanic or the tool?). You need a breaker bar to loosen them.
"Before entering on an understanding, I have meditated for a long time, and have foreseen what might happen. It is not genius which reveals to me suddenly, secretly, what I have to say or to do in a circumstance unexpected by other people; it is reflection, it is meditation." - Napoleon I
|
|
|
|
|
FoxPro... starting from v2.0 for DOS all the way through v2.6 for Windows.
|
|
|
|
|
I worked on the worlds largest and longest running ( to date ) liquidation for 21 years, all the claim handling and payment systems where written in Foxpro for DOS. It performed brilliantly and never let us down.
In a closed society where everybody's guilty, the only crime is getting caught. In a world of thieves, the only final sin is stupidity. - Hunter S Thompson - RIP
|
|
|
|
|
gwbasic, as it is better than python
Bastard Programmer from Hell
"If you just follow the bacon Eddy, wherever it leads you, then you won't have to think about politics." -- Some Bell.
|
|
|
|
|
Gee Wiz basic
In a closed society where everybody's guilty, the only crime is getting caught. In a world of thieves, the only final sin is stupidity. - Hunter S Thompson - RIP
|
|
|
|
|
Better than Phyton, innit?
Bastard Programmer from Hell
"If you just follow the bacon Eddy, wherever it leads you, then you won't have to think about politics." -- Some Bell.
|
|
|
|
|
honey the codewitch wrote: Do you secretly love Perl?
Certainly not ashamed about it.
But I don't expect anyone else in the group to use it or even understand it. If I must create a tool for others to use then I extensively document the usage.
And I comment the code extensively too. Not just why the code is doing something but explaining what the code actually does (the sort of comments that should not normally appear in code.)
|
|
|
|
|
jschell wrote: (the sort of comments that should not normally appear in code.)
Hey, if it doesn't bother you that it's necessary to do that with Perl, far be it from me to judge.
Every time I even read Perl I feel like I need a shower.
Check out my IoT graphics library here:
https://honeythecodewitch.com/gfx
And my IoT UI/User Experience library here:
https://honeythecodewitch.com/uix
|
|
|
|
|
I recently wrote a script to reset and fix the display layout when I switch between laptops using a KVM switch and multiple USB hubs. I wrote one version in Perl and one in PowerShell. I like the Perl one better.
I'm definitely not ashamed to say I still like and use Perl.
@x=qx{pnputil /enum-devices /problem};
for(@x)
{
if(/Instance ID:\s+(.+)/)
{
system qq{pnputil /disable-device \"$1\"};
system qq{pnputil /enable-device \"$1\"}
}
}
pnputil /enum-devices /problem|select-string "Instance ID"|Foreach-object {$_ -match "Instance ID:\s+(?<root>.*)";$x = $matches['root'];Invoke-Expression -Command "pnputil /disable-device ""$x""";}
modified 3-Nov-23 20:25pm.
|
|
|
|
|
honey the codewitch wrote: if it doesn't bother you that it's necessary to do that with Perl
I know C#, Java, C++/C. And have delved into many others like assembler, Pascal, Fortran, Basic. I have looked at even more than that.
When I choose Perl it is because it is going to be better for the job. I could do it in some of the others but it would take longer. Especially when I present it as a solution that others will need to use I consider the tradeoffs very carefully.
|
|
|
|
|
As long as I'm a user of a language, which pays my salary, and not the creator/designer of that language, there's nothing to be ashamed of. Each language has its own beauty and ugliness, and everything in this world is like that, isn't it?
|
|
|
|
|
I was able to achieve "flow" with COBOL, so no.
PERFORM VARYING ... FROM ... BY ... UNTIL ...
versus
for (int i = 0; i ..) or
while ( ... )
"Before entering on an understanding, I have meditated for a long time, and have foreseen what might happen. It is not genius which reveals to me suddenly, secretly, what I have to say or to do in a circumstance unexpected by other people; it is reflection, it is meditation." - Napoleon I
|
|
|
|
|
It's ancient and dated, but I still have a fondness for hpl, Hewlett Packard's custom language for their early desktop computers. There was a lot that it couldn't do, but there were a couple of things it could do that made it perfect for its intended application. Back in the day, when we had RAM measured in kbits, programs had to be very short. In hpl we had the command chain that would save the program state and start a new program where the first left off. This essentially allowed programs to be written that were far larger than the machine could accommodate, up to the limit of the disk space available.
A second feature made my in-house reputation as an engineer soar; the keyboard key, store was storable, and could be executed at runtime. Since I was developing automated missile test software and hardware meant to be used in a noisy factory environment, ambient electrical noise was a constant problem. I wrote a code block that I used in almost all applications that would measure the local noise, run an FFT on the samples, create a custom filter subroutine to remove that noise, then add the resulting filter program to the actual test program as a pre-processor on the measured data. The accuracy of testing was vastly improved.
Sadly, hpl met with an untimely death, like all good things, it seems. Unlike every other popular language at the time, its instruction set was entirely lower case, which mainline programmers couldn't accept. If it wasn't written in capital letters, it couldn't possibly be any good. By the time HP introduced the HP9845 desktop computer, hpl became optional, and HPBasic replaced it as standard. Things kinda went downhill after that...
Will Rogers never met me.
|
|
|
|