Slashdot Mirror


Free Pascal 2.0 Released

Eugenia writes "After five years of development, Free Pascal 2.0 is ready and it includes support for many architectures and OSes. It now has threading support, interfaces, widestring and better Delphi support among many other new features. OSNews posted an article introducing the updated GPL compiler." petermgreen adds a list of some of the major changes since the last stable release: "Much better support for Delphi language features (especailly method pointers); more supported CPUs (AMD64, SPARC, PPC (32 bit), ARM) and platforms (Mac OS classic, Mac OS X, MorphOS, Novell Netware); a new and better structured Unix RTL Threading support; and a large number of internal changes including rewriting large parts of the compiler to make it more maintainable and easier to port to new architectures," and notes that "Visual parts of Delphi are being handled by a seperate project known as lazarus, which has not yet reached 1.0 but should do so fairly soon."

6 of 451 comments (clear)

  1. Out of curiousity... by winkydink · · Score: 5, Insightful

    and not meant in a trollish way, but what is Pascal used for these days? What are it's inherent advantages over other languages?

    --

    "I'd rather be a lightning rod than a seismometer." -Ken Kesey

    1. Re:Out of curiousity... by NetNifty · · Score: 5, Insightful

      First things that come to mind are prototyping and education - I'm sure I'm not the only /.er who was taught Pascal at school.

    2. Re:Out of curiousity... by SAN1701 · · Score: 5, Informative
      First, I have to say I'm a big fan of Delphi. I've done dozens of projects with it in the last 10 years.

      Yes, I do use C++/Objective-C (when I have to program in OS-X with the Cocoa framework), and C# and Java. The productive gap I fell between the two first C-like languages is that, in Delphi, the work is done in a tenth of the time, specially for GUI and Database-enabled apps. When compared with Java and C# I would say that the time spent is twice or three times lower in Delphi.

      Of course, the fact that I develop mostly in Delphi makes easier to me to be productive in this language. But I have a friend who went to work in a full-Java environment, being good at it to the point of being a lecturer, and he agree that the Java world is still way behind when it comes to RAD.

      Having said all of this, many windows applications are built in Delphi. Here's a list of only the most famous.

      Delphi is generally considered the best tool for development in Windows. Simply put, its strengths are:

      1. Complete OO language, including real properties that were now copied by C# (actually, chief architect of Delphi-1 and 2, Anders Heijlsberg, is doing the same role in MS for C#).
      2. Easy to use IDE.
      3. Targets Win32, .NET (and Linux if you use Kylix, which was somewhat abandoned by Borland).
      4. A complete and mature framework, the VCL, with thousands of free components available on the web.
      5. Compiled code (when in Win32), which generates executables comparable in speed to those in C++.
      So why isn't it more widely used? I would say that one thing is because of Borland is a tiny company when compared to MS or Sun. The other is that it is a proprietary tool. And the third, generally the most commented, is that Borland maybe didn't know how to sell it properly.
  2. SmartEiffel, Oberon by cahiha · · Score: 5, Interesting

    If you want a Pascal-derived language that's a little more up-to-date, consider SmartEiffel or Oberon (search on Google). Both have garbage collection, object-oriented features, and both can generate small, stand-alone executables. The SmartEiffel compiler is particularly neat, since it does global program optimization.

  3. Education by jd · · Score: 5, Insightful
    Pascal is one of the best educational programming languages out there. C is much more powerful, but is also much more lax - you can get away with really lousy coding and it often works. Ada is too cumbersome to have any practical educational value. COBOL should be taken away from academics, along with any sharp objects.


    Pascal offers a good balance, forcing you to think about what you are doing, not merely how you are going to go about doing it. A lax style is often picked out by the compiler, and errors are often easier to see and correct.


    The greatest advantage of Pascal, though, is that it is NOT used much in the workplace. This may seem odd, for something you're going to teach with, but think about it. It means that most people will be starting off fresh, rather than with bad habits, and means that you are learning about programming, rather than learning about some specific job. Jobs come and go, but software engineering will always be there.


    Learning a skill for a specific job is only useful as long as that job is around. For example, if you learn Visual Basic today, you're market fodder if those jobs run dry by the .NET and C# rush that is going on. If you learn .NET and C#, you're dead in the water when the next rush comes along. You need to know what lies behind the skills, the generic stuff, because you can transfer those skills any time you like. A good coder can always pick up new languages. I know something like 20. But if you're locked into a language, you've got to learn anything new from scratch. You've nothing to build in.

    --
    It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
  4. Teaching vs. Industrial Use by lifeblender · · Score: 5, Interesting
    Hell yeah. I learned the same languages in that order when I was in grade school and high school.

    BASIC: self-taught including line numbers and even *shudder* edlin once one a random computer in elementary school, plus a year of high school. A wonderful language to learn with.

    Pascal: a dead language. Why the hell are people still using it? Whatever, I learned it in two years of high school, learned about pointers and trees and ADTs. Since it was DESIGNED as an educational language, NOT as an industrial language, it was great to learn with.

    C/C++: should die, except for programming kernels and hardware libraries. But I learned some of it in the last year of high school, and more in college. Great language for low-level manipulation and byte-counting accuracy (that's C only, not C++).

    They're trying to teach my brother basic computer science at UT Dallas by using Java. And not just Java, but Swing. It is a wondefully powerful language, just like C, and it has native threading, exceptions, and class extensions, so it blows C++ out of the water. But it is a horrible language with which to teach computer science. Horrible, horrible, horrible, even more so than C. My brother didn't know what a 'class' was, and they wanted him to use Java! Give me a break, and him, too.

    Once I got to college, I learned Haskell, then Python, PHP, a little JAVA, LISP, and assembly (okay, assembly for a simple machine). Haskell kicked my ass. Want to know why? Because I already 'knew' how to program. What I 'knew' was the suspension of disbelief required for working in the imperative programming world. Haskell is a great language for teaching people who do NOT know programming at all. My suggestion: start with Haskell, then move to Python (which is like BASIC in that it is interpreted and has a sparse syntax).

    Why do we have to make it hard on people during education? We should use Haskell, Python, Pascal, or BASIC in order to teach them. And why do we have to make it hard on ourselves as programmers? We should not use Pascal or BASIC for anything, and we should use other languages for what they are good for.

    And what is C good for? Explicit control and direction. Pascal? Nothing in the industry. If you're going non-standard (i.e. not C/C++), and you need absolutely enforced types, then byte the bullet and learn Haskell. Here, I'll make it easy for you: I've actually written a tutorial about Haskell for people who know languages like C (including Pascal, Perl, Python, PHP, etc.). If you know any of those languages, and you want to learn a better, simpler, more free way , please check it out. I made it just for you, really! Oh, just so I mention it, it's fairly easy to call external code from Haskell, so you can still be naughty if you need to.

    Thanks for the walk down memory lane.

    --
    Playing pornographics games during the day is evil! Play at night!