Recent

Author Topic: Pascal origin, where does it come from  (Read 20585 times)

hansotten

  • Jr. Member
  • **
  • Posts: 88
Pascal origin, where does it come from
« on: July 31, 2020, 10:44:12 am »
Pascal is quite old now, around 1970 the first compiler appeared designed by Niklaus Wirth.
About 1978 I was exposed to Pascal, read the Algorithms + Data Structures 1976 book by Wirth and discovered compiler writing 'Wirth style': recursive descent down one pass in an understandable way. I have used those techniques a lot since, writing parsers, compilers etc. So I collected lots of books and articles and compilers during the years. Some very rare, some scanned by me, or collected from websites long gone now.

Since Freepascal has an 'ISO7185' mode, this is still relevant, but also fun to read. 
 
A large update to my history of Pascal and its standards, where it comes from, the early compilers, sources of first compilers, unique articles and rare books, originally scanned, written by Niklaus Wirth, Per Brinch Hansen, Tony Hoare, Dijkstra,  Jim Welsh and many more. Come and see it at http://pascal.hansotten.com

MarkMLl

  • Hero Member
  • *****
  • Posts: 6676
Re: Pascal origin, where does it come from
« Reply #1 on: July 31, 2020, 11:05:40 am »
I've added that as a link to https://wiki.freepascal.org/Make_your_own_compiler,_interpreter,_parser,_or_expression_analyzer#See_also

Please check that I've rendered your name correctly, your website doesn't identify its publisher.

MarkMLl
MT+86 & Turbo Pascal v1 on CCP/M-86, multitasking with LAN & graphics in 128Kb.
Pet hate: people who boast about the size and sophistication of their computer.
GitHub repositories: https://github.com/MarkMLl?tab=repositories

hansotten

  • Jr. Member
  • **
  • Posts: 88
Re: Pascal origin, where does it come from
« Reply #2 on: July 31, 2020, 11:32:48 am »
Thanks!

My name is spelled ok, the website's name is School of Wirth, and that is misspelled!

Ñuño_Martínez

  • Hero Member
  • *****
  • Posts: 1186
    • Burdjia
Re: Pascal origin, where does it come from
« Reply #3 on: July 31, 2020, 11:46:24 am »
Thanks!

My name is spelled ok, the website's name is School of Wirth, and that is misspelled!
Fixed!  Nice website. :)
Are you interested in game programming? Join the Pascal Game Development community!
Also visit the Game Development Portal

PascalDragon

  • Hero Member
  • *****
  • Posts: 5446
  • Compiler Developer
Re: Pascal origin, where does it come from
« Reply #4 on: July 31, 2020, 12:28:38 pm »
Pascal is quite old now, around 1970 the first compiler appeared designed by Niklaus Wirth.
About 1978 I was exposed to Pascal, read the Algorithms + Data Structures 1976 book by Wirth and discovered compiler writing 'Wirth style': recursive descent down one pass in an understandable way. I have used those techniques a lot since, writing parsers, compilers etc. So I collected lots of books and articles and compilers during the years. Some very rare, some scanned by me, or collected from websites long gone now.

Since Freepascal has an 'ISO7185' mode, this is still relevant, but also fun to read. 
 
A large update to my history of Pascal and its standards, where it comes from, the early compilers, sources of first compilers, unique articles and rare books, originally scanned, written by Niklaus Wirth, Per Brinch Hansen, Tony Hoare, Dijkstra,  Jim Welsh and many more. Come and see it at http://pascal.hansotten.com

Just because I noticed this on your website and it might interest you: the development version of FPC has initial, experimental support for MSX-DOS.

440bx

  • Hero Member
  • *****
  • Posts: 3944
Re: Pascal origin, where does it come from
« Reply #5 on: July 31, 2020, 12:45:30 pm »
@hansotten

Great job!  Very nice web site. 

Thank you for all the work you put in to create it, structure all the information and for sharing it along with the relevant books, documents and, standards.
(FPC v3.0.4 and Lazarus 1.8.2) or (FPC v3.2.2 and Lazarus v3.2) on Windows 7 SP1 64bit.

six1

  • Full Member
  • ***
  • Posts: 117
Re: Pascal origin, where does it come from
« Reply #6 on: July 31, 2020, 01:03:12 pm »

ASBzone

  • Hero Member
  • *****
  • Posts: 678
  • Automation leads to relaxation...
    • Free Console Utilities for Windows (and a few for Linux) from BrainWaveCC
Re: Pascal origin, where does it come from
« Reply #7 on: July 31, 2020, 08:12:01 pm »
Awesome job.   Thanks for this, Hans.
-ASB: https://www.BrainWaveCC.com/

Lazarus v2.2.7-ada7a90186 / FPC v3.2.3-706-gaadb53e72c
(Windows 64-bit install w/Win32 and Linux/Arm cross-compiles via FpcUpDeluxe on both instances)

My Systems: Windows 10/11 Pro x64 (Current)

Blade

  • Full Member
  • ***
  • Posts: 177
Re: Pascal origin, where does it come from
« Reply #8 on: August 08, 2020, 02:34:46 am »
"The language was originally developed by Apple Computer as Clascal for the Lisa Workshop development system. As Lisa gave way to Macintosh, Apple collaborated with Niklaus Wirth, the author of Pascal, to develop an officially standardized version of Clascal. This was renamed Object Pascal." -- From the Wiki on Object Pascal.

Interestingly, this part of the story of Apple's hand in developing Object Pascal is not elaborated on much.  Doesn't seem to be much information out there about why, the details, influences, and decisions.  Though there are interviews with Niklaus Wirth, this part of the history isn't discussed.
« Last Edit: August 08, 2020, 02:38:10 am by Blade »

MarkMLl

  • Hero Member
  • *****
  • Posts: 6676
Re: Pascal origin, where does it come from
« Reply #9 on: August 08, 2020, 09:49:28 am »
Another thing that tends not to be discussed is that Wirth acted as a (AIUI paid) consultant to the Ada design process. It's interesting that later on he appeared to be very hostile to OO, arguing that everything could be done adequately using records.

MarkMLl
MT+86 & Turbo Pascal v1 on CCP/M-86, multitasking with LAN & graphics in 128Kb.
Pet hate: people who boast about the size and sophistication of their computer.
GitHub repositories: https://github.com/MarkMLl?tab=repositories

Blade

  • Full Member
  • ***
  • Posts: 177
Re: Pascal origin, where does it come from
« Reply #10 on: August 08, 2020, 11:13:50 am »
Interestingly, I found a pdf that introduces Clascal, which later was renamed Object Pascal.  Clascal being a play on words of Pascal, as in Pascal with Classes.  This talks about the concept of Clascal, what inspired it, and differences between it and versions of Pascal at that time.  Also included is a download of the Lisa Pascal manual, as it's referenced in the Clascal document and the extensions were built on top of it.

Download PDF- An Introduction To Clascal

Download PDF- Lisa Pascal Reference Manual

Another thing that tends not to be discussed is that Wirth acted as a (AIUI paid) consultant to the Ada design process. It's interesting that later on he appeared to be very hostile to OO, arguing that everything could be done adequately using records.

Yes, information about Pascal's and Wirth's connection to Ada is hard to come by too, though in looking at Ada, it becomes readily apparent.  Even Wiki makes no mention of Wirth's influence on Ada, though gives a brief mention of Pascal.

As for OOP, there is a famous quote attributed to Wirth, "Nevertheless, I consider OOP as an aspect of programming in the large; that is, as an aspect that logically follows programming in the small and requires sound knowledge of procedural programming."

I can see where Wirth is coming from, because Pascal has records, nested functions, variants, and units.  OOP is very much a choice, as oppose to a necessity or forced paradigm like it is in various other languages.  From that perspective, OOP is used when appropriate or where it makes sense versus "if all you have is a hammer, everything looks like a nail".  Wirth may have seen through the hype early, and knew OOP was not necessarily the "be all, end all".  There is composition versus inheritance, modularization in contrast to OOP's take on encapsulation, and polymorphism is not owned by only OOP.
« Last Edit: August 11, 2020, 02:42:00 am by Blade »

MarkMLl

  • Hero Member
  • *****
  • Posts: 6676
Re: Pascal origin, where does it come from
« Reply #11 on: August 08, 2020, 11:49:54 am »
Yes, information about Pascal's and Wirth's connection to Ada is hard to come by too, though in looking at Ada, it becomes readily apparent.  Even Wiki makes no mention of Wirth's influence on Ada, though gives a brief mention of Pascal.

But equally, Ada could have been "Child of ALGOL-68" since it has a terminating END on conditionals etc., which is in neither Pascal nor ALGOL-W.

I'm afraid that I've not been through all of OP's references, but an interesting question is whether the original Modula (i.e. predating Modula-2) had an explicit terminating END. The "THEN applies to a single statement" structure is undeniably elegant and is delightfully consistent with the in-expression IF-THEN-ELSE supported by ALGOL, but is a PITA in practice.

It's most unfortunate that the Great Unwashed- which includes 95% of programmers- insists on classifying languages as "Pascal-like" or "curly-bracket" solely on the use of BEGIN vs {

MarkMLl
MT+86 & Turbo Pascal v1 on CCP/M-86, multitasking with LAN & graphics in 128Kb.
Pet hate: people who boast about the size and sophistication of their computer.
GitHub repositories: https://github.com/MarkMLl?tab=repositories

Blade

  • Full Member
  • ***
  • Posts: 177
Re: Pascal origin, where does it come from
« Reply #12 on: August 11, 2020, 01:49:19 am »
"Larry Tesler worked with Niklaus Wirth to add object-oriented language extensions to the Pascal programming language." 

It appears that Larry Tesler (who had an amazing career), was the person at Apple that was directing or creating the extensions (first known as Clascal, then Object Pascal) to Apple's Lisa Pascal (with consultation from Niklaus Wirth).

Among the many interesting things about Larry Tesler, he was the person Xerox assigned to show Steve Jobs around Xerox's Palo Alto Research Center in 1979.  Computing legend Alan Kay (designer of Smalltalk and inventor of the term OOP) was the one who hired Tesler for Xerox in the first place, and then it was Steve Jobs who hired him away to work at Apple.
« Last Edit: August 11, 2020, 01:52:55 am by Blade »

winni

  • Hero Member
  • *****
  • Posts: 3197
Re: Pascal origin, where does it come from
« Reply #13 on: August 11, 2020, 02:10:57 am »
Hi!

In the 70s Xerox needed urgent new ideas. They started the Xerox Palo Alto Research Center (PARC) where crazy genious persons should develop new ideas and concepts. Often enough that were Acid dropouts - dont underestimate the influence of LSD in those days. Those persons were not able for daily work but they had great ideas: They invented the Mouse, they invented the GUI, they invented PostScript and they invented the Laser Printer. And they invented the Ethernet.

Where were we now without them??

Winni




Blade

  • Full Member
  • ***
  • Posts: 177
Re: Pascal origin, where does it come from
« Reply #14 on: August 11, 2020, 04:17:41 am »
As we are going down memory lane and doing origins.  The Lisa Pascal Reference Manual, for which Clascal (later Object Pascal) is based on, is itself based on and references the Pascal User Manual and Report (the basis of the ISO standard), created by Kathleen Jensen and Niklaus Wirth.  Presented as viewable PDF.

Pascal User Manual and Report
« Last Edit: August 11, 2020, 04:22:10 am by Blade »

 

TinyPortal © 2005-2018