Slashdot Mirror


30th Anniversary of Pascal

GrokSoup writes "UC San Diego is holding a public symposium on Friday, October 22nd, honoring the 30th anniversary of the Pascal programming language. Oh the memories of undergraduate bubble-sorts ..."

28 of 587 comments (clear)

  1. More serious apps... by grub · · Score: 5, Informative


    Pascal was more than just undergrad bubble sorts. The original Mac had all the hooks and development stuff in Pascal. If memory serves the Mac was the largest Pascal project going. Using C (Lightspeed C, circa 1986 or so) was a real bitch on the machine.

    --
    Trolling is a art,
    1. Re:More serious apps... by JPriest · · Score: 5, Informative

      Well there is Object Pascal which Delphi is based on. Delphi is losing popularity but is a very good (and underrated) language. The first GUI applications I made were in Borland Delphi.

      --
      Saying Java is nice because it works on all OS's is like saying that anal sex is nice because it works on all genders.
    2. Re:More serious apps... by Anonymous Coward · · Score: 5, Informative

      Actually, the chief designer of C#, Anders Hejlsberg, was the chief architect of Turbo and then Object Pascal. He took many ideas from Object Pascal into C# and .NET.

    3. Re:More serious apps... by Retric · · Score: 4, Informative

      I was coding in Pascal today. It's just about the oldest GUI program I know of and it still works. It's a single app that handles a flat file database, a real time system for job dispatching with a great GUI, payroll, redundant backup over the network, job capture ect. And it's still readable after 14 years. Damm to bad Pascal lost out to C/C++.

    4. Re:More serious apps... by mertner · · Score: 5, Informative

      Yes, the 255-length limit on strings can be bothersome, and to address it a new dynamic string type with a 32-bit length was introduced in Delphi 2: AnsiString.

      That is 7 Delphi versions ago, btw, so it's not exactly new any more :-)

      The advantage of the "Short" strings is that they can be allocated on the stack and thus have no memory manager overhead, pointers etc associated with them - which makes them simple to use. And many strings *are* less than 255 chars, always.

      If you need longer strings, use Delphi 2 or later. The AnsiString implementation is certainly heads and shoulders above the std::string from the STL, which I have found to be astonishingly inefficient several times.

      I guess it's all a matter of taste :)

      --
      -- As long as the answer is right, who cares if the question is wrong?
    5. Re:More serious apps... by Pseudonym · · Score: 2, Informative

      And remember, TeX is still written in Pascal.

      --
      sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
    6. Re:More serious apps... by tigersha · · Score: 2, Informative

      An ArrayList is a list implemented with an Array internally. A LinkedList is a list implemented a slinked list. Both implement the List interface (ie they support the same operations).

      The difference is that the one has constanct time appends and inserts (the linked list) while the other one has constant time indexed lookup (the Arraylist). Both are needed because the access patterns of the collection cannot be predetermined by the API.

      The naming convention used is quite logical if you bother to look further.

      The same naming convention also goes for the other collections in the API, such as Set (HashSet ... ) and Map (HashMap...)

      --
      The dangers of excessive individualism are nothing compared to the oppressiveness of excessive collectivism
  2. Re:Started with QBasic by Gentoo+Fan · · Score: 4, Informative

    You could give Ruby a shot.

  3. Why Pascal is not always my favourite language by kompiluj · · Score: 2, Informative

    Some of those issues have been solved with advent of the Turbo/Object Pascal by Borland which is currently the most used Pascal dialect (for example the FreePascal uses it) which has taken many things from C. However, a still worthy read.

    --
    You can defy gravity... for a short time
  4. Re:What do they teach in undergrad now? by lifeblender · · Score: 3, Informative

    Now they teach with Haskell, Scheme, Lisp, and C++. I'm not kidding about the Haskell or Lisp, at least at UT Austin. My first cs class, 307, (I skipped the basic C++ "Comp Sci II" class) was in Haskell, and man that was hard. Of course, once I learned Haskell I loved it, and __every other programming language in the world__ became easy once I took a second class in it. Other professors for the 307 class teach using Scheme. Later, I had lots of classes that used C++, one that suggested C++ or Lisp and let me use Haskell (Compilers), and a great class about ACL2 where I learned Lisp from Professor J Moore, an experience I'll never forget. So yeah, they hit us with Haskell (or Scheme) pretty early on, had a large focus on C++, and let the crazy professors teach in Haskell or Lisp if they wanted to.

    Some wackos at places like UT Dallas try to teach freshman about Java classes, but they'll learn that's not the right approach. ;) Try starting from the basics of programming, THEN move to data structures, not the other way around.

    --
    Playing pornographics games during the day is evil! Play at night!
  5. Borland... by Kr3m3Puff · · Score: 2, Informative

    Some of us have never given up on Pascal. I still use Delphi and Kylix to this day. Meets my needs and Pascal makes a nice OO programming language, something that dates back to Turbo Pascal 7.

    There is a ton of third party support for it and you can do just about everything a little easier then just about everything else. All my DSOs for Apache are done in Kylix...

    --
    D.O.U.O.S.V.A.V.V.M.
    1. Re:Borland... by Kr3m3Puff · · Score: 2, Informative

      Well, it kinda sort of is. The last update was Kylix 3 which brought it in line with Delphi 7, which was the last navtive Win32 version, until the yet to be released Delphi 2005. Delphi 8 was .NET only. Delphi 2005 merges Win32, .NET (both OO Pascal and C#). I don't think they are planning a Kylix release after 3, but I might be wrong.

      I still find it very cool and useful, and I am still using Delphi 7 for Win32. I have avoided Delphi 8 because it was only .NET (though it came with Delphi 7). On the FAQ for Delphi 2005 it asks if the .NET application will work on non Windows OS's and they say "well, in theory there is no reason they won't, but we won't test or approve it". So it is likely Delphi 2005 .NET applications will work under Mono. Cool!

      --
      D.O.U.O.S.V.A.V.V.M.
  6. Niklaus Wirth's languages by plcurechax · · Score: 4, Informative

    Actually I (mildly) regret that I was an advocate for C and C++ in the university undergrad CS programmes, because at the time I personally enjoyed programming in C more than Pascal. Looking back I think Pascal was an excellent language for students, and I wish Niklaus Wirth's other languages, such as Module-2, Oberon caught on more. I think they were evoluting in the right direction of promoting good programming style, for programming in the large.

    Rather than quick coding by the seat of your pants which C encourages or at least strongly tolerates.

    1. Re:Niklaus Wirth's languages by MouseR · · Score: 2, Informative

      That's Modula-2. And Modula-3, although this one didn't go anywhere much.

      I've actually written two commercial applications in Modula-2. Did you know that MetroWerk's CodeWarrior is actually a descendent of their original product (and company name) that was then known as MetCom Modula-2? I still have those books in a box. First language I actually coded in for the Mac. That was in 88.

  7. Re:Why didn't it succeed? by mikael · · Score: 2, Informative

    we used both Pascal and C for our undergraduate courses. The editors (once in 43/50 line mode) were just as good as Microsoft Visual Studio (especially since they had the [alt]-[C] rectangular region copy/cut/paste option).

    The problem with Pascal, was that it wasn't cross platform with other operating systems (Solaris, HP-UX, AIX, whatever...). And it didn't have access to the windowing/networking libraries that C programs had on UNIX (It wasn't until 1993 that Microsoft starting including TCP/IP with PC's).
    Accessing any other libraries on the PC required 'C' bindings to be defined anyway, which of course required pointers to be handled).

    Any Pascal programs for the PC were also hobbled by the 16-bit memory segment boundary limit, which
    caused many problems for applications with large amounts of data.

    --
    Vintage computer adverts: http://www.vintageadbrowser.com/computers-and-software-ads
  8. Re:Why didn't it succeed? by hchaos · · Score: 2, Informative

    It succeeded long enough for Borland to make Delphi 2005. I've always preferred Delphi to C++, because it has almost all of the features of C++ (the most notable lack being macros), plus it has much better enumeration and set handling (mainly, because it has enumeration and set handling).

  9. LISP at MIT by peter303 · · Score: 2, Informative

    At MIT the required first computer course uses the 47-year old LISP language, at least the object-oriented, modular version called SCHEME. I guess this partially intertia, having done this since the 1970s. All electrical engineers and computer sci majors are required to take this course. That can be 40% of MIT undergrads in popular years.

  10. and Basic too by plopez · · Score: 2, Informative

    Both Pascal and BASIC were intended for teaching only. Unfortunately both were pressed into areas they were not originally designed for and had to be retrofitted.

    THere is a discussion above about production languages vs teaching languages being taught at this time. My opinion being better a production language, because when the Business Admin types take their intor to programmig class they will not be left with the impression that a teaching language is a real programming language.
    THen force programmers to deal with what often amounts to crippleware when they are tasked with managing a software project.

    --
    putting the 'B' in LGBTQ+
  11. And it's easy to implement by chazR · · Score: 2, Informative

    If you want to build your first compiler, Pascal-style languages are a good place to start. They are amenable to recursive descent parsing.

    I strongly recommend Jack Crenshaw's (free) introduction.

    I seem to remember that the compiler is written in Pascal. I translated it to C as a I went along. You could always use GNU Pascal (That's a google link, because the site seems to be refusing connections. Could that be related to this FPP?)

  12. Re:Bah! by rewt66 · · Score: 2, Informative
    You sure ought to be grateful! My mother (yes, my mother) was a programmer in the 1950's, writing flight simulations for missiles, and working (among other places) at JPL. When she began working, she wrote in octal. She was grateful when she got an assembler!

    Writing numerical code in octal - I just can't begin to imagine how much talent that took.

  13. Free Pascal by Anonymous Coward · · Score: 2, Informative

    There is also Free Pascal that is Delphi compatible.... and Lazarus that use Free Pascal and is Delphi-like (Visual Pascal)... Write once, comile everywhere (Win32, *nix, Mac, BeOS, etc, etc, etc.).

  14. Re:Raskin's Pascal poster by jejones · · Score: 2, Informative

    That chart just appears to be the grammar for Pascal. You could produce a chart just like that for C++ using the C++ grammar.

    Agreed, but for Pascal you won't run into any constructs that are recognized by the same chunk of "Railroad Normal Form" but which have radically different semantics--over and above the usual things you can't capture in a context-free grammar.

    That is, Pascal doesn't have C++'s "if you can interpret it as a declaration, it's a declaration" rule.

    From what I've read, C++ has the same difficulty as the original FORTRAN did; the original parser was ad hoc, so that it was a nightmare to parse with reasonable techniques, and arguably therefore harder for humans to deal with.

  15. Re:Pascal... by jejones · · Score: 2, Informative

    Especially Algol 68, the best programming language you probably never used, a victim of nasty (and not necessarily accurate) propaganda. I urge all to track down a copy of the History of Programming Languages II proceedings and read Charles Lindsey's excellent and bittersweet paper on the history of Algol 68.

  16. Re:What do they teach in undergrad now? by pjt33 · · Score: 2, Informative

    The University of Cambridge starts with SML, and then after a term follows on with Java.

  17. FREE PASCAL! by Anonymous Coward · · Score: 3, Informative

    Both apps are Free Software (GPL).

    www.lazarus.org

    www.freepascal.org

    Lazarus := Delphi-like (almost a clon) IDE for Win32 AND Linux. It's API independent: can use transparently GTK+, Windows graphic system... etc.

    FreePascal := Portable? no problem! It's available for different processors Intel x86, Motorola 680x0 (1.0.x only) and PowerPC (from 1.9.2). The following operating systems are supported: Win32, Linux, FreeBSD, NetBSD, MacOSX/Darwin, MacOS classic, DOS, OS/2, BeOS, SunOS (Solaris), QNX and Classic Amiga.

    The language syntax is semantically compatible with TP 7.0 as well as most versions of Delphi (classes, rtti, exceptions, ansistrings). Furthermore Free Pascal supports function overloading, operator overloading and other such features.

    Try it! Or, at least visit the web sites.

  18. Re:Why didn't it succeed? by Cryogenes · · Score: 4, Informative

    Actually you are answering the wrong question. There was never any contest between C (the Unix language) and Pascal (a teaching language). The real tragedy was that the beautiful Algol succumbed to C so easily and so completely.

    But you are quite right, compilers where the reason. C.A.R.Hoare (of quicksort and CSP fame) tells a good story where early in his career he led an Algol compiler team into disaster - after two years of careful programming they produced a multi-pass compiler and when they first tested it, it managed to correctly translate 1 line of Algol per second!

  19. Ada lives on, kinda by acomj · · Score: 2, Informative

    Ada is Pascals "child" so to speak. The sytax is pretty close. The more I use ada the more I like it although not without its quirks. Its not hard to pick up, and gcc will compile it.

    Although calling Ada a success would be pushing it, it seems my companies large projects work best in ada, then c and c++ is always a disaster.

    Ada lacks a lot of libraries that make java/ c so useful. But as someone pointed out (with a chuckle), you can bind Ada calls to C making it as powerful as C!

  20. Chrome by Cadderly · · Score: 2, Informative

    I am using Object pascal every day. (Delphi and Free Pascal). But there is still development done on Pascal compilers... take a looke at Chrome http://www.chromesville.com/ . That is a brand now .NET language based on Pacal that has some REALLY nice features...