Free Pascal Compiler 3.0.0 Is Out; Adds Support For 16-Bit MS-DOS, 64-Bit iOS (freepascal.org) 134
Halo1 writes: Twenty-three years ago, development started on the first version of the Turbo Pascal and later also Delphi-compatible Free Pascal Compiler, for OS/2 no less. Two decades and change later, the new Free Pascal Compiler 3.0.0 release still supports OS/2, along with a host of older and newer platforms ranging from MS-DOS on an 8086 to the latest Linux and iOS running on AArch64. On the language front, the new features include support for type helpers, codepage-aware strings and a utility to automatically generate JNI bridges for Pascal code. In the mean time, development on the next versions continues, with support for generic functions, an optional LLVM code generator backend and full support for ISO and Extended Pascal progressing well.
Short FPC history and goals overview (Score:5, Informative)
I thought I added the link to my original summary, but it seems to have gotten lost when I submitted it. In any case, Sourceforge's Project of the Month April 2014 [sourceforge.net] interview with the founder of the Free Pascal Compiler, Florian Klaempfl, contains a good overview of the project's history, goals and development methodology.
Re: (Score:1)
23 years ago? That makes it 1992? I was using Turbo Pascal in 1989!
Re:Short FPC history and goals overview (Score:5, Informative)
23 years ago? That makes it 1992? I was using Turbo Pascal in 1989!
Yes, Florian started the project when it became clear Borland was not going to create a 32 bit version of TP/BP.
Re:Short FPC history and goals overview (Score:5, Interesting)
23 years ago? That makes it 1992? I was using Turbo Pascal in 1989!
Re-read the summary.
It says 23 years ago development on the Turbo Pascal compatible project "Free Pascal" was started.
It does NOT say 23 years ago development on Turbo Pascal itself was started.
Re:Short FPC history and goals overview (Score:4, Funny)
Re: (Score:3)
Which is still saying the same thing. The part GP omitted is simply saying that the Free Pascal Compiler was Turbo Pascal-compatible then also later Delphi-compatible.
Re: (Score:3)
No, Turbo Pascal is not 23 years old ... the grammar suggests that, but reality doesn't.
I know this, becaise 23 years ago I had a second hand 286 PC with Turbo Pascal on it. And it wasn't exactly new even then.
Turbo Pascal [wikipedia.org] has been around since 1984 .. that would be 31 years ago.
So, you can argue the sentence should have read as "Twenty-three years ago, development start
Re: (Score:3)
Twenty-three years ago, development started on the first version of the Turbo Pascal and later also Delphi-compatible Free Pascal Compiler
Parsed that for you.
Re: (Score:2)
Isn't that what he said? (using parentheses rather then bold)?
Re: (Score:2)
no it isn't, ignore me.
Re: (Score:1)
> The summary says: "Twenty-three years ago, development started on the first version of the (Turbo Pascal and later also Delphi)-compatible Free Pascal Compiler" Perhaps you should re-read the summary, your paraphrase edits out the bit that makes all the difference???
Added parentheses 'cause of defect in user's parser operator precedence.
Re: (Score:3)
conjunction junction, what's your function?
Re: (Score:1)
Yeah but too bad with all the time it took, Pascal has become somewhat obsolete, supplanted within its core support community by Modula.
Re: (Score:1)
Just because pascal isn't trendy anymore doesn't make it less awesome. Free Pascal / Lazarus is an excellent environment for getting stuff done.
Re: (Score:1)
Yeah but too bad with all the time it took, Pascal has become somewhat obsolete, supplanted within its core support community by Modula.
Sorry, but Modula has gone nowhere. There isn't just one Modula compiler project out there (which are few and far between anway) that comes even close to FreePascal. And with the Lazarus IDE, you get a very easy to use RAD development environment for all the major GUI based OS, allowing for easy cross-platform development. And just because of all the buzz of the "new kids on the block", Pascal hasn't become "obsolete" by a long shot. Pretty much all the people that I have met that made that claim have neve
Re: (Score:2)
I was a long time contributor and user of FPC and Lazarus but I moved on to other work a few years ago and haven't been near the Pascal scene since. What's the status of Lazarus ? Still under active development ?
Re: (Score:2)
What's the status of Lazarus ? Still under active development ?
Absolutely: http://www.lazarus-ide.org/ [lazarus-ide.org]
Re: (Score:2)
Good, old Pascal. What a horrible language, but I liked it :-)
I remember (Score:5, Interesting)
I remember having to save my allowance to buy Borland Turbo Pascal for around $60. It came in a yellow box. A couple of other things I remember:
1) I am getting old
2) Those days sucked
Thanks to GNU and gcc we will never have to put up with that crap again.
Re: (Score:1)
I remember when I first moved from Turbo C to djcpp; from "tiny", "small", "irritating", "large", "flatulent" and "huge" memory model to ... flat. It was as wonderful as not being repeatedly kicked in the balls.
Re: (Score:2, Insightful)
All those goofy memory models were of course courtesy of Intel, who foolishly stuck with the segmented memory model and 16-bit offsets for years. The 286 was a stupid design in that it expected you to break up any data structure larger than 64K bytes, and you had to fucking reset the CPU (after setting a flag in CMOS for BIOS to know what to do) to get out of its protected mode, back into the mode that all existing software ran in. IMHO it set the industry back by almost a decade having to futz with that sh
Re: (Score:3, Interesting)
You missed out on the horror days when borland finally completely lost the plot and the cheapest you could get anything from them was the beginner version of delphi for well north of a $1K. And they wondered why dot net left them in the dust. Which is a shame. Delphi was actually a pretty great system, in its day.
Re: (Score:1)
Most people buying Turbo Pascal weren't "IT people". They were hobbyists (especially back in the 80s). I bought Turbo Pascal (as well as MS C and MASM) long before I started making money as a software developer. Without "cheap" tools, I never would have been able to start my career.
Re: (Score:3)
They could afford if it they already knew and had confidence in it. How do people get started when the basic configuration is $1000+, and that's without client/server DB access ($300+ more)? And now you need to pay another $300+/year for a subscription to get bug fixes.
There was a time when Borland had a no-nonsense license (i.e. install wherever you want, as long as only one copy is used at a time), and they didn't have DRM that made the boot-up time almost double. They used to put customers first. Now the
Re: (Score:1)
I remember having to save my allowance to buy Borland Turbo Pascal for around $60. It came in a yellow box. A couple of other things I remember:
1) I am getting old 2) Those days sucked
Thanks to GNU and gcc we will never have to put up with that crap again.
My sincere condolences that you still have to put up with gcc, I know, it scars you for the rest of your life... >:)
Free Pascal is awesome. (Score:5, Interesting)
Free Pascal is amazing at how it "just works" with legacy Turbo Pascal syntax where Delphi would present more trouble. Lazarus, the Free Pascal IDE, is also very resemblant of Turbo Pascal IDE, with some modern touches.
Pascal is an underrated language. It may have been designed for education, but it has many advanced features, the executables are nearly as fast as C++ ones, it compiles fast, and the runtime diagnostics are detailed and specific. It "just works".
Re:Free Pascal is awesome. (Score:5, Interesting)
I loved the Pascal family of languages. I did a lot of work in TurboPascal and Basic-09. The latter was basically Pascal with a bit more BASIC-like syntax. I still prefer Pascal style variable declarations.
Re: (Score:3)
Re: (Score:2)
I did a lot of work in TurboPascal and Basic-09.
In the mid 1980's, I was writing a lot of BASIC-09 on OS/9 Level 2. At the time, I was the librarian for the local CoCo club, and had access to the club's Pascal compiler and C compiler. I decided to try Pascal, since a high school classmate raved about it, and installed the Pascal compiler. Or rather, I tried to install the Pascal compiler without success. It installed, but it wouldn't run.
So I then tried installing the C compiler, and succeeded. I then decided that I would learn C rather then Pascal.
Re: (Score:2)
I got my start in programming with Turbo Pascal and still have some old Pascal code from back in the day hanging around.
It might compile with Free Pascal and run on modern Windows PCs although that would depend on whether Free Pascal supports the Borland BGI graphics library on modern Windows machines somehow and whether it supports the mouse code I used back in the day.
Re:Free Pascal is awesome. (Score:5, Informative)
FPC comes with a (mostly) TP-compatible graph unit for Windows (32 and 64 bit). It doesn't use BGI drivers, because it doesn't need to. Your mouse code won't work though, since you can't access the mouse driver under Windows using DOS interrupts. We do have our own cross-platform mouse unit [freepascal.org] you may want to use instead.
Re: (Score:2)
Worth mentioning that FPC will also let him port his program to Linux with minimal effort as the units are almost entirely identical.
Re: (Score:1)
Re: (Score:2)
Pascal eventually overcame many of its shortcomings but by then it was too late. C (and the emerging C++) had already gained dominance
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
Correction: Delphi is an IDE - the language Delphi compiled was called Object Pascal. That hackish horrible thing you refer to never had a name of it's own it was just "object oriented programming support added in Turbo Pascal 5"
Great work! (Score:4, Interesting)
I've used Turbo Pascal and Delphi for years, later followed by FPC and Lazarus. It was an enjoyable time. While I was no stranger to C++ even in those times, I simply preferred Object Pascal (so sue me). We even used it on Windows Mobile up to 6.x.
Unfortunately, when the time came (years ago now) to focus on Android, FPC's RTL had fairly serious issues, that I personally did not have to expertise to fix, and it wasn't a priority for anybody else who did.
While I have no plans to return to FPC, I'm still a fan, and I love to see it progress.
Put it in the library (Score:2, Interesting)
NO language needs a garbage collector, though an option to use one selectively would be nice.
Let's split the difference and say a language needs a garbage collector in its standard library that a programmer can choose to enable. C++ calls its reference-counting garbage collector std::shared_ptr.
Re: (Score:2)
Pascal Changed my life (Score:2)
Re: (Score:2, Insightful)
MIne, too.
I remember despising C for its absurd syntax ("==", "!=" etc.).
I still do.
If I have a chance, I plan on doing some programming again with FreePascal/Lazarus.
C vs Pascal == Perl vs Python (Score:3, Interesting)
I remember despising C for its absurd syntax ("==", "!=" etc.).
I still do.
And I was the opposite, I despised the vebosity of pascal (begin/end/etc.) and it's tendency to try to hide some low level details on the grounds of making it easier to learn.
To each his own preferences.
That's a definitive proof that the Perl vs Python debate didn't actually need theese language and the whole concept dates back much further in computing history.
Re: (Score:2)
I see that you forgot to take your meds today!
Re: (Score:1)
or maybe I was just ignorant?
is there one now?
Re: (Score:2)
You're not ignorant. Pascal sucks.
Tandy 1500? (Score:2)
i was about to try it.... (Score:1, Funny)
But then I saw the systemd requirement, and decided to pass.
OpenWatcom (Score:2)
Speaking of ye olde compilers, OpenWatcom [openwatcom.org] seems to have ground to a halt in 2010. Can't tell if I think that's a shame, or if its time has come, or both.
Re: (Score:2)
There may not be much left to change or update. But the project itself is still alive, far as I can tell.
Re: (Score:2)
There may not be much left to change or update.
How's that? It would be great if it could be brought up to speed with compatibility with modern C++, and modern optimisations. No small task, of course.
What happened to Pascal, anyway? (Score:2)
I remember in the 1980s it seemed like kind of a big deal, an "advanced" programming language that required a compiler and a more real computer than an Apple ][ (although, yes, there was a Pascal system for the ][, IIRC it was worthless without two disk drives and really not an ideal platform). I knew people writing commercial software in Pascal. They taught it when I was in college. I think "Inside Macintosh" Vols. 1-3 that documented the Macintosh used Pascal.
It was kind of everywhere, and then it wasn
Re: (Score:2)
The Pascal community fragmented. The 8-bit systems carried on using ISO Pascal or UCSD Pascal, but Wirth and other key Pascal experts went off and created Modula-2, which was much more practical for real world programming. (I used Modula-2 on the Atari ST, it was a much nicer experience than trying to program GEM in C.)
But instead of Pascal or Modula-2, Borland went off and did their own thing, producing a proprietary "Pascal" that wasn't compatible with anyone else.
Then the Modula-2 community split into th
Re: (Score:1)
And Free Pascal still isn't even compatible with 1982's standard ISO Pascal.
Why is that a problem in particular? Things have moved on a lot in the last 33 years. Even the first C standard [wikipedia.org] isn't that old.
Re: (Score:2)
As I said, fragmentation is what killed the Pascal community. Or at least, that was my view as a participant. The fact that we still don't have a common Pascal standard today means it's not going to come back from the dead.
Re: (Score:2)
But it don't support pointer arithmetic. Every slash dot reader knows that you need pointer arithmentic (char *x; x++) in order to be efficient.
Seriously, the early Pascals were rather fascists about type safety. So the whole world jumped to that miserable excuse of a language called C which let them do what they thought they wanted to do.
(I grew up on the original Wirth Pascal on a Cyber with 60 bit words. That is what all that packed character stuff was about.)
Re: (Score:1)
But it don't support pointer arithmetic
Seriously, you need to RTFM before stating such a thing: http://www.freepascal.org/docs... [freepascal.org]
Re: (Score:3)
The two major Pascal implementations (Free Pascal and Delphi) are fairly compatible with each other so it's not as fragmented as you think.
It's isn't fragmented now, because it's dead other than those two non-standard compilers, all the other implementations having vanished along with their communities...
Re: (Score:2)
For better or worse, what Delphi does has become a de facto or so-called industrial standard. Just like Apple with Objective-C and Swift. Official standards are indeed not a guarantee for success.
Re: (Score:1)
It's isn't fragmented now, because it's dead other than those two non-standard compilers, all the other implementations having vanished along with their communities...
Let's see... besides those two, there are:
The first one is I know for sure very much alive as the author is very active in the community and they really have customers. The next four might be less known, but they can be considered active looking at their latest release date.
Re: (Score:1)
And Free Pascal still isn't even compatible with 1982's standard ISO Pascal.
Correction: FPC has ISO compatibility mode that gets mature, at this time of writing, as Jonas said in the mailing list, only 1 little bug that didn't get into 3.0.0 and already fixed in trunk. I personally have compiled P5/P6 compiler provided by standardpascal.org and it compiles flawlessly with FPC. I'd like to run it against Pascal Test Suite that should declare whether a compiler is standard compliant or not, but I just told standardpascal.org people and hope that they will do it. They should have the
Re: (Score:2)
Wizardry: Proving Grounds of the Mad Overlord by Sir-Tech, was written in Apple UCSD PASCAL.
Re: What happened to Pascal, anyway? (Score:1)
Ya think? Just wondering - When did programmers stop ignoring that, along with range checking, and when did buffer exploits start happening?
I remember it being about the same time.
Coincedence?
Increment an pointer into an array (Score:2)
Does the new Pascal let you increment a pointer through an array yet (char *x; x++)?
Every slash dot reader *knows* that that is an essential feature of any programming language in order for it to be efficient.
This simplifies porting from Delphi (Score:2)
Let me just paste a code comment i wrote two months ago;
* Written for use in Delphi 2010.
* Seems to work (with minor tweaks) in Lazarus v1.4.4 with FPC 2.6.4, Windows.
* Could work with fewer tweaks with FPC3.
Now i'm wondering if i can get this pet project to compile and run on Linux ..just for sports.
Re:WHY? (Score:5, Insightful)
Why the fuck would anyone bother supporting 16-bit MSDOS? Really?
Simply because someone cares. Someone else is also reviving Amiga 68k support, because he cares. Our compiler is generally modular and generic enough so that such support does not result in too much interference with other functionality, or luggage that makes things unmaintainable over time.
Where's the CP/M support for Z80 then?
It'll get added as soon as you provide good quality patches for it :)
Re: (Score:1)
Why the fuck would anyone bother supporting 16-bit MSDOS? Really?
Simply because someone cares. Someone else is also reviving Amiga 68k support, because he cares. Our compiler is generally modular and generic enough so that such support does not result in too much interference with other functionality, or luggage that makes things unmaintainable over time.
+1 (at least for the 16-bit MSDOS part ;-) )
Where's the CP/M support for Z80 then?
It'll get added as soon as you provide good quality patches for it :)
(Un)fortunately, I think we will have to wait a long time for that to happen... ;-)
In general, it is sad to see how arrogant and ignorant the (programming) world has become...
Re: (Score:3)
Why the fuck would anyone bother supporting 16-bit MSDOS? Really?
Where's the CP/M support for Z80 then?
Does anyone use Pascal any more?
http://www.z80.eu/pas-compiler... [z80.eu]
There are some pascal compilers for cp/m. Enjoy.
Re:WHY? (Score:5, Informative)
Re: (Score:3)
Believe it or not, there is some embedded hardware out there that still uses DOS variants. The messaging module of our phone system uses an embedded version of DOS.
Re: (Score:1)
Some of the Canon pro-sumer cameras are running DOS as well.
Re: (Score:2)
Yes, there are still devices that run on pc/104 and other embedded x86 platforms. The older ones still running ROMable versions of DOS.
Z80 support would be nice for me, I'm still using SDCC so I'm still stuck in C land. Of course I'd also like 68hc11 support too, but I'm not going to hold my breath.
Sure, some people still use Pascal. Some people still use Java even though it's obvious that Oracle is eventually going to screw it up.
Re: (Score:2)
Re: (Score:1)
but with the costs of Delphi and that its been around so long and still going means someone is using it.. but who ???
From Embarcadero: - http://www.embarcadero.com/pro... [embarcadero.com] From Lazarus/FPC wiki: - http://wiki.lazarus.freepascal... [freepascal.org] - http://wiki.lazarus.freepascal... [freepascal.org] - http://wiki.lazarus.freepascal... [freepascal.org]