Stories
Slash Boxes
Comments
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More | Login | Reply
Loading... please wait.
  • You honestly think that in a mere 10 years, it will be impossible to get a job as a C programmer? We'll have operating systems written in Haskell and word processors written in Erlang?

    C was being used to write operating systems 33 years ago, and it's still going strong. There will always be a call for a language that lets you be somewhat platform-independent while still giving you the ability to get very close to the bare metal.

    There is a place for functional programming--many places, as a matter of fac

    • In 10 years time, if you're programming in C, it will be because you're programming a burglar alarm or a fridge. Possibly an operating system, although I suspect l4 style microkernels will have made inroads, and most OS code will be running in "user space" and might be written in Haskell.

      However, a game, a word processor, a network daemon, you'd be writing in Haskell, Perl, or perhaps Java (but by then, Java will probably look very Haskelly, and Perl 6 already does).
      • However, a game, a word processor, a network daemon, you'd be writing in Haskell, Perl, or perhaps Java (but by then, Java will probably look very Haskelly, and Perl 6 already does).

        I'm not so sure.

        First, C will never completely die. Assembly language is still useful, even if it isn't used by 99.44% of programmers. But the idea of assembly language is still very useful, and still deserves to be one of many cornerstones of any good CS degree. And, periodically, the idea of assembly is useful when it resurfaces in, say, SQLite's internal opcodes, or pasm. C is useful because it is a convenient, portable, and "user friendly" form of assembly language.

        The best proof against Java/Haskell/Perl being used for high performance, low latency projects is Microsoft's experience with C# and CLR. Sure, it's good enough for their customers to write line-of-business code, but it's not good enough for them to write their operating systems or office applications. (The CLR is missing a few important primitives for OS design, and the desktop apps are too important to turn into, well, OpenOffice.)

        The key point to realize is that most projects aren't operating systems, network daemons, games or word processors. C, and to some extent Java (and Perl), are really poor languages for line-of-business development. So while 10 and 20 years ago, most software was written in C, Pascal, Fortran or Assembly, that's more a statement of the then-current state of the art, not the innate suitability of those languages for every domain.

        When I say (with tounge firmly in cheek) that all non-functional languages will be obsolete in 5-10 years, it's an assertion that functional languages (or at least languages with functional features used in a semi-functional manner) will be where the focus is for most projects, especially green field development. There are four main classifications of languages (imperative, functional, object oriented and declarative), and each has their use. Functional languages will never be the one true way to write all code, nor should they be.

        (Note that we're seeing that change today - look at ruby, rails and the heavy reliance on blocks.)