- Thread Starter
- #101
Yes, but Windows was the first OS with 100,000,000 users. Not excellent but standard. Apple was good but changed their platform every 5-7 years - Apple II, then 68K Mac, then PowerMac, then Intel Mac. DOS/Windows was fully compatible 25-30 years from 1983 (DOS 2.0) to end of Windows XP (2008-2010).If you used Amiga/Atari and/or Unix before Windows, you not only learned, that there was a mouse before Windows, you also missed many things for many years on Windows, other systems already had. Such as real multitasking, stable and usable functioning networking with nfs, or compare shells or Amiga's Rexx with what you have on Windows until "power-shell" ? appeared....
The Amiga 1000 had a 7 MHz 68000, we had to run Amiga transformer on it that emulated a 80286 PC at something like 300 kHz, then ran Turbo Pascal on top of that. Yeah, it was horrendously slow.Turbo Pascal 5 was notable for its extremely fast compiling times. Why you said that the whole thing ran slow ?
Yes, exactly. I'm talking school (MTS; Don't know how that translates to other school systems) in '87 to '90. The school I went to (Christiaan Huygens) was the first in the Netherlands that actually had something that would eventually become computer sciences. The courses I took there was 80% hardware and 20% software. The 'software' side was mostly based around learning to code in Pascal.We're talking 1980s.
There was no "computer science" yet at universities.
Oh, no, no, no.... Sorry, I disagree. You may have not experienced Windows before XP, then.DOS/Windows was fully compatible 25-30 years from 1983 (DOS 2.0) to end of Windows XP
I have used all versions from Windows 3.0 (before 3.1) to XP. Have good experience with Win16 and Win32 API.Oh, no, no, no.... Sorry, I disagree. You may have not experienced Windows before XP, then.
The choice which programming language to be used shall not be done by personal flavors, which suits you better, which one is currently trendy.a programming language is something like a dress that fits better on someone than on others ?
<snip>...
To understand this (Pascal), you need to see the time.
We're talking 1980s.
There was no "computer science" yet at universities.
People getting involved in computers are either urged to use that new technology, mostly natural scientists at universities or office staff of big companies (from those came most reluctance against Unix).
Or were interested in, mostly mathematicians, physicists and electronics engineers (Unix/BSD), and also technically interested students, which mostly only could afford a homecomputer (BASIC), those 1MHz, 64kB, not necessarily with mass storage but with TV connection things.
The "rest" got to computers mostly in the late 90s.
It was completely normal that anybody needed to have at least a small class in computers first before you were allowed to use them.
(At least people learned, what "save file to disk" means, instead of blindly trust the system automatically syncs with a cloud in the background ?)
Part of most of those classes also contained a bit fundamental start of programming, because this not only teaches you how a computer works but there also often was a need to write at least small programms for yourself.
There was no internet like today, where you just quickly google a free tool that does the job you need.
Most today's users simply don't get the concept of having an powerful automation monster directly in front of them and use it to automate.
They only got "powerful". ?
Book tip for the summer:
Clifford Stoll, The Cuckoo's Egg - you'll virtually dive into the Berkeley of the early 80s, get a colorimeter of computers of those days, the dawn of internet and especially Berkeley Unix.
Back to (sub)topic:
Pascal was originally never ment to be a programming language for doing real, big stuff.
(Even if modern interpreters are capable of doing a serious job.)
It was ment to lead people to programming by teaching the basic concepts of a higher procedural language (this were pre-objective times) and above all structured programming.
Those homecomputers had a very primitive BASIC in their ROMs, acting as some kind of very primitive OS.
But sadly BASIC was also promoted to be the best start to learn programming with.
That's where this GOTO-spaghetti-code crap came from.
Pascal's syntax is so cumbersome, particulary function names are so long, not to be efficient for programming, but to make the programming elements clearly visible and get closer to natural language, so total newcomers to programming would not completely freak out by seeing short, efficient, abstract syntax.
Or even Assembler, which was the only real alternative to programm something halfway usable on a homecomputer.
...<snip>
Popularity of certain programming languages changed a lot over the years. I think I posted this one before:View: https://www.youtube.com/watch?v=Og847HVwRSI
Okay. But then maybe alone or not having to exchange data with others.I have used all versions from Windows 3.0 (before 3.1) to XP. Have good experience with Win16 and Win32 API.
For most the purpose is to match your personal CV nicely with a juicy job ad. Heavily wanted are rockstar developers nowadays, so there's only one logical choice as programming language: Rockstar!The programming language shall be chosen for it's pupose.
Nearly all languages are developed for to fit better in a special purpose, because others don't.
?...Rockstar!
Popularity of certain programming languages changed a lot over the years. I think I posted this one before:View: https://www.youtube.com/watch?v=Og847HVwRSI
The choice which programming language to be used shall not be done by personal flavors, which suits you better, which one is currently trendy.
Of course you're way more efficient in programming within a language your are settled in.
But if you know a programming language - if you know programming - you fit in any language quickly.
You may get the one or the other concept first, but you don't need to start all over again.
The programming language shall be chosen for it's pupose.
Nearly all languages are developed for to fit better in a special purpose, because others don't.
So if you can chose (most can't, because it's given: the boss decided, or there is already lots of code you continue working on) the best thing would be first carfully analyse the job your program needs to do. Then look which languages there are, which one comes closest, and then chose what you feel best with.
Besides there are other arguments, like is there an editor (e.g. syntax highlighting), are the compiler safe - need it to be safe, etc. etc.
It's not easy. Still you may learn an additionaly language.
But this way you may have the chance to face fewer problems, such as you need to define some type of data that isn't yet smoothly offered by the languages you already know, can be better handled... whatever.
I often face restistance when I recommend to use Assembler for small, simple 8bit-Microcontroller projects.
They all want to do C.
Well, yes, C is closest to Assembler, and have lots of advantages.
But not seldom they run into timing problems.
And I ask:"Did you measure how many milliseconds this piece of code uses to be processed?"
Blank faces.
So I asked again:"Did you changed the compiler?"
Blank faces:"Why? C is C."
No. Not necessarily. Even not if "ANSI C" is written on the box.
But apart from that every compiler produces other machine code for the same C source.
So with critical, narrow timing requirements, you'll better check the process time for your code and test if what you burden you microcontroller additionally with.
If you're doing something with UI on a PC or embedded sys with OS, you have seldom problems then.
But if you program a control loop (e.g. power electronics) where a constant frequency is mandatory to have the system stable, and if you look only at your higher language's source, blindly trust every compiler and simply rely on the speed of the processor will handle it in any case, without measuring and testing, you may run into massive probs,
not understanding them.
Best example:
Look at your FreeBSD!
You have bash scripting, Perl, Python.... - no need to do everything in C/C++.
From all languages you know you chose one best fitting to the job.
So if you're doing programming and can chose, keep an eye open, what languages there are. With which background for what purpoese they have been devolped, and chose what fit's you'r current task best.
Not what's most trendy at the moment, where's the most gossip about.
Hardcore professionals like Hunt & Thomas "The pragmatic programnmer" advice: learn a new programming language every week.
...to me... no, I don't do that much programming![]()
Well, there are other opinions, for example:even, other than a Unix, that's what we have, I've been using Firefox for a decade. and I don't intend to stop using it. the worst of it is Google Chrome, something I've hated since the beginning.
As far as I know, it is the preferred language for supercomputing.FORTRAN has been #1 for long time. Why you do not try it?
Java has the same issue of being prone to long, headache-inducing function names. Heck, any language is prone to those.Pascal's syntax is so cumbersome, particulary function names are so long, not to be efficient for programming, but to make the programming elements clearly visible and get closer to natural language, so total newcomers to programming would not completely freak out by seeing short, efficient, abstract syntax.
Yeah, if you run into ralphbsz , the Forums will run out of disk space holding conversation transcriptsI know.
But my post(s) are already (too) long. ?
There are other, for example:I didn't kew that Looney Tunes made "political" toons in WWII.
Well, I agree that we must keep the discussion technical, but I cannot call the cartons in today's context political, and I do not see any space for political discussions there, it is just a small deviation.I'm not a mod, but I'd still like to ask to keep politics out, and keep the discussions technical.