back to article The Sons of Kahn and the assembly language of the internet

Editor's Note: Verity Stob's Chronicles of Delphi [King James ed.] began in 1996. The most recent translations can be found here: The Sons of Kahn and the Pascal spring and here: Sons of Kahn: The Apocrypha. Zany adventures with Zarco and Marco And the users of Delphi had become old with the passage of years, and had taken …


This topic is closed for new posts.
  1. Martin Silver badge

    "Restrain thou thy equine quadrupeds."

    Love it.

  2. All names Taken

    I vote 10 out of 10 for this masterly (and mistressly?) piece of work.

    May one accept the prose as a seasonal greeting card from El Reg?

  3. Mark #255
    Thumb Up

    Genius, Ms Stob.

  4. Marco van de Voort

    Lazarus 1.0 ?

    I had expected a remark about Lazarus going gold (1.0)

  5. Anonymous Coward
    Anonymous Coward

    > And if a few users of Delphi had turned their hands to writing JavaScript-that-is-the-assembly-language-of-the-internet, then most had not followed these filthy traitors into the perverse ways of the curly bracket.

    I...I was just holding this JavaScript for someone else. It's not mine.

    We didn't upgrade from XE2 to XE3 despite some serious prompting from Embarcadero's sales guys. Something felt wrong. Now I know what they weren't telling us and feel we dodged a bullet....

    1. Andrew Moore


      Though never a Delphi programmer (a C/C++ programmer from the Turbo days) I just haven't bothered updating since XE1. I remember that they threw in RadPHP (or whatever it was called) for free- I looked at it once and never again.

  6. Spoonsinger

    The only reason why we say 'Ah' is

    because we would have gnashed teeth - but they aren't ours.

    (Appropriate Delphi 7 developer icon - i.e. one maintenance project away from a park bench and a can of Zyweic.

  7. dajames Silver badge
    Thumb Up

    Nice one, Verity ....

    Just one thing ... I think they spell it InBorCodeGearO ... or something like that.

  8. This post has been deleted by its author

  9. This post has been deleted by a moderator

    1. Anonymous Coward
      Anonymous Coward

      Re: C# is dead

      I have put my german-language skills to good use today (I acquired them AFTER the hegemonistic outreach but BEFORE the Euro crisis) and acquired the 2013/01 edition of iX Magazin (2013? A ridiculous date; sounds like the far future of some Hollywood flick). This is a special issue about "Programming today". So what Programming Languages are being named?

      The JVM Series: Scala, Groovy, Clojure; also JRuby, Ceylon and Kotlin. Related: JavaFx apparently is trending.

      The C/C++ Series: C++11, D (detrending) - and remotely, Go

      The JavaScript Series: CoffeeScript, TypeScript and Dart. Related: Node.js.

      C# isn't even being mentioned. Maybe there is something about it on the included CD.

    2. dogged

      Re: C# is dead

      Eadon tells lies about C#.


      Dead? Deserted? Abandoned? Or expanded, enhanced and built in to MS's latest operating systems as a fundamental piece which (with .NET 4.0) physically cannot be uninstalled or removed without trashing the OS

      Eadon. You liar. The only problem is that your lies are always so stupid - nobody with a brain would ever think about believing them.

      1. Ken Hagan Gold badge


        You might as well argue that x86 assembly language isn't dead because you can't remove the x86 support from your PC without taking a soldering iron to the processor. Oh, yeah, and it has also been expanded and enhanced in recent years.

      2. This post has been deleted by a moderator

      3. eulampios

        too dogged to see

        physically cannot be uninstalled or removed without trashing the OS

        AMOF, very little can be uninstalled or removed without trashing this very OS, that is a huge disadvantage contradicting the modularity principle of IT. (I wonder, what you can actually uninstall from those infamous 12GB of WIn8 RT bloat, for that matter)

        This is one of many reason why this OS is not as scalable and portable as it might and would be otherwise.

    3. Mage Silver badge

      Re: C# is dead

      It was a good rip off of Java and far better than the abomination called, which has 666 on its forehead. VB6 was the last real VB

      I have a Modula-2 compiler released when NT3.5 was young. It still compiles and runs native W32 applications on XP, I used to write DLLs in it and call them from VB6 and C++, as writing GUI code without a visual IDE is like loading MS Office via binary and toggle switches instead of reading a disk file. I really feel for the Tribe of Delphi. We do seem to be going backwards.

    4. Ian Yates

      Re: C# is dead

      "C# was a rip off of Java anyway"

      Except that... it wasn't. Sure, there are a lot of similarities to is, but that's like saying Java is a rip off of C++.

      C# has many influences in it (including Java), but it also had things like autoboxing, "foreach" iteration, and generics long before Java (no thanks to Oracle).

      On top of that, it has many features that Java still lacks entirely, then ot least of which is a well-defined Date/Time API.

      I'm a Java, C#, and C++ developer. Each language has strong and weak areas (productivity, expert cost, and maintainability included), but saying C# ripped anything off is doing a massive disservice to the team that designed it.

      Also, you can call C# a dead language as much as you want, but check the job listings for greenfield projects. Maybe London is unique in the world, but I have more work requests for my team doing C# than any other language.

      1. VaalDonkie

        Re: C# is dead

        C# is more akin to Scala than Java. If one wishes to compare apples...

      2. This post has been deleted by a moderator

        1. Ian Yates

          Re: C# is dead

          Ignoring that you've gone from "C# is a rip off of Java" to ".NET [...], just like Java" (which isn't the same thing):

          So you also believe that Java rips off UCSD Pascal, since that uses a VM for each process? Or that C++ rips off C?

          I completely agree that C# is an evolution of Java (which is being strangled to death by Oracle), but Anders thingamy (could look it up) was a major Pascal/Delphi guy, and there's a lot of those languages in (ignoring syntax) C# and .NET as a whole.

          Also, check out NGEN, which does compile .NET to a "native binary".

    5. Wardy01

      Re: C# is dead

      Wow could you be more full of it?

      C# is fundamental to the Win8 and beyond environment as the language of choice in enterprise for delivering applications quickly and to defined standards.

      All that open source bloat is just plain crap, you need 400 dependencies to fire up a basic console app.

      For example:

      I dare not try anything serious on php because every code sample I ever read written in it seems to have no understanding of the concept "team" or "standard" or "maintainable".

      Using something like MVC with C# blows that crap completely away.

      I think the reason put rubbish like this on public forums is to knock what Microsoft has achieved with windows 8, server 2012, and windows phone 8 ... a unified platform across all devices that all speak the same language and just work.

      The toolset comes as part of the product stack and again it just works!

      To install you simply setup the framework and visual studio and you are done, none of the chasing around for some botched third party component that you have to compile yourself that ultimately has only been tested to work if you have special other component installed which isn't compatible with something else you need.

      It's about time open source users got off their high horse and learnt what "productivity" means!

      1. Anonymous Coward
        Anonymous Coward

        Re: C# is dead

        >I think the reason put rubbish like this on public forums is

        I think it's because young PFY learns PHP and JS and thinks he's a good programmer. He bases his self worth on the fact that he is a good programmer. Any other language that is more complicated tarnishes that illusion, so young PFY feels the need to bash anything he doesn't know to preserve his illusion.

        See comparison between JS being the "assembler" of the web.

      2. This post has been deleted by a moderator

        1. Steve Knox

          Re: C# is dead

          This is a wonderfully ironic conversation, considering the language behind the original article.

          Old languages never die; they just become Vulture fodder.

        2. Wardy01

          Re: C# is dead

          @ Eadon

          I work for a multinational corporation that has teams delivering solutions on both .Net and Java platforms.

          When it comes down to it the CTO agrees with the following:

          The .Net teams are faster to react to any given business problem and more often than the java team are able to find a solution that meets the business requirements in a shorter time frame.

          The solution provided by .Net is easy to provision for at the infrastructural / systems level because other than installing IIS and .Net very little else is needed (these are often scripted deploys too).

          The Java equivilent usually results in this "rabbit hole effect" of dependency digging which takes time to both diagnose and remedy, often this time is considered an acceptable loss because the solution being delivered is required "for legacy purposes".

          I've seen this time and time again, products built on languages like delphi, php, and sometimes java are referred to as "legacy" because it so much time to build an effectively good solution on these platforms that the product is practically out of date upon release.

          I am a software developer and I have developed solution on both .Net and Java platforms ... I prefer .Net (which i'm guessing you already figured out), I think that at the end of the day though it comes down to what you want to achieve.

          If you want business applications that deliver business logic / processes and you need them fast that will out of the box definately work with everything in your IT environment .Net is the best choice for many reasons ...

          1. the licencing costs are already covered by your server licencing agreement.

          2. it will definately work with your existing windows based network (most businesses today are running windows)

          3. its fast and fully supported by the same company that's supports your server (convenience)

          If you are building drivers / firmware, then it makes sense to use something lower level because you need to in order to achieve your goals. This is the sort of thing that .Net is not designed to do (but can - from what I understand windows is written in C#).

          It's a simple fact, .Net is seen as the "quick and cost effective solution" for business applications.

          And this is exactly why C# is far from dead ... it's too core to the Microsoft technology stack.

          Although i agree that Silverlight was a complete balls up by Microsoft, but Silverlight is not C#.

          1. TheRealRoland

            Re: C# is dead

            @Eadon and others

            I think the English language is a rip-off. It clearly re-uses words, expressions and even letters used in other languages. French is so much better suited for everything.

            Everybody - sjeez. Use a language for what it's most suitable for. Yes, i'm sure i can write an RDBMS in Turbo Pascal using text files as storage. But because I can, should I?

            What does it matter what a particular programming language was based on? The writers/creators of that language saw that there was a problem with other programming languages, analyzed the issues, and came up with a new language that would hopefully solve those issues.

            Nobody forced you to use that language. Others looked at the language, determined the merits of using it, and started using it.

            If you don't agree (and some of you do, in a very childish way, i might add) what this language is good for - good for you. But at the very least don't use blanket statements such as 'this stinks', 'it's a toy', 'it's dead', etc.

            Sjeez, next time someone is going to tell everybody that Linux is much better than Windows (or Windoze, Window$, as the younger crowd here seems to be doing again). Or the other way around.

            Now, get off my lawn!

          2. Can't be anonymous coward :-(

            Re: C# is dead

            Obviously dependencies are less of a problem in the .Net world than in Java: there's not much to depend on in .Net, you either buy a packaged, paid-for solution, of which there aren't nearly as many for .Net as there are free solutions for Java, or invent your own wheels.

            OTOH, you obviously don't know your tools if dependency management is an issue in Java. Maven was invented a long time ago, is already well known and widely used, and completely solves the dependencies problem, including version management for dependencies, and also deployment, if need be.

            The typical workflow, as I know it, for .Net devs, is to manually build an installer from their local workstations, then run it on the target machine (or let admins run it). That's completely unprofessional in an enterprise environment. What's professional is to set up your project on jenkins and let jenkins handle the deployment in case of a successful build and test run. When you do it this way, it's not just dependency management that you get rid of, it's the actual deployment too. But of course, you need professionals to work with a professional system, and MS did everything in its power over the last 2-3 decades to de-professionalize the programming world.

            Right now, I'd say both Java and C# are in a tight spot, but C# more so than Java. While Oracle does anything in its power to transform Java into something else, it cannot - there are the older Java licenses, which make Java open for reimplementation for anybody respecting some simple rules, there is at least one comprehensive and to a wide extent perfectly compatible open source implementation of the platform, there are thousands, or more likely millions of companies using Java and contributing more or less to the open source ecosystem around it, and Oracle simply cannot change this. By contrast, MS was always the one single main source of direction for anything Windows. If it could afford to almost kill COM, it will probably be able to do the same with .Net. There's nothing to stand against MS's will, in the MS ecosystem.

            And then again, there's HTML5 and ECMAScript 5 and 6 in the pipeline, and python, and Scala, and ... the world is changing. I guess we won't have to put up with those enterprise-controlled languages for much more time now. I for one will jump ship to Scala as soon as customers start being comfortable with it, and customers already demand, rather than just passively accept, rich clients written using Javascript.

            1. Ian Yates
              Thumb Up

              Re: C# is dead

              "But of course, you need professionals to work with a professional system, and MS did everything in its power over the last 2-3 decades to de-professionalize the programming world."

              As someone who moved through C++, Java, and into .NET, I actually agree with you.

              I have a real problem trying to hire people who know/care what .NET is and how the CLR works, even at a high level.

              A GC is not some black magic that you should assume will do its job correctly, nor is the JIT. You need some understanding of what happens at run time in order to understand what tools are suited to what tasks. /rant

              That aside, anyone who "manually builds an installer from their local workstations" is in the wrong role or has their hands tied by a manager who is in the wrong role (I've been there).

              .NET has had brilliant CI and packaging tools for a long time (my current personal favourite being TeamCity), as well as NuGet, which can save hours, in the right hands.

    6. Anonymous Coward
      Anonymous Coward

      Re: C# is dead

      >C# is a toy

      Dream on noob.

    7. Anonymous Coward
      Anonymous Coward

      Re: C# is dead

      Ha ha, Eadon you knob, do you actually believe the stuff you write?

    8. Opwernby

      Re: C# is dead

      That would be true, except for just one thing: you're an idiot. C# is what Java should always have been: whereas Java is a bloated kludge of a language with only half a proper object model, C# is a real language which, fortunately, won't run on computers whose operating systems were developed in 1969 and which live entirely on shareware and hippy juice. My evidence for this is that (a) I'm smarter than you, and (b) I've been programming for longer than you. Oh, and (c) that I make more money at it than you.

      1. TheRealRoland
        Thumb Down

        Re: C# is dead


        "Excuse me sir, i couldn't help but notice i'm considerably richer than you!"

  10. Roger Greenwood

    "Delphi micturith upon the head of Vi Su-Albahsic"

    10 years, where did they go?

    Pint of Micturation.

  11. Fred Flintstone Gold badge

    Brilliant, just brilliant

    Yup, that produced a fair old chuckle.. Borland was also the company that managed to recompile Windows to make it run a heck of a lot faster than the Microsoft version, and - best of all - they came up with "licensing as a book". The latter was far too sensible to catch on in the Microsoft world (although, it intrigues me that many iOS and OSX apps are actually licensed that way, when provided through the App Store it's actually the default).

    Muchos gracias, Mrs Stob - that brought good memories :)

  12. Anonymous Coward

    ah, typescript

    The best thing about typescript is that if your $PATH is badly laid out, and your $PWD is marked with an "x", you won't like what you get when you run it.

  13. magickmark

    Funniest thing I have read for quite a while! Wonder what that says about me !!!

  14. Anonymous Coward
    Anonymous Coward

    Verily Verity,

    Thou be a philistine of the first order, truth hast no place in this world.

    Be gone thou horrendously humorous haruspex before thee curse other languages

    I liked it :)

  15. Michael H.F. Wilkinson



  16. Steve Evans

    Classic :-)

    Much chuckleth over here as I read this... With my browser over the open Delphi 5 IDE.

    1. Spoonsinger

      Re: open Delphi 5 IDE

      I envy your ability to have Memory Sleuth working with it.

  17. All names Taken

    Me 2 too?

    Wild thing - thou movest us so

    Wild thing - you make our souls inflame

    Wild thing - you makest all things go Groovy(?)


    ding ding da-da-ding ding ding?

  18. chris lively

    I said goodbye to Delphi, my first serious love, when D7 was released. There were many ups and downs and the code was beautiful, but the problems were ugly.

    Like a spouse of an "ex" alcoholic I had hoped the sequestering into the land of embarcadodo would have healed it's soul. Alas that was not to be.

    Delphi: I've is permenantly turned my back upon you. So long and thanks for all the fish.

  19. Field Marshal Von Krakenfart

    May I be the first to say....

    the sons of KHAAAAAAN!

  20. amanfromarse

    Very sad

    Ha ha, great article.

    I used C++ Builder up to version 5, great product at the time. Things started to go bad soon after.

    Eadon, do you and RICHTO go to the same school?

  21. GrantB

    Are we going backwards in software development

    I used and liked Delphi a lot in the day, from 16-bit Delphi 1 (and beta's) through most versions (good and bad) through to about CBuilder 2007 when I finally parted ways with Borland/Inprise/CodeGear./Em... whatever.

    Sad thing is that just recently I though of a little program I wanted to write for running on the desktop. Just something that reads a CSV file, does a bit of business logic and writes a report.

    Delphi would have my first thing I would have used, as I could bang together a simple UI using a stringgrid and could have churned out a .exe that would run on pretty much on any Windows machine (Win8 RT excluded of course), and run fast.

    Now days? Express version of C# would be closest as it would probably run on most Windows machines as these days all(?) would have a reasonably up to date version of .NET. Would be slower to startup and run, and probably take me longer to develop depending on what new horrors MS have inflicted on VS this year.

    Python would be my second choice, but not everybody has Python interpreter installed (yes, I have seen packing the interpreter) but even though I like the language, still feels a step backwards to not use an IDE with rich components and integrated debugging.

    Surprising really that while web tools are always improving, the desktop development environments don't seem to be improving that much in productivity.

    1. sabroni Silver badge

      Re: Are we going backwards in software development

      Providing you're using a relatively up to date pc you could do a csv processor in Javascript in any modern browser. It'd run on a massive number of devices and have no ties to any particular manufacturer. Using a webkit browser would give you a pretty spiffy debugging environment as well.

  22. Matthew Smith

    Delphi was corrupted from within long ago

    I spent many happy years with Delphi. But the advantage was never the language itself (I happily switched to using curly brackets) but that it all just worked. It spat out a single, highly efficient exe which could be sent off to the customer and would be guaranteed to work. How we laughed at VB with its DLL hell and java with its runtime engine.

    Now that Delphi is all .net, it is all about which version of .net is installed, just the same as the other languages. Shame.

    1. GerryMC

      Re: Delphi was corrupted from within long ago

      Delphi isn't dot net - in fact the compiler was Kylixed (see in Delphi 2009. However the IDE (Galileo) still uses a mix of Win32 native code and .Net.

      This must have seemed like a good idea in 2003. The IDE stability is almost back to Delphi 7 (2002) level now, and my i7 loads in about the same time as my old P4 took for D7!

      (Actually I prefer Galileo to older versions, I just wish it was more stable and faster).

      The current version (XE3) of supports Win32, Win64 and OSX (via non-native OpenGL based controls)

  23. Tim Bergel
    Thumb Up

    Laughed and laughed

    Thank you Verity - most excellent!

  24. Sir Codington


    Urg, abandoning C# for Typescript, as if the web needs another superset for JScript - wasn't coffeescript enough? Most people are using Jquery anywho.

    If only MS would see the potential C# has and fully support mono. Java as a language is nowhere near as good but at least I can run the damned thing on arm properly when I need floating point operations.

  25. Christopher Slater-Walker

    The app looketh - the apps look

    You need to sort out your 3rd person singular ending from the 3rd person plural.

  26. Opwernby

    And then spoke the Zen programmer from the land of hot ovens, as it is called in the language of that land from before the coming of the invaders: "All things continue until they finish."

  27. Henry Wertz 1 Gold badge

    Like it or not but C# is on the way out

    So... yes, C# is a ripoff of Java, and .NET a ripoff of the Java Runtime Environment. Sorry if you don't like it but it's true. Microsoft found Java a threat (seeing as how it was truly cross-platform) and after they were sued for J++ (a Java version with non-standard extensions added on, violating the Java platform rules...) they worked on C# and .NET. This was SPECIFICALLY so they could make a Java-clone, take the wind out of Java's sails, and claim cross-platformness while in reality tying the .NET user tightly to Windows. NOTE THIS IS NOT A QUALITY JUDGEMENT. I did a little C#/.NET programming, and I found the truly portable parts to be well designed and clean.... (the non-portable parts exposed Win32, which is IMHO an unholy mess. I didn't use them.)

    @Ian Yates, "So you also believe that Java rips off UCSD Pascal, since that uses a VM for each process? Or that C++ rips off C?"

    Yes and yes. When Java was coming out, it was common knowledge it was using techniques gleaned from UCSD Pascal. And C++ is obviously directly based on C. Microsoft had specific motives to take down Java when they released C# and .NET though.

    Regarding C#... well, if you look realistically, Silverlight is abandoned, .NET development is halted. Microsoft originally did not include C# support at all in WinRT, assuming people would use HTML5, and only added it due to developer outcry. I think it's safe to say C# is in "legacy' status now. Sorry if you don't like it, but that's the facts. Just to say it again -- not a quality judgement, I really get the impression it's Microsoft internal politics doing this and I think it's a poor decision. But I guess we'll see a few years down the road if new stuff comes out, or if .NET is just allowed to fade. Desktop? Well, you can still use technologies from like the Windows 3.1 days if you want, I'm sure (non-Metro mode) you'll be able to keep making stuff indefinitely if you want.

  28. Henry Wertz 1 Gold badge

    Oh yeah...

    also, good article, I enjoyed it! And read allt he old Delphi ones as well, also nice. What a saga.

This topic is closed for new posts.

Biting the hand that feeds IT © 1998–2022