Free Pascal 2.0 Released
Eugenia writes "After five years of development, Free Pascal 2.0 is ready and it includes support for many architectures and OSes. It now has threading support, interfaces, widestring and better Delphi support among many other new features. OSNews posted an article introducing the updated GPL compiler." petermgreen adds a list of some of the major changes since the last stable release: "Much better support for Delphi language features (especailly method pointers); more supported CPUs (AMD64, SPARC, PPC (32 bit), ARM) and platforms (Mac OS classic, Mac OS X, MorphOS, Novell Netware); a new and better structured Unix RTL Threading support; and a large number of internal changes including rewriting large parts of the compiler to make it more maintainable and easier to port to new architectures," and notes that "Visual parts of Delphi are being handled by a seperate project known as lazarus, which has not yet reached 1.0 but should do so fairly soon."
I still have fond memories of screwing around with Turbo Pascal on those (even at the time) ancient IBM floppy-PC things we were stuck with in high school. At the time Java was still called Oak, and many PC's would not be happy with even a C compiler for speed. Pascal was a major step up in power and performance from the BASIC we had done, and even though I've forgotten most of it, I did learn one lesson I still use today: useDescriptiveVariableNamesPlease (Ok, a little extreme, but I can't remember the last time I used 'x' as a variable name... joy)
AntiFA: An abbreviation for Anti First Amendment.
Education I get, I meant production uses.
"I'd rather be a lightning rod than a seismometer." -Ken Kesey
However, I wish the FP (and I don't mean first post) people and the GCC people would settle their pissing match. GCC is supposed to be "GNU Compiler Collection". When FP asked for information to help integrate FP as a GCC backend, they were told to fuck off. Talk about dickheads :(
Is Pascal used mainly with Delphi these days? I wrote software in Pascal years ago, when you could get Borland's Pascal.
I went on to other development tools but always liked Pascal and its descendents Modula and Oberon. I never understood why Oberon never took off either.
I always enjoyed debuggin pascal(enjoyment compared to debugging other code) because it naturaly promotes clean codding which is why to this day in germany it is used as a teaching language. .
Its good to have freepascal now supporting so many system as most of my personal system are now powerpc based
Pascal often takes alot of slack for being a toy language or a mear teaching language but it is certainly more than that and can be used to achive great results.
Personly most of my compiled programing is done in C though i would definantly prefer pascal from a debuging stand point , the support just hasn't been there for the systems i use untill now.
Great news though and i wish the freepascal team all the best
The only things certain in war are Propaganda and Death. You can never be sure which is which though
If you want a Pascal-derived language that's a little more up-to-date, consider SmartEiffel or Oberon (search on Google). Both have garbage collection, object-oriented features, and both can generate small, stand-alone executables. The SmartEiffel compiler is particularly neat, since it does global program optimization.
I remember taking AP computer science back in 1984 and studying Pascal. Anyone else remember Oh! Pascal? I can't remember a thing about the language now, but I remember having a lot of fun playing with it on one of those old Commodore CBM machines. And since the computer I had at home was a TRS-80 CoCo 2 which didn't talk Pascal at all, I contented myself with trying to structure my BASIC programs (back then, BASIC had line numbers) like Pascal programs. Hard to do in a language that doesn't have a concept of modular programming.
Course, back then, Fortran was barely even Threetran, and we had to walk fifteen miles to school in the snow, uphill both ways.
-- The reason it's called the right wing? Irony.
does a hybrid procedural/oop language without the overcomplexity of C++, that compiles to native code without gc and similar shit and that lets you get down to the low level when you need to appeal to you.
if so and the verbosity and case insensitivity don't bother you then it will probablly suit you.
note: i'm known as plugwash most places but i screwd up registering that here somehow in the past and now can't register
unfortunatly i agree , C took the crown and C based languages are here to stay . .
Pascal was slaughterd in the iso standard ( though still a very beutifull language) Its the language i cut my teeth on before moving to C and i have alot of respect for it
I don't think it would be imposible to resurect as pascal tends to be very freindly to new developers as it is very strict so errors are easy to discover.
it just needs a buzz application to attract people towards it (note that in germany it is still used as a teaching language , though it tends to be windows specific coding which is unfortunate)
I may just be sufforing from a case of nostaliga , but i do enjoy pascal coding.
too many languages now see freeform as an advantage when it can promote alot of bad habbits for the new codder, though it does allow for better structure of codding when your used to your language
The only things certain in war are Propaganda and Death. You can never be sure which is which though
Must admit I cannot see the point of this. As many point out, Pascal doesn't really exist any more as a real-world programming language outside Borland's Delphi. Delphi may be a minority taste these days, but it's still, for my money, the best (fastest development time, minimum debugging time) environment available. The Pascal language as extended in Delphi is as powerful (well 99%) as C++ and easier to handle - but it bears little resemblence to the original Pascal beyond core language syntax and structure.
.net - so there's life in the product line yet.
It is getting a little long in the tooth now, but this can be a real advantage. There's literally thousands of free, shareware and commercial add-on components for it, with several sites indexing them, numerous 'fan' sites on many obscure and not-so-obscure aspects of the system. Borland latest version - Delphi 2005 - can also target
All-in-all of which make continuing to develop in Delphi a very viable option. However all the advantages of Delphi do not apply to Free Pascal, which leaves it as a bit of a curiosity.
I wish the project well etc. but I really can't see, as a regular Delphi user for 10 years, why I , or anyone else, would want to use it.
Tell me about it. My college's setup is horrible. It's practically impossible to customize Delphi's environment because configuration seems to be located on a protected share on the network.
Delphi's indent size seems to be random, and there's just alot of handy settings I'm missing out on.
A gripe I have with the GUI designer (which is probably a Windows thing) is that randomly placing components around a window makes it hard to group and line up things. (as opposed to GTK+, which is pretty much the only other thing I've experienced)
Furthermore, I just don't really like Pascal, the language itself. I'm really just a beginner, but I have experience in a fair amount of other languages already. There's alot of tiny annoyances that really bug me while writing Pascal. The language tries to be formal, but the code simply looks very informal and inconsistent to me.
For example, every expression is terminated with a semi-colon, like C, except for the last one in a code-block, which is optional, sortof like CSS. That's all fine and dandy, but when you move around instructions I often find myself toying around with semi-colons half the time. Now ofcourse I can terminate <em>every</em> line with a semi-colon, even the last one, but that'd throw errors in an if-then-else statement.
Furthermore, blocks start with 'begin', and end with 'end'. That's alot of characters to type for a simple and frequently occuring language construct.
Finally, a unit is split up in sections like 'interface', 'implementation'. Classes ofcourse have private, protected, public members. But these keywords just seem to affect everything up untill another keyword or the end of the class definition. Why aren't these simply blocks? And why is the unit itself some sort of half block terminated with 'end.' (note: not a semi-colon), but not opened with 'begin'?
Delphi takes care of a fair bunch of other annoyances, I guess. And feel free to prove me wrong on any of this. But I guess I should just bite through these courses, wait 'till we get some more Java (or finally some other, interesting, new langauge) and stick with Python, Ruby, Boo or whatever in my spare time. It's all a matter of taste in the end.
Whay Pascal is not my Favorite Programming Language by Brian Kernighan.
Does anyone know why this is not just part of GCC? It seems that with the current methodology of compiling from a language to the GCC middle language that essentially any supported compiled languages would gain from being part of GCC.
Feel free to correct me if I'm wrong here.
BASIC: self-taught including line numbers and even *shudder* edlin once one a random computer in elementary school, plus a year of high school. A wonderful language to learn with.
Pascal: a dead language. Why the hell are people still using it? Whatever, I learned it in two years of high school, learned about pointers and trees and ADTs. Since it was DESIGNED as an educational language, NOT as an industrial language, it was great to learn with.
C/C++: should die, except for programming kernels and hardware libraries. But I learned some of it in the last year of high school, and more in college. Great language for low-level manipulation and byte-counting accuracy (that's C only, not C++).
They're trying to teach my brother basic computer science at UT Dallas by using Java. And not just Java, but Swing. It is a wondefully powerful language, just like C, and it has native threading, exceptions, and class extensions, so it blows C++ out of the water. But it is a horrible language with which to teach computer science. Horrible, horrible, horrible, even more so than C. My brother didn't know what a 'class' was, and they wanted him to use Java! Give me a break, and him, too.
Once I got to college, I learned Haskell, then Python, PHP, a little JAVA, LISP, and assembly (okay, assembly for a simple machine). Haskell kicked my ass. Want to know why? Because I already 'knew' how to program. What I 'knew' was the suspension of disbelief required for working in the imperative programming world. Haskell is a great language for teaching people who do NOT know programming at all. My suggestion: start with Haskell, then move to Python (which is like BASIC in that it is interpreted and has a sparse syntax).
Why do we have to make it hard on people during education? We should use Haskell, Python, Pascal, or BASIC in order to teach them. And why do we have to make it hard on ourselves as programmers? We should not use Pascal or BASIC for anything, and we should use other languages for what they are good for.
And what is C good for? Explicit control and direction. Pascal? Nothing in the industry. If you're going non-standard (i.e. not C/C++), and you need absolutely enforced types, then byte the bullet and learn Haskell. Here, I'll make it easy for you: I've actually written a tutorial about Haskell for people who know languages like C (including Pascal, Perl, Python, PHP, etc.). If you know any of those languages, and you want to learn a better, simpler, more free way , please check it out. I made it just for you, really! Oh, just so I mention it, it's fairly easy to call external code from Haskell, so you can still be naughty if you need to.
Thanks for the walk down memory lane.
Playing pornographics games during the day is evil! Play at night!
To answer your question: Pascal is still used for teaching in some cultures. Delphi (and the Object Pascal language it provides) still have a following in some corporate circles, especially for database front-end work. And there's a fair bit of legacy code out there.
Trivia: The original Macintosh System Software (later renamed MacOS, later renamed MacOS Classic) was written mainly in Pascal, with assembler where needed for speed or low-level implementation.
I doubt much new, interesting work is done in Pascal, though.
Pascal had some real advantages over it's contemporaries -- K&R C, BASIC, and other things now even more forgotten then Pascal. It was easy to parse, which made a Pascal compiler fast to run and easy to write/maintain. The syntax used more English words and less punctuation, which is arguably easier on the newbie.
Pascal has lots of redundancies and checks, both in the syntax and in the runtime, which made it a lot easier to write and maintain a good, robust program. Some call this "B&D programming"; others, myself included, call it common sense. I don't expect to crash my car, but I still wear a seatbelt. I use my turn signal even when I don't think there is a car in the next lane. I'm human. I make mistakes. I try to make sure the damage from my mistakes is limited.
Pascal also encouraged good programming practices in an era where there was still debate over whether good programming practices really mattered. It popularized the idea of teaching structured programming from the start (as opposed to in a footnote on page 378 of the textbook).
While the original Pascal specification made it of limited use for "real world" stuff, adaptations (like Borland's venerable Turbo Pascal) gave you all the power of C or even assembly when you needed it.
These days, most of the lessons that Pascal taught have been learned, and learned well in some new languages. Many of the things learned in the creation and growth of Pascal have also been learned, leading to languages which are all-around better. New ideas (like OO) have taken hold. Better hardware makes things like garbage collection and runtime evaluation a lot more practical.
So the need for Pascal itself, in the present day, is pretty minimal. However, it played a critical role in the evolution of computer programming as a science and as a professional discipline. It was the "first real language" many people learned. And much like a classic car that's been eclipsed by more modern technology, Turbo Pascal still has a certain elegance and appeal to those who knew it. Nostalgia, yes, but good stuff, still.
END. (* PROGRAM *)
dragonhawk@iname.microsoft.com
I do not like Microsoft. Remove them from my email address.
Most of the issues raised in that article do not exist in Object Pascal/Delphi.
I think their
http://www.freepascal.org/faq.html#dotnet
But of course, we should remember that Real Programmers don't use PASCAL
That was before Borland introduced Turbo Pascal, which everybody marvelled at. They sold a zillion pascal compilers and that was their bread and butter for a long time. Everybody was saying how they were gonna reuse all this pascal code they were writing and it really was the shiznit.
Then the Mac gained credibility with the laserprinter and Think C had a C++ compiler and everybody was starstruck by the term "object oriented," which blinded everybody until the internet came along with a new set of buzzwords that inflated a nice bubble filled mostly with worthless gas.
I do not see anybody falling over each other to reuse a lot of that old pascal code. And even though everybody says how they can reuse C++ stuff, it seems like every time I read details about some software project they are having to reinvent errr rewrite the wheel. Or if it's not that it's someone else's spaghetti code they can't read.
The first computer language I learned was was Fortran at a terminal with computer time you had to buy in CPU seconds. It was a sperry univac that had a rotating drum (not disk) and I believe it was a five megger --> 5 megabytes. The entire university had only a couple of cpm computers in the library for student use. When I enquired about them nobody knew if they worked and there was no software for them. This was 1983. Needless to say wordprocessing was a bitch back then, and the student paper was filled with ads for people who would do typing for you. Anyway, I digress.
I was told how gosh darn important Fortran was going to be in my chosen field of electrical engineering. Well, it wasn't and isn't. I won't tell you what the school is, but I will say they are responsible for the world-changing discovery of cold fusion. They have since become important in the areas of supercomputing and contribute a lot to Linux. I would like to think that there is irony there, but I have my doubts.
Through my years of learning, I think I like straight pascal the most. It is elegant, and bug hunting MUCH more straightforward. Though I am sure to findle ample amounts of people who will disagree with me on slashdot. But trust me, I've been there, done that, and got the t-shirt.
I mention this because the date of the the article is 1983, and even though it was (is) a joke, it hits close to home.
Take the cheese to sickbay, the doctor should see it as soon as possible - B'Elanna Torres, "Learning Curve"
Or maybe they didn't use Windows.
(which is in fact true to some extend)
This sounds like a why bother with gcc, just use VS argument.
Moreover look at the state of Linux, where is the Open Source RAD ? IMHO Lazarus is still the closest contestant.
It's pretty obvious to a user that a program is written using Delphi. They typically use a lot of stock icons and widgets that are distinctly Delphi.
That's because most programmers aren't artists and reuse whatever came with their IDE. Try Ultra Fractal, it might surprise you.
My rule-of-thumb to tell Delphi programs is (apart from using Spy++): when you right-click on a Delphi app's tab in the taskbar, you get only a Restore/Minimize/Close menu, not the usual Windows-standard Restore/Move/Size/Minimize/Maximize menu that Microsoft's IDEs use as the default. I was told this was something that's baked into Delphi's Forms implementation, I'd appreciate it if any Delphi gurus could correct me on this.
Go somewhere random
Rather: porting the great Delphi environment to other languages. You know, copying the best of Windows to Linux? That kinda thing.
For every expert, there is an equal and opposite expert. - Arthur C. Clarke
And the obligatory response Software Fault Prevention by Language Choice: Why C is Not my Favorite Language (PDF).
-30-