30th Anniversary of Pascal
GrokSoup writes "UC San Diego is holding a public symposium on Friday, October 22nd, honoring the 30th anniversary of the Pascal programming language. Oh the memories of undergraduate bubble-sorts ..."
← Back to Stories (view on slashdot.org)
Pascal was more than just undergrad bubble sorts. The original Mac had all the hooks and development stuff in Pascal. If memory serves the Mac was the largest Pascal project going. Using C (Lightspeed C, circa 1986 or so) was a real bitch on the machine.
Trolling is a art,
Loved Turbo Pascal, learned it in high school, was even remaking the first zelda on it, but was pixelizing everything, so it looked way better... sorry but that's pretty uber geek in my mind.. that was a long time ago.. this is also my first post, so i wish to formally introduce myself to the /. community!
President Bush Supporter
I too recall the heady days of Pascal in undergrad. Trying to explain to my lab partner how one could have an array of arrays... But that was a long time ago and I pose the question. What language is the "teaching language" now? Do they have Pascal?
"Europeans call me by name, Americans by value."
Sheesh, evil *and* a jerk. -- Jade
program Anniversary;
begin
writeln ('Happy 30th Anniversary Pascal. You roxxorzz');
end.
An Indian-American Hindu committed to non-violent thought/speech/action alarmed by the global explosion of radical Islam
..helping to get the basics before starting to learn c. Quite nice language, although not the best, but ive seen even an operating system in freepascal ;)
It takes a man to suffer ignorance and smile
Be yourself no matter what they say
You could give Ruby a shot.
Hmmm and D&D just turned 30 too... coincidence?
Pretty widgets? What pretty widgets?
After spending a few years programming in C, I took a job programming in Pascal. I figured that it was just a matter of replacing {} with begin/end, and '=' with ':='. Boy was I wrong.
Sometimes you need a hack, and Pascal's purpose in life it to prevent those convient little hacks.
I use Pascal all day, every day. I laugh myself sick thinking how much time my C++ developer friends waste on stuff that takes days in ATL/MFC/C++ that I can do in a few seconds in Delphi. DCOM servers, GUI programming, reusable components, these are all a pain in the butt with C++. Okay, C# and Dotnet are almost as powerful as Delphi, but they have a huge runtime (like java). For my money, nothing can touch Delphi/ObjectPascal/VCL for efficiency, productivity, quality, easy deployability with NO DLL HELL and no runtime installation issues.
WP.(Franciscan)
(P.S. I never ever shipped any app with the BDE in it. That, and the Database Desktop, are the crappiest things ever to come out of Borland. They are still in the latest native Win32 version of Delphi, Delphi 7, but at least you don't ever have to use them.)
Flippin' middle-agers and their line numbers, back in the days of fortran we had whitespace-sensitive code and we were grateful for what we had!
Way, way ahead of its time. It was an IDE and the code it generated was bytecode, not native code. I love hearing all the Java weenies talk like the Java VM is somehow a "new" concept when P-code was availble for a real language in the early eighties.
I wrote a "conquer the galaxy" game in UCSD Pascal when I was 19. Such fun, dealing with overlays to fit it in the 64k of my Apple ][+. I never sold it, alas, so dreams of become a rich game programmer never panned out.
It's funny...it also had the last IDE I actually liked.
Unfortunately for UCSD, they priced it too high, and Phillipe Kahn came in and stole the PC Pascal market. Of course, the grad students who actually designed and wrote the system never saw a penny.
The cake is a pie
It has been ages since I've done anything in pascal...but my programming language progression went from BASIC, QBASIC, then Pascal. I've moved to other languages from there but it was quite the eye-opener. Variables had to be declared, the "uses CRT" was quite the drastic change from what I had been used to (if I remember correctly), and the overall approach was enlightening.
Now there are other languages to learn with (and a few of those aren't just for educational purposes). Java, PHP, and C for example. Even Delphi has kept Pascal alive and relevant.
Back then, I had to find...um...creative ways to be able to program and compile Pascal code. With all the freely available IDEs, compilers, debuggers, etc. around now for all these various languages (especially through OSS), things have become more accessible.
Pascal was the language that brought me out of my BASIC habits...for that I'm definitely grateful.
All your productivity are now belong to CmdrTaco. Hope you like it here!
Cheers,
Gaurav
I didn't feel old, I've just been young longer than most /. readers.
May contain traces of nut.
Made from the freshest electrons.
It's unfortunate that Pascal gave type safety such a bad name: the language, as it was usually used for teaching, had such limited functionality and imposed such a straight-jacket on people that several generations of programmers thought type-safety made languages useless and that they needed to use something as unsafe as C to get any work done.
Yet, commercial implementations of Pascal were in pretty common use, had all the low-level facilities of C, and yet gave programmers a decent amount of type safety and runtime error checking. In fact, a lot of the early Macintosh software was written in ObjectPascal, and TurboPascal was very popular and very useful on the PC. Even the Apple II ran a pretty good Pascal development environment (in 64k of memory), with a decent screen oriented editor, menu bars, and an integrated compile/edit/run/debug system. Pascal syntax also was quite a bit less error prone than C/C++'s. Having pointer dereferencing be a postfix operator alone is just so much more sensible.
Perhaps much more interesting than Pascal, historically, are Algol-60, Simula-67, and Algol-68, which are related to it; Pascal was probably never intended to compete with them, but rather serve as an educational introduction to them and their successors. Around the same time, many fundamental ideas in programming languages were developed and implemented, including APL, Lisp 1.5, Snobol, PL/I, Smalltalk, and Prolog. Window systems, GUI toolkits, constraint-based programming, MVC, and other concepts we take for granted today followed shortly thereafter.
Borland Pascal for Windows may have been a bit freakish but I don't see how you can say Delphi is or ever was.
I used Turbo Pascal for DOS to write real-mode device drivers that loaded before windows did that communicated and made callbacks to windows applications written in Delphi (using the DPMI 0.9 API)
There really was nothing that could not be done or hacked with Turbo Pascal (and assembly) and Delphi (and more assembly as needed).
Borland DID get windows, more than MS did.
None of MS widget wrappers around the raw windows API compare in any degree to Borlands excellent VCL (Visual Class Library) that encapsulated and extended windows in a most wonderful way.
I've seen people program in Delphi who only know how to program in C and it looked like it. Ugly, nasty code.
I've seen Delphi code written by people who understand object Pascal and it is a dream to behold. (I've done some good stuff too).
The reason Delphi didn't catch on enormously is partly to do with it not being a cross platorm language (object pascal I mean) butmostly for the same reasons smalltalk, scheme, EISA and so on didn't catch on. I wish I knew what that reason was.
Sam
blog.sam.liddicott.com
One of the thing I like the most about Borland's Delphi is that its Object Pascal allows you to be procedure or object oriented. It also has the best IDEs around, and allows you to do anything you want (web services, device drivers, console apps, database apps, office tools, servers, clients, etc, etc, etc). Truely a Swiss army knife.
Actually I (mildly) regret that I was an advocate for C and C++ in the university undergrad CS programmes, because at the time I personally enjoyed programming in C more than Pascal. Looking back I think Pascal was an excellent language for students, and I wish Niklaus Wirth's other languages, such as Module-2, Oberon caught on more. I think they were evoluting in the right direction of promoting good programming style, for programming in the large.
Rather than quick coding by the seat of your pants which C encourages or at least strongly tolerates.
IMO: C surpassed Pascal because:
1) It's much easier to write a C compiler than a Pascal compiler, therefore the (early) availability of the C language on new platforms became a near certainty.
2) It didn't take project and product managers long to realize that in the era of Moore's Law, platform flexibility had great value. A project stuck on an obsolete platform due to the unavailability of its language on a revolutionary new platform was doomed, perhaps prematurely.
So its portability and ubiquity were C's most significant advantages over Pascal, back when there was a realistic contest.
3) For a time, executables written in C were likely to be considerably faster than those written in Pascal. This was a byproduct of the re-use of the C compiler code itself, versus fresh (read: immature) attempts at Pascal compilers. The C compiler cores got better with each processor port, but the freshly-written Pascal compilers often were not very good.
Today on the x86 platform with Borland's highly-refined 8th-generation compiler core, executables built from well-written Pascal are as fast as those built from coherently-written C, in my experience. It may be possible to write incredibly concise C that'll be a hair faster than the same thing written in Pascal, but arguing that difference is a fool's errand in the days of 4GHz rocket-ship machines executing septillions of NOPs waiting for something to do.
Personally, I choose Delphi these days over C, because I write and support huge projects. It is incredibly easy to pick up Pascal source and quickly figure out exactly what it does. That's the first (and most crucial) step in any software maintenance, and I find that Pascal's support cost savings more than over-balance any possible advantages I've ever realized from using C. When I'm writing something that needs to be extremely fast, I drop into inline assembly, but everything else I code in Delphi these days.
About the word "if": If bullfrogs had wings, they wouldn't bounce around on their little green butts.
Mac Pascal, Lightspeed C! I thought I was the only living person who climbed that learning curve. Problem was; it turned in to a learning cliff that I then fell off. I was good for nothing but assembler and BLISS for years until Pascal came along. This means we are due for a birthday party for the original MS-Basic pretty soon.
But didnt Pascal lead people to think of P-code which foreshadowed Java bytecode? a link off the article's link seems to agree with my memory...so i better not read it too carefully;)
and I certainly didn't use pascal just for academics. When I execavated the basement hole for my house, on an ostensibly unbuildable scrap of bedrock-studded land, a pascal contour mapping program that I wrote detected the one spot where the bedrock would be flat and need no blasting...back hoe guy was amazed an amateur could show him right where to dig.
SLASHDOT: news for people who can't concentrate on work or have no life at all and got tired of yelling back at the TV.
Today, we have Python, and whitespace-sensitive code is fucking BACK!
Fight hunger. Filet a politician and send him to a 3rd world country of your choice.
> this is also my first post, /. community!
> so i wish to formally introduce myself to the
Welcome to Slashdot.
Just be careful with the words "first post!"
The reason Delphi didn't catch on enormously is partly to do with it not being a cross platorm language (object pascal I mean) butmostly for the same reasons smalltalk, scheme, EISA and so on didn't catch on. I wish I knew what that reason was.
I think the reason Delphi hasn't become mainstream is the same reason many other excellent products haven't. Microsoft cloned it with VB and kept just close enough behind that it was acceptable to choose the un-FUD'd development environment.
Both apps are Free Software (GPL).
www.lazarus.org
www.freepascal.org
Lazarus := Delphi-like (almost a clon) IDE for Win32 AND Linux. It's API independent: can use transparently GTK+, Windows graphic system... etc.
FreePascal :=
Portable? no problem! It's available for different processors Intel x86, Motorola 680x0 (1.0.x only) and PowerPC (from 1.9.2).
The following operating systems are supported: Win32, Linux, FreeBSD, NetBSD, MacOSX/Darwin, MacOS classic, DOS, OS/2, BeOS, SunOS (Solaris), QNX and Classic Amiga.
The language syntax is semantically compatible with TP 7.0 as well as most versions of Delphi (classes, rtti, exceptions, ansistrings). Furthermore Free Pascal supports function overloading, operator overloading and other such features.
Try it! Or, at least visit the web sites.
Actually you are answering the wrong question. There was never any contest between C (the Unix language) and Pascal (a teaching language). The real tragedy was that the beautiful Algol succumbed to C so easily and so completely.
But you are quite right, compilers where the reason. C.A.R.Hoare (of quicksort and CSP fame) tells a good story where early in his career he led an Algol compiler team into disaster - after two years of careful programming they produced a multi-pass compiler and when they first tested it, it managed to correctly translate 1 line of Algol per second!
And in certain circles, Pascal is still the language of choice. Lots of people who hack out basic native-code Windows software prefer Borland's Delphi IDE to any alternative. One reason is the programming language, which is actually an object-oriented extension of Pascal.
I spent 3 years at Borland, documenting their component libraries, which are mostly written in Delphi. I came to appreciate its simplicity and power. My job required me to go back and forth between Delphi and C++ (the same libraries are used in Borland's C++ products) and it was an object lesson (forgive the pun) in how painfully baroque C++ has become.
It's a pity that Pascal/Delphi has so thoroughly lost the language wars. But it has. Even if C++ hadn't thoroughly taken over native-code programming, Borland's bizarre and insular corporate culture would keep from spreading beyond a few fierce loyalists.