Page 2 of 2 FirstFirst 12
Results 11 to 14 of 14

Thread: Delphi XE4 is out, supporting Windows, OS X and iOS!

  1. #11
    PGD Staff / News Reporter phibermon's Avatar
    Join Date
    Sep 2009
    Location
    England
    Posts
    510
    Ok just read their whitepaper, they use LLVM for ARM compilation only. still using their old compiler for Windows/OSX.

    I don't know why they didn't carry on using FPC, for some bizarre reason they've chosen one open source compiler chain (LLVM) over another (FPC) using open source as a justification for doing so.

    They took an already tested solution (FPC) and replaced it with a a new solution, for no good reason whatsoever.
    Last edited by phibermon; 25-04-2013 at 01:23 AM.
    When the moon hits your eye like a big pizza pie - that's an extinction level impact event.

  2. #12
    phibermon, the reason to switch to LLVM, as far as I know, was due to new Delphi's language features.

    According to Embarcadero Wiki:
    DCCIOSARM is based on a ground-up implementation of a new compiler front end, tied to LLVM as the compiler backend.
    For some new language features, check Migrating Delphi Code to iOS from Desktop and Automatic Reference Counting in Delphi Mobile Compilers.
    Last edited by LP; 24-04-2013 at 08:19 PM.

  3. #13
    PGD Staff / News Reporter phibermon's Avatar
    Join Date
    Sep 2009
    Location
    England
    Posts
    510
    I did have a good read of their whitepaper, there's some changes specifically related to the handling of reference counted strings for that target. The new setup is better for certain access patterns, plus having LLVM is bonus I guess, there's a lot of good work being done in terms of optimizations for the intermediate bytecode. But that's only going to be taken advantage of with new builds of the compiler. I would be an awful lot happier with the decision if there was more of a commitment to incremently update the compiler in order to properly take advantage of the work being done on LLVM, bugs fixed etc
    When the moon hits your eye like a big pizza pie - that's an extinction level impact event.

  4. #14
    Quote Originally Posted by phibermon View Post
    I don't know why they didn't carry on using FPC, for some bizarre reason they've chosen one open source compiler chain (LLVM) over another (FPC) using open source as a justification for doing so.
    Afaik they never planned too. FPC is GPL based, so any enhancement would have had to be donated back (*). I assume they originally used FPC mostly to speed development by developing their libs with FPC in parallel with their compiler work, but then their compiler development was slower than planned they couldn't release it. Because they made promises, they had to release something, so they released it FPC based.

    FPC got a lot of flak for that (not supporting the language features of XE2), but we never a part of that decision, and Embarcadero never did any work on it themselves (or never released it)

    I assume the current XE4 language limitations are just to test the water how resistant the user base is against (Java/C# imitation) change. They want the language to get a more modern face in the hope they attract new (not delphi originating) users, that demand a form of GC no matter what.

    IOW I think those language incompatibilities are deliberately done, and not because of LLVM or other technical reasons.

    (*) Note that there was not one single line donated back to FPC from XE2! They probably got out of their way to avoid this, though I attribute that more to lawyer paranoia than malice.
    Last edited by marcov; 03-08-2013 at 09:26 AM.

Page 2 of 2 FirstFirst 12

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •