Slashdot Mirror


Free Pascal Compiler 3.0.0 Is Out; Adds Support For 16-Bit MS-DOS, 64-Bit iOS (freepascal.org)

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.

134 comments

  1. Short FPC history and goals overview by Halo1 · · 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 interview with the founder of the Free Pascal Compiler, Florian Klaempfl, contains a good overview of the project's history, goals and development methodology.

    --
    Donate free food here
    1. Re:Short FPC history and goals overview by Anonymous Coward · · Score: 1

      23 years ago? That makes it 1992? I was using Turbo Pascal in 1989!

    2. Re:Short FPC history and goals overview by Halo1 · · 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.

      --
      Donate free food here
    3. Re:Short FPC history and goals overview by Anonymous Coward · · 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.

    4. Re:Short FPC history and goals overview by vux984 · · Score: 4, 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.

    5. Re:Short FPC history and goals overview by Anonymous Coward · · 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.

    6. Re:Short FPC history and goals overview by TapeCutter · · Score: 3, Funny

      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???

      --
      And did you exchange a walk on part in the war for a lead role in a cage? - Pink Floyd.
    7. Re:Short FPC history and goals overview by Lunix+Nutcase · · Score: 2

      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.

    8. Re:Short FPC history and goals overview by gstoddart · · Score: 2

      Twenty-three years ago, development started on the first version of the Turbo Pascal and later also Delphi-compatible Free Pascal Compiler

      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 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 started on the first version of the Turbo Pascal (and later also Delphi)-compatible Free Pascal Compiler".

      But what you can't do is argue that Turbo Pascal is 23 years old. Because that's utterly incorrect.

      --
      Lost at C:>. Found at C.
    9. Re:Short FPC history and goals overview by BetterThanCaesar · · Score: 2

      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.

      --
      "Stop failing the Turing test!" -- Dilbert
    10. Re:Short FPC history and goals overview by Anonymous Coward · · 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.

    11. Re:Short FPC history and goals overview by silentcoder · · Score: 1

      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 ?

      --
      Unicode killed the ASCII-art *
    12. Re:Short FPC history and goals overview by Halo1 · · Score: 1

      What's the status of Lazarus ? Still under active development ?

      Absolutely: http://www.lazarus-ide.org/

      --
      Donate free food here
    13. Re:Short FPC history and goals overview by jandersen · · Score: 1

      Good, old Pascal. What a horrible language, but I liked it :-)

    14. Re:Short FPC history and goals overview by OrangeTide · · Score: 2

      conjunction junction, what's your function?

      --
      “Common sense is not so common.” — Voltaire
    15. Re:Short FPC history and goals overview by Anonymous Coward · · Score: 0

      What's really missing is the hyphen after "Turbo Pascal." Or perhaps they should have repeated the word "compatible," because clearly they meant to say that the Free Pascal Compiler is compatible with Turbo Pascal and later also Delphi.

    16. Re:Short FPC history and goals overview by Bitbeisser · · 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 never written a single program in Pascal, they just parrot what they heard elsewhere...

    17. Re:Short FPC history and goals overview by illtud · · Score: 1

      Isn't that what he said? (using parentheses rather then bold)?

    18. Re:Short FPC history and goals overview by illtud · · Score: 1

      no it isn't, ignore me.

  2. I remember by Anonymous Coward · · 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.

    1. Re:I remember by Anonymous Coward · · 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.

    2. Re:I remember by Anonymous Coward · · 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.

    3. Re:I remember by Anonymous Coward · · Score: 0

      Yeah. gcc. enabler of cyberwar. Does not suck. Rather it acts like acid.

    4. Re:I remember by Anonymous Coward · · 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 shit.

      Meanwhile, I was happily hacking the Macintosh with its linear addressing space. Not that I didn't see 8086 addressing happen; MS Word 1.0 ran a bytecode VM that used segmented addressing and couldn't run higher than 1 meg in memory. Switcher/Multifinder had to give it special (as in education) handling by allocating other apps from the top of memory down.

    5. Re:I remember by Anonymous Coward · · 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.

    6. Re:I remember by Gramie2 · · Score: 2

      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 they try to slip in restrictions in new EULAs, and back off if they get caught.

    7. Re:I remember by Anonymous Coward · · Score: 0

      It just means IT is somewhat precarious if people cannot afford 1000 dollars for a great tool. Ask what a Hilti drill costs...

      How about buying a different Hilti drill for each customer or environment you work in?

    8. Re:I remember by Anonymous Coward · · Score: 0

      To be honest, when I went from TP to GCC, it felt backward manually managing compilation order.

      Meanwhile, 20 years later nothing has changed. Still the only solution seems to be patchy stuff like autotools.

      I hope that the planned modularization of C++ will get back to C too in time.

    9. Re:I remember by Bitbeisser · · 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... >:)

  3. Free Pascal is awesome. by shihonage · · Score: 5, Interesting

    I wrote a DOS game in 1996 in Turbo Pascal which used $B800:0000 textmode space to display the action. Thanks to Free Pascal I successfully ported it to Windows... of course minus the literal memory addressing and such.
    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".

    1. Re:Free Pascal is awesome. by MightyMartian · · Score: 4, 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.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    2. Re:Free Pascal is awesome. by jonwil · · Score: 1

      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.

    3. Re:Free Pascal is awesome. by Anonymous Coward · · Score: 0

      Pascal embodies the spirit of solid Swiss technology while C embodies the spirit of McDonald's.

      Two bozos of the phone company won out against a team of computer science titans and the Algol language tradition.

      But hey, the world would be boring if it did not allow an army of mafiosi computer woodpeckers to run amok in our greatest machines !

    4. Re:Free Pascal is awesome. by Anonymous Coward · · Score: 0

      Due to the good work of the GCCS, we now have two promising languages in the heritage line of Algol again: Rust and Swift. Both do give a f**k when you have an integer over- or underflow. Both will give a f*** when you under- or over index a vector.

      I just wait for the Forces Of Dark to undermine these efforts. "They could only do this terror attack because their computers were programmed in Swift and therefore unhackable for Global (in)security. Boohoo. Kill Swift !!!"

    5. Re:Free Pascal is awesome. by Anonymous Coward · · Score: 0

      I wrote a couple of great programs in Lazarus/FP last year that generate code for Slimbox photo galleries, and another that generates HTML links for lists of PDFs for sites. The interfaces look great, and code is nice & tight, and thankfully have had lots of downloads!
      If more people used FreePascal and Lazarus to create new software it would be fabulous!

    6. Re:Free Pascal is awesome. by ChrisMaple · · Score: 0

      Pascal embodies the spirit of petty pedantry. C gets the job done.

      --
      Contribute to civilization: ari.aynrand.org/donate
    7. Re:Free Pascal is awesome. by Halo1 · · Score: 4, 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 you may want to use instead.

      --
      Donate free food here
    8. Re:Free Pascal is awesome. by Anonymous Coward · · Score: 0

      yah got that backwards, chief

    9. Re:Free Pascal is awesome. by Anonymous Coward · · Score: 0

      To be more specific, Borland and Apple both used UCSD extensions (units, etc.) in their Pascals. They were roughly similar except that Borland's hack job of Object Pascal was more like they got some college student to do a poor imitation of early C++ as a summer project. It was apparently bad enough that they changed it for Delphi. But to be fair they did it because their memory allocator was total crap, which was mostly because of Intel's segmented addressing. The Macintosh had a very nice memory allocator built in, and Apple's Object Pascal used it well.

    10. Re:Free Pascal is awesome. by DrXym · · Score: 1
      C became predominant because code ran faster, was generally more portable (more commonality, less proprietary extensions between competing compilers), more terse / expressive, was better able to talk with the operating system (strings, structs etc.), was the defacto language on some operating systems and it was the first system programming language many people encountered.

      Pascal eventually overcame many of its shortcomings but by then it was too late. C (and the emerging C++) had already gained dominance and mindshare.

    11. Re:Free Pascal is awesome. by silentcoder · · Score: 1

      Worth mentioning that FPC will also let him port his program to Linux with minimal effort as the units are almost entirely identical.

      --
      Unicode killed the ASCII-art *
    12. Re:Free Pascal is awesome. by silentcoder · · Score: 1

      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"

      --
      Unicode killed the ASCII-art *
    13. Re:Free Pascal is awesome. by Anonymous Coward · · Score: 0

      Certainly it had nothing to do with a certain group of people wanting computers to be insecure. No, can't be.

    14. Re:Free Pascal is awesome. by Anonymous Coward · · Score: 0

      "Pascal embodies the spirit of solid Swiss technology while C embodies the spirit of McDonald's."

      I'm really sorry you weren't smart enough to understand and use C. That seems clear because your analogy is utter nonsense.

      I took what, at the time, seemed the usual arc of professional programmers back then. Basic / Assembly -> Pascal -> C -> C++. All the while, assembly was present with many database and scripting languages coming and going.

      I spent a fair bit of time with Object Pascal (the forerunner of Delphi). I liked Pascal.

    15. Re:Free Pascal is awesome. by rochrist · · Score: 2

      I also loved Pascal. Getting the UCSD Pascal system for my first Apple II was a life changing event!

    16. Re:Free Pascal is awesome. by rochrist · · Score: 1

      Lighten up, Francis.

    17. Re:Free Pascal is awesome. by DrXym · · Score: 1

      You're right. It wasn't. Nutcase.

    18. Re:Free Pascal is awesome. by StormReaver · · Score: 1

      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. The rest of my career was then driven by C-like languages. Looking back, I chuckle at how such a profound life decision was decided by a random act of convenience.

  4. Great work! by SirJorgelOfBorgel · · Score: 3, 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.

  5. Re:WHY? by Anonymous Coward · · Score: 0

    Does anyone use Pascal any more?

    Yes.

  6. People still use 16 bit MS-DOS? by Anonymous Coward · · Score: 0

    I thought that I was the only person who used MS-DOS. I used to play with Free Pascal for MS-DOS but I stopped because I haven't had much free time. I run Free Pascal on my old Windows XP computer.

    1. Re:People still use 16 bit MS-DOS? by Anonymous Coward · · Score: 0

      There's free dos too, if you didn't know.

  7. nice for historical reasons by Anonymous Coward · · Score: 0

    It's nice for historical reasons and legacy code.

    However, I think any competitive modern general purpose programming language needs a good garbage collector (with optional manual storage management) and an excellent FFI. Unfortunately, Free Pascal doesn't seem to offer either.

    1. Re:nice for historical reasons by Anonymous Coward · · Score: 0

      Im sure you mean that the other way around. NO language needs a garbage collector, though an option to use one selectively would be nice.

    2. Re:nice for historical reasons by Anonymous Coward · · Score: 0

      However, I think any competitive modern general purpose programming language needs a good garbage collector [...]

      LOL. Do you even code?

  8. Pascal Changed my life by wassomeyob · · Score: 2

    I could show this article to my wife and truthfully say "we would not have met and had offspring if it weren't for this computer programming language you've never heard of". My first real job that eventually led to a career and a move to this city was because I had done work in school on a parser for Pascal, ended up programming on an HP1000 mini (RTE-XL), meeting her, getting married etc etc. Then I think, 'heh, never mind'. Very nostalic; glad to see it's out there. Thanks, Pascal.

    1. Re:Pascal Changed my life by Anonymous Coward · · 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.

    2. Re:Pascal Changed my life by Anonymous Coward · · Score: 0

      Way to go! There's some great component libraries for Lazarus but we'd love to see more if anyone knows how!!

    3. Re:Pascal Changed my life by Anonymous Coward · · Score: 0

      > I could show this article to my wife and truthfully say "we would not have met and had offspring if it weren't for this computer programming language you've never heard of".
      "A man can dream..."

  9. Re:WHY? by Halo1 · · 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 :)

    --
    Donate free food here
  10. Re:WHY? by Nyder · · Score: 2

    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...

    There are some pascal compilers for cp/m. Enjoy.

    --
    Be seeing you...
  11. Re:WHY? by HotNeedleOfInquiry · · Score: 4, Informative

    Because there's a buttload of legacy embedded apps running it? I know of at least 20 I've had my hands near, including one running on the International Space Station.

    --
    "Eve of Destruction", it's not just for old hippies anymore...
  12. Tandy 1500? by AndyKron · · Score: 1

    Will it work on a Tandy 1500 laptop?

  13. Re:WHY? by MightyMartian · · Score: 2

    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.

    --
    The world's burning. Moped Jesus spotted on I50. Details at 11.
  14. Put it in the library by tepples · · Score: 1, 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.

    1. Re:Put it in the library by Anonymous Coward · · Score: 0

      Reference counting is not garbage collection.

    2. Re:Put it in the library by Anonymous Coward · · Score: 0

      In a weak sense it is GC - it just cannot collect cyclic object graphs.
      In a strong sense it is a real-time-capable GC mechanism. The software engineer can control how long the garbage collection efforts will take. Also, one thread can do GC while the others just hum along. (Yes, I know for physically hard realtime you do not use heap allocations/deallocations except during system boot-up and system shutdown. Soft-realtime is still very important for things like GUIs. Apple's great success rests in no small part on a GUI which does not block the user)

    3. Re:Put it in the library by Anonymous Coward · · Score: 0

      Also with refcounting you can have one set of threads with soft-realtime (use the heap via new() and refcounted deallocation) and a set of hard-realtime threads which simply never operate the heap.

      The trick to liberate yourself from the CS propaganda wars is to deconstruct the simpleton arguments which are thrown around in defense of the mainstream stuff.

      Look at Swift and Rust. Debug major parts of your program during compile time, instead of during "customer runtime".

    4. Re:Put it in the library by Anonymous Coward · · Score: 0

      >> Reference counting is not garbage collection.
      > In a weak sense it is GC

      No, reference counting itself is not a way to do garbage collection, although some GCs use it as part of their algorithms.

      You can count references till the cows come home, but if you never free anything, it's not GC.

  15. i was about to try it.... by Anonymous Coward · · Score: 1, Funny

    But then I saw the systemd requirement, and decided to pass.

  16. OpenWatcom by Wootery · · Score: 1

    Speaking of ye olde compilers, OpenWatcom 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.

    1. Re:OpenWatcom by Reziac · · Score: 1

      There may not be much left to change or update. But the project itself is still alive, far as I can tell.

      --
      ~REZ~ #43301. Who'd fake being me anyway?
    2. Re:OpenWatcom by Wootery · · Score: 1

      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.

  17. C vs Pascal == Perl vs Python by DrYak · · Score: 2, 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.

    --
    "Sufficiently advanced satire is indistinguishable from reality." - [Tips: 1DrYakQDKCQ6y52z6QbnkxHXAocMZJE61o ]
    1. Re:C vs Pascal == Perl vs Python by Anonymous Coward · · Score: 0

      C is a hugely successful attempt to throw computer science back to the days BEFORE Fortran. The phone company and their olive clad buddies successfully fucked up computers. Now they have an additional playground they call "cyber war domain". Largely due to their friends and business partners from The Phone Company.

      Read this carefully: https://en.wikipedia.org/wiki/Operation_Ivy_Bells#Use

      And those "smart" IT folks ? They will consider themselves "intelligent above average" at the same time while regurgitating the talking points of the phone company/military contractor.

      Bitte einmal kotzen.

    2. Re:C vs Pascal == Perl vs Python by Anonymous Coward · · Score: 0

      its tendency to try to hide some low level details on the grounds of making it easier to learn

      What's an example of that in Pascal?

    3. Re:C vs Pascal == Perl vs Python by DoctorBonzo · · Score: 1

      at some point I completely gave up on Pascal because there wasn't any 'return' statement available in functions thus forcing ridiculous amounts of indentation.

      or maybe I was just ignorant?

      is there one now?

    4. Re:C vs Pascal == Perl vs Python by Anonymous Coward · · Score: 0

      Just use the Exit statement. See Free Pascal's wiki page on Exit and also Embarcadero's docwiki for Delphi. You can also use the built-in result variable to set a function's result value.

    5. Re:C vs Pascal == Perl vs Python by dwywit · · Score: 1

      You're not ignorant. Pascal sucks.

      --
      They sentenced me to twenty years of boredom
    6. Re:C vs Pascal == Perl vs Python by Anonymous Coward · · Score: 0

      Pascal sucks because it has Exit in both FPC and Delphi? Maybe you should read up on Object Pascal. It's a nice language.

    7. Re:C vs Pascal == Perl vs Python by Anonymous Coward · · Score: 0

      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.

      You despised it is tendency?

      Stupid nigger.

    8. Re:C vs Pascal == Perl vs Python by Anonymous Coward · · Score: 0

      I think he might be referring to not needing to deal with memory management unless you want to.

    9. Re:C vs Pascal == Perl vs Python by Toshito · · Score: 1

      I see that you forgot to take your meds today!

      --
      Try it! Library of Babel
    10. Re:C vs Pascal == Perl vs Python by Anonymous Coward · · Score: 0

      >> 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.

      Well, I don't know about the "etc", since many commands are quite similar: while/while, repeat-until/do-while, if/if, case/switch...

      Comparing operators like Pascal's [and &&], [or ||], [mod %], I'd say Pascal is clearer (particularly, percent as modulo is much worse than "mod"). I don't think that qualifies as verbose.

      But I agree on "begin end"... that sucked. That was the sole point on which C was better IMHO. Still the "{ }" pair is not ideal. I'd rather have some box drawn around a command block to indicate grouping (in those ancient times, there were "line drawing" chars which could be used to that end).

      Also, some C code formatting conventions quickly made that advantage disappear... this I found OK:

      if A then
              {
                command1;
                command2;
                etc.
              }

      but the following sucked:


      if A then {
                command1;
                command2;
                etc. }

      >To each his own preferences.

      Surely, you're absolutely right.

      But we should have people using Pascal more frequently in current times; it's sad everybody went for C... outside system programming (kernel etc.), it's not even that important or needed... Pascal would be fine.

      An important point is that people could never understand Pascal's evolution; instead they kept comparing C to p-machine Pascal, while Turbo Pascal was light years ahead of that.

  18. Re:WHY? by Anonymous Coward · · Score: 0

    Yes

  19. Pffft by Anonymous Coward · · Score: 0

    Just because YOUR mediocre business apps can tolerate random stops in program execution means not much. Other people need to handle events in less then 100ms ALL THE TIME. Some people don't tolerate shit in their GUIs and they do not want GC either. They run some of the most financially successfully companies. Because their GUI ergonomics does not suck due to GC.

    1. Re:Pffft by TapeCutter · · Score: 1

      Most business' neither need nor use a real time O/S. All applications that allocate random blocks of memory must find a way to deal with garbage collection, built-in GC makes it easy for the coder. Manual GC just means the coder must manage memory himself, which is mandatory on a proper real time O/S.

      --
      And did you exchange a walk on part in the war for a lead role in a cage? - Pink Floyd.
  20. Non-C-Operating Systems by Anonymous Coward · · Score: 0

    https://en.wikipedia.org/wiki/HP_Multi-Programming_Executive
    https://en.wikipedia.org/wiki/ICL_VME
    http://www.computer-museum.ru/english/algol68.htm
    https://en.wikipedia.org/wiki/Elbrus_(computer)
    https://en.wikipedia.org/wiki/Burroughs_large_systems#ALGOL

    Now, can somebody use Swift or Rust to create the post-cyber-war-domain operating system ?

    1. Re:Non-C-Operating Systems by Anonymous Coward · · Score: 0

      Don't forget MenuetOS

    2. Re:Non-C-Operating Systems by Anonymous Coward · · Score: 0

      Well, not knowing the details of that OS, it looks as if it is even more susceptible to cybernetic attack. Because using assembly code, there is no type checking whatsoever. C has at least some minimal type checks.

      The whole point of my message about Pascal- and Algol-based OSs was to demonstrate than one CAN create non-C based operating systems. My thesis is that we once had a much better state of OS security than we have now.

      My thesis is that the entire cyber war domain thing is not a necessity, rather it is caused by the C language and the Unix OS given away "for free". Like those "free blankets" given to the indians in order to infect them with nasty bacteriological diseases. At best, C and Unix are a "race to the bottom" and at worst they are part of a strategy of world domination by making all computers and networks "transparent".

      Quite nihilist in nature this concept, but who said the military folks want anything good for this world ? Maybe their goal is perpetual destruction and "living off warfare" and then creating a new warfare domain makes "business sense".

    3. Re:Non-C-Operating Systems by Anonymous Coward · · Score: 0

      Put away your tinfoil hat. The only reason C is risky is because it doesn't hold your hand. The authors said as much; it assumes people know what they're doing. It should be no surprise that clueless programmers can easily screw up and leave security holes in their software.

      "gets()" is the biggest flaw that's part of the standard library (not even part of the language itself) and that was deprecated as soon as the risks of using it became clear.

  21. Re:WHY? by Anonymous Coward · · Score: 0

    I'd happily do that if I had the time. Z80 was cool!

  22. What happened to Pascal, anyway? by swb · · Score: 1

    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't. What happened to it? Was it not really meant to be a "practical" language and meant to be kind of an advanced educational language? Did the growth of Unix-like systems on x86 push everyone into C? Did stuff like the availability of maybe Visual Basic or something grab the users who would have used Pascal?

    Circa 1986 or so, you wouldn't have thought "kind of a dead language, nobody uses it for anything anymore" and you wouldn't have thought it would get that way any time soon.

    1. Re:What happened to Pascal, anyway? by metamatic · · Score: 1

      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 the Oberon (Wirth) and Modula-3 (everyone else) communities to add OO, and Borland again did their own thing and ignored everyone else.

      Now we have Go, which takes C and adds in ideas from Modula and Oberon. And Free Pascal still isn't even compatible with 1982's standard ISO Pascal.

      --
      GCHQ Quantum Insert installed. If only our tongues were made of glass, how much more careful we would be when we speak
    2. Re:What happened to Pascal, anyway? by Anonymous Coward · · 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 isn't that old.

    3. Re:What happened to Pascal, anyway? by Anonymous Coward · · Score: 0

      Circa 1986 or so, you wouldn't have thought "kind of a dead language, nobody uses it for anything anymore"

      I don't think that circa 2015. You should check out Free Pascal, Lazarus, and Delphi. After using a lot of languages, tools, libraries and IDEs, I still haven't seen anything do rapid application development better than Delphi.

    4. Re:What happened to Pascal, anyway? by metamatic · · Score: 1

      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.

      --
      GCHQ Quantum Insert installed. If only our tongues were made of glass, how much more careful we would be when we speak
    5. Re:What happened to Pascal, anyway? by Anonymous Coward · · Score: 0

      The two major Pascal implementations (Free Pascal and Delphi) are fairly compatible with each other so it's not as fragmented as you think. I've ported applications from one to the other a few times and it wasn't too painful. It depends on the application's dependencies. If the application uses some component library that requires a particular version of FPC\Lazarus or Delphi then you'll have more trouble. Pascal isn't dead yet.

    6. Re:What happened to Pascal, anyway? by aberglas · · Score: 1

      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.)

    7. Re:What happened to Pascal, anyway? by Anonymous Coward · · Score: 0

      But it don't support pointer arithmetic.

      Both Free Pascal and Delphi can do pointer arithmetic.

    8. Re:What happened to Pascal, anyway? by MarioRayMahardhika · · 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 complete package which I can't find anywhere.

    9. Re:What happened to Pascal, anyway? by MarioRayMahardhika · · Score: 1

      But it don't support pointer arithmetic

      Seriously, you need to RTFM before stating such a thing: http://www.freepascal.org/docs...

    10. Re:What happened to Pascal, anyway? by Anonymous Coward · · Score: 0

      Pascal was the default language on the Mac. Personally, I used MPW C and 68K when needed. Awesome IDE in its day.

      You may recall that Str255 character strings were made from a byte indicating the length of the string followed by the actual characters.

    11. Re:What happened to Pascal, anyway? by metamatic · · Score: 2

      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...

      --
      GCHQ Quantum Insert installed. If only our tongues were made of glass, how much more careful we would be when we speak
    12. Re:What happened to Pascal, anyway? by Halo1 · · Score: 1

      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.

      --
      Donate free food here
    13. Re:What happened to Pascal, anyway? by Anonymous Coward · · Score: 0

      Every year the number of compilers decreases. I don't think there is much active beyond Delphi and Freepascal (and some Java and .NET ports that barely deserve the name Pascal).

      Delphi and Free Pascal are highly compatible. More than two random C++ compilers since even e.g. X86 ABI and COM compatibility is fully compatible

    14. Re:What happened to Pascal, anyway? by metaforest · · Score: 1

      Wizardry: Proving Grounds of the Mad Overlord by Sir-Tech, was written in Apple UCSD PASCAL.

    15. Re: What happened to Pascal, anyway? by techcodie · · 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?

      --
      last minute desperate solutions to impossible problems created by other fucking people.
    16. Re:What happened to Pascal, anyway? by MarioRayMahardhika · · 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:

      1. Smart Mobile Studio
      2. AVRco Pascal
      3. MikroPascal
      4. Vector Pascal
      5. paxCompiler

      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.

  23. Increment an pointer into an array by aberglas · · Score: 1

    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.

    1. Re:Increment an pointer into an array by Anonymous Coward · · Score: 0

      yeah, we know this is an important feature of the cyber war domain.

    2. Re:Increment an pointer into an array by Anonymous Coward · · Score: 0

      Not only through an array, you should be able to direct the pointer anywhere in order to crash the program or exploit bugs in the operating system.

    3. Re:Increment an pointer into an array by Anonymous Coward · · Score: 0

      Not in D. It is ultra efficient with "ref", please see documentation.

  24. after 23 years by Anonymous Coward · · Score: 0

    writeln('wtf');

  25. This simplifies porting from Delphi by Barryke · · Score: 1

    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.

    --
    Hivemind harvest in progress..
  26. Re:WHY? by OrangeTide · · Score: 1

    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.

    --
    “Common sense is not so common.” — Voltaire
  27. Pascal in the real world? by Anonymous Coward · · Score: 0

    Ok, so like most anyone my age we learned TP in school and it was totally cool. But i have *never* seen straight pascal used out in the business world. I'm sure it is, but where? I dont even see Delphi anywhere, other than a few opensource items..

    I'm not saying it doesn't happen, i just haven't seen it so i am curious.

    1. Re:Pascal in the real world? by Anonymous Coward · · Score: 0

      I've seen a Delphi GUI written to control custom lab equipment.

    2. Re: Pascal in the real world? by Anonymous Coward · · Score: 0

      The Skype client was written using Delphi

    3. Re:Pascal in the real world? by rochrist · · Score: 1

      First two programming jobs I had we're Pascal. I'm sure it's used far less now, but /something/ is keeping Delphi alive and supporting those astronomical price tags.

    4. Re:Pascal in the real world? by Anonymous Coward · · Score: 0

      Yes, which is part of why i'm confused. You see other things like .NET and java everywhere.. but with the costs of Delphi and that its been around so long and still going means someone is using it.. but who ???

    5. Re:Pascal in the real world? by MarioRayMahardhika · · 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... From Lazarus/FPC wiki: - http://wiki.lazarus.freepascal... - http://wiki.lazarus.freepascal... - http://wiki.lazarus.freepascal...

  28. Re:WHY? by Anonymous Coward · · Score: 0

    Another yes.

  29. Re:WHY? by Anonymous Coward · · Score: 1

    Some of the Canon pro-sumer cameras are running DOS as well.

  30. Re:WHY? by Bitbeisser · · 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...

  31. re: ISS by Anonymous Coward · · Score: 0

    Howard? Howwwwwward!

  32. Hewlett-Packard Multi Processing Executive by Anonymous Coward · · Score: 0

    HP's MPE was a highly successful operating system first for small and medium and later also for large-scale computer systems. MPE was used in order to run the business side of large enterprises doing warehouse management, order processing, manufacturing process management (on the higher levels of control). The large systems had multiple CPUs and could easily handle several thousands of user terminals.

    MPE can be considered HP's competitor to the S/360 mainframe by IBM.

    It was programmed in a Pascal variant.

    Customers were highly loyal to MPE and by all accounts I am aware of, it was not killed due to a lack of revenue by customers. Rather, HP was "convinced" by "partners" like Oracle to kill MPE, because it was a competitor in the relational database business. MPE was highly integrated with a database system used by most customers for their applications. The "rationale" by HP was that they needed Oracle for their "future" HPUX business and were so cowed by Oracle that they killed MPE in order to placate Oracle.

    Killing MPE certainly was a large nail driven into the coffin which is currently constructed for this once great company and their great products.

  33. Legacy's fine in Delphi XE 2/4 for me so far by Anonymous Coward · · Score: 0

    I'm able to use classic syntax (but I end up moving it to FULLY QUALIFIED System. object ancestors in classes calls that technically should yield control back from application to OS faster in the end (yet no filesize OR PERFORMANCE gain difference exists I've seen for doing it other than faster compile times, which tells me it's already abstracting away classic legacy calls to those System. ones on compile anyways) just to avoid things I've heard of in say, Python, where control isn't ceded to the OS on file flush/close cycles immediately IF you use elder classic legacy code due to the above being abstracted away in modern Delphi).

    E.G./I.E.:

    program APKHostsFileRewriter64; //64-bit CONSOLE app... apk
    {$APPTYPE CONSOLE}
    {$R *.res}
    {$define nodebug}
    {$STACKCHECKS OFF}
    {$D-} //will prevent placing Debug info to your code.
    {$L-} //will prevent placing local symbols to your code.
    {$O+} //will optimize your code, remove unnecessary variables etc.
    {$Q-} //removes code for Integer overflow-checking.
    {$R-} //removes code for range checking of strings, arrays etc.
    {$S-} //removes code for stack-checking. USE ONLY AFTER HEAVY TESTING !
    {$Y-} //will prevent placing smybol information to your code
    uses
      System.SysUtils, StrUtils;
    var
      Ch:ShortString;
      F1:TextFile;
      F2:TextFile;
    begin
      try
          System.AssignFile(F1, Trim(PWideChar(ExtractFilePath(ParamStr(0)) + 'ToReadInURL.txt')));
          System.Reset(F1);
          System.AssignFile(F2, Trim(PWideChar(ExtractFilePath(ParamStr(0)) + 'ToWriteOutLeadBlockIP.txt')));
          System.Rewrite(F2);
          Sleep(5);
          while not Eof(F1) do
            begin
              try
                System.Readln(F1, Ch);
                Ch:= Trim('0.0.0.0 ' + System.SysUtils.LowerCase(Trim(Ch)));
              finally
                System.Writeln(F2, Ch);
              end;
            end;
            System.Close(F1);
            System.Close(F2);
            System.Flush(F1);
            System.Flush(F2);
      except
        on E: Exception do
        begin
          System.Close(F1);
          System.Close(F2);
          System.Flush(F1);
          System.Flush(F2);
          System.Writeln(E.ClassName, ': ', E.Message);
        end;
      end;
    end.

    APK

    P.S.=> Take away System. above, you have classic/legacy pascal file I/O & yes, it works - but I do think it ends up abstracting away to the new methods (which ought to be superior for filehandling to be passed back to the filesystem & OS faster)... apk

  34. A matter of time before I port this to Linux by Anonymous Coward · · Score: 0

    See subject & this APK Hosts File Engine 9.0++ SR-4 32/64-bit http://start64.com/index.php?o... since FreePascal & it's Lazarus IDE are compatible with the Delphi XE4 code its written in!

    * :)

    (That is, if the NEXT version of Delphi, XE12 iirc, doesn't have Linux ports available to it by then like it did in Kylix (Delphi for Linux that was discontinued)).

    APK

    P.S.=> As is, Delphi can target 32/64-bit (& 16-bit before them in older Delphi compilers) @ both console mode/tty terminal/DOS window + GUI apps on Windows, MacOS X & Android + more in the "IoT"... apk

  35. Actually I've seen different... apk by Anonymous Coward · · Score: 0

    See subject: Well, not EXACTLY but I've seen Delphi's Object Pascal outrace MSVC++ & VB back in the 1997 issue of VB Programmer's Journal - Delphi tore them up in 4/6 tests (losing only 1 outright & so did MSVC++ oddly, loading ActiveX forms, which VB actually won using a TRUE compiler in VB5 (watered-down C++ one that probably lacked some things like loop unrolling)).

    ESPECIALLY IN MATH & STRINGS WORK (Delphi did more than a DOUBLING their performance in those areas) - WHICH, face it, EVERY PROGRAM DOES!

    (That's when Delphi 2.0 took me away from Microsoft stuff in MSVC++ &/or VB - oh, I still used them on the job as it demanded, & they're ok - but I like Object-Pascal a LOT better... It's just better in a LOT of ways imo & experience (23++ professionally as a programmer-analyst/software engineer & 13 more before that as an amateur-hobbyist...)

    APK

    P.S.=> Sept./Oct. issue of Visual Basic Programmer's Journal issue entitled "Inside the VB5 compiler"... apk

  36. Nothing: Been using it steady for 2++ decades by Anonymous Coward · · Score: 0

    Borland Delphi 1.0-7.0 in 16-32 bit & Delphi XE2 & 4 in 32-64-bit & still building freewares in it to this very day (though I pretty much retired after 2008 & only work part-time consulting now) building tools like APK Hosts File Engine 9.0++ SR-2 here http://start64.com/index.php?o...

    * :)

    FREE, not 'souled-out' to advertisers + adds speed, security & reliability. Does FAR more w/ FAR less more efficiently vs. redundant browser addons & locally installed DNS servers @ home + fixes DNS' many security issues & it stops a LOT of tracking @ webpage + DNS levels combined too from 1 file you NATIVELY have - firewalls do the rest (on lesser used IP address based tracking vs. host-domain name type).

    ---

    It obtains data vs. threats & for adbanner blocking from 10 reputable sites in the security community!

    ---

    It SPEEDS YOU UP 2 ways (adblocking + locally cached in RAM favorites placed @ TOP of hosts for fastest resolution speed vs. remote DNS (aids reliability)) vs. other "so-called security 'solutions'" SLOWING YOU!

    ---

    It does all that via something you natively have vs. "bolting on browser addons 'MOAR'" that's usermode slower & increases messagepassing, cpu + ram overheads!

    ---

    MalwareBytes' hpHosts Admin (MalwareBytes employee) hosts & recommends it -> http://hosts-file.net/?s=Downl... & MalwareBytes = BEST antivirus per this VERY recent testing of them all http://www.av-test.org/en/news...

    &

    It's safe proven by 57 antivirus programs recently in BOTH its 64-bit model https://www.virustotal.com/en/...

    +

    In its 32-bit model too https://www.virustotal.com/en/...

    So is its installer -> http://f.virscan.org/APKHostsF...

    APK

    P.S.=> By "yours truly" - "The Lord of Hosts" so-to-speak:

    "The image this title brings to mind is of a mighty military commander, one who can at a mere word summon rank upon rank of protective power" from https://answers.yahoo.com/ques... & THAT WORD = hosts!

    (Accept NO substitutes!)

    ...apk