Nick Hodges

Random Thoughts on the Passing Scene #87

01 Oct

12 Responses to “Random Thoughts on the Passing Scene #87”

  1. 1
    m. Th. Says:

    Hi Nick,

    In D2009 Reviewers Guide one can read:

    "One should note that Delphi 2009 is built using itself. Other CodeGear tools built using Delphi 2009 include Delphi for PHP and Blackfish SQL."

    Hmmm… Are you sure that Blackfish SQL is built using Delphi 2009?

  2. 2
    Dennis Says:

    The reviewers guide is great - not only for reviewers but for developers, too!

  3. 3
    Ken Knopfli Says:

    I have it from another source that the compiler itself is written in C. Way, way back I also heard assembler machine code exists, too. Fair enough.

    But the IDE: A .NET runtime install is still necessary. IIRC, didn’t someone say this is because useful functionality in .NET is being implemented (which, by implication, is not available in Delphi Win32)?

    My question therefore: Is the D2009 IDE written in Delphi.NET or Delphi Win32?

  4. 4
    Fabricio Says:

    When you port a language to a new platform, you need to build an ‘alpha’ (this thing have an official name in Computer Science? If it have, I don’t remember) compiler (in C, Assembly or any other language available that generates native and fast object files - i.e executables, libraries, partial object files, etc). After that, you create the ‘official’ compiler - the one that which will compile itself and generate the executables. Of course, the language must be powerfull enough to be able to create a full-blown compiler.

    AFAIK, VB pre-dotnet wasn’t - it generated native executables preprocessing VB code to C(or C++, I don’t remember) - and no, I confirm this. An experienced VB programmer has shown it to me.

    So, Delphi is written in Delphi. *Maybe* there was an ‘alpha’ when:
    * Delphi 2 (porting the language para Win 32bits)
    * Delphi 8 (porting the language to .NET framework)

    It’s all a guess, of course.
    Best regards,
    Fabricio

  5. 5
    Fabricio Says:

    Oh, I forgot to list Kylix.

  6. 6
    Andrey Says:

    I don’t use Interbase and I feel myself very good

  7. 7
    Michael Madsen Says:

    @Fabricio: Like Ken said, it’s not the compiler that’s written in Delphi, it’s the IDE. When on the delphi.org podcast, Barry Kelly mentioned that the [Win32] compiler is written in C (he should know, being on the compiler team and all!). I don’t know about the Delphi.NET compiler, though.

    For a compiler to compile itself, it must be language compatible with whatever was used to create the original compiler, or, there must be an interpreter, in which case the compiler doesn’t exist in compiled form until it has compiled itself. (Phew!)

    @Ken: It’s compiled using the Win32 compiler, as you can tell by attempting to open the IDE in a program like Reflector (it will complain that there’s no CLI header). The .NET stuff (mainly reflection, IIRC) is accessed from Win32 using COM interop (this can be done from any Win32 application).

    The reason for the reflection being implemented in .NET is probably that .NET has CodeDOM. AFAIK, this makes it much easier to perform reflection: by implementing a CodeDOM provider, you have a language-agnostic way of doing things - it doesn’t matter if the source code is really C# or Delphi or even LOLCODE; the same piece of code can be used as long as it works with the CodeDOM.

    At least, that’s how I understand it to work.

  8. 8
    Nick Hodges Says:

    Here’s a summary:

    BDS.EXE and all the BPL’s used by the IDE are written in Delphi.

    The compiler is written in C. All our compilers are.

    The Code Editor is a DLL written in C/C++.

    We use our own compilers for 100% of the build process.

    Nick

  9. 9
    donald shimoda Says:

    Nick, you forget to mention the .NET parts of Delphi.

    Best regards.

  10. 10
    Pratt Says:

    Newsgroups are again not working again.

    Why Codegear website is so slow ?

    Why should we buy something from a company that can’t even get website and newsgroups to work properly ?

  11. 11
    Kent Morwath Says:

    They still believe they can mimic MS… and keep on wasting resources writing software they should get from a reliable source, there are lots of good FOSS newsgroup/forum applications, but of course they don’t run on the Database Noone Needed, aka Blackfish. I was also surprised they choose BF over Interbase…

  12. 12
    Javier Santo Domingo Says:

    Hi Nick,

    I totally agree with "The wizard behind the curtain" and his article "Why Is Native Code Development Still Thriving".

    Hopefully many will realize about the native code relevance in the current market.

Leave a Reply

© 2009 Nick Hodges | Entries (RSS) and Comments (RSS)

Your Index Web Directorywordpress logo
Close