Live data from Hacker News

Ask HN: Why Did Pascal Fail?

news.ycombinator.com

121–130 of 168 posts

Re: Ask HN: Why Did Pascal Fail?

#121
post #119

Earlier quoted context omitted.

Kernighan wrote that in 1981. As late as 1988, I was (unwillingly) using an original, non-extended Pascal. Those were still out there, still being used. And, all Pascal dialects had some construct. They had different constructs. If you wanted to be portable, you couldn't use any of them (until the Extended standard came out). Kernighan notes those extensions, but does not accept them as a solution because of their no…

So apparently ignoring that C was subject to the same dialects problems outside UNIX doesn't count. Nor that Modula-2, designed to fix all those issues with ISO Pascal, was in use since 1978. Yeah, whatever.

Pretty sure you could allocate a variable-length array in C without tripping on dialect issues, in or out of Unix. It may have had such issues, but they were much less fundamental than in Pascal.

Re: Ask HN: Why Did Pascal Fail?

#122
post #70

Earlier quoted context omitted.

It is so complex that people came up with tooling to actually understand when some devs go wild, https://cdecl.org/ Also the main reason behind the religous war in C++ of west const versus east const. Microsoft now got a couple of top devs on their C++ team that are on east const, so while we have about 25 years of Microsoft documentation, code samples and libraries using west const, the C++/WinRT team is now pushing…

Oh, and don’t forget the eternal holy war for the right asterisk/ampersand location! (SomeType* ptr vs. SomeType *ptr) https://stackoverflow.com/questions/2660633/declaring-pointe...

Yeah, that is another one.

Re: Ask HN: Why Did Pascal Fail?

#123
post #37

Basically Turbo Pascal overshadowed all other Pascal dialects and then Borland got greedy, decided that Fortune 500 were going to be their main customers in detriment of the small dev shops. Additionally Anders got fed up with the ongoing culture and finally accepted the invitation of former ex-colleges to join Microsoft. So J++ was born, then .NET, and most of the folks on Windows just moved from Delphi into C#.

Borland/Inprise/Embarcadero with high and then prohibitive prices put multiple nails in the Pascal coffin, but it fate was predetermined even before this. Pascal occupies roughly the same niche as C. C is the language in both Unix and DOS/Windows were written which defined it success. C was chosen by Microsoft for DOS and later for Windows - using it for app development was the path of the least resistance (Visual C,…

MS-DOS was written in Assembly.

Re: Ask HN: Why Did Pascal Fail?

#124
post #62

> Why did Pascal fade instead of growing? Poor brand management — "This was, of course, partially of Wirth's own making". … "He refrained from ... names such as Pascal-2, Pascal+, Pascal 2000, but instead opted for Modula and Oberon". "Pascal and its Successors" 2002 https://www.swissdelphicenter.ch/en/niklauswirth.php

For example —

" … the programming language Component Pascal which is a superset of the language Oberon-2 developed by Niklaus Wirth."

https://blackboxframework.org/

Re: Ask HN: Why Did Pascal Fail?

#125
post #120

Earlier quoted context omitted.

Modula-2 was at best obscure at the time, while Pascal was popular. Kernighan got involved with Pascal in order to write the Pascal version of "Software Tools", called Software Tools in Pascal. He wrote "Why Pascal is not my favorite PL" as a result of that book effort. I believe that is explained in the article. If there had been enough demand to also do a Modula version of the book, he might have written a more fav…

Obscure, when the book was published three years earlier. And based on Mesa, used at Xerox PARC. Then again, ignoring systems languages outside Bell Labs seemed to have been a thing back in the day.

You are missing that Software Tools was written for a popular audience, more or less. The Pascal edition was written because people were using Pascal and wanted it. Nobody was asking for a Modula-2 edition.

Re: Ask HN: Why Did Pascal Fail?

#126
post #94

Earlier quoted context omitted.

I'm not familiar with "single-pass analysis", but I do know that Pascal can be compiled with a single pass recursive descent compiler, which made Turbo Pascal orders of magnitude faster than any other compiler at the time. In an era when C programmers could have coffee while waiting for things to compile, a pascal program hit enter, saw the results, and moved on.

C was also designed for single-pass compilation. Among many other things that people now dislike about C, this is why C requires forward declarations. C compilers became slow because of the optimizations they accreted. Plus, I imagine it just wasn't a priority for the vendors in the way it was for Borland Pascal. I'm curious how the Borland C compiler compared in speed to their Pascal compiler and to other C compiler…

TinyC/tcc [1] still is a single-pass compiler and can go all the way to ELF files (or directly running via tcc -run) in a few milliseconds - sometimes an order of magnitude faster than the minimal start-up time of an interpreter like Python. But yes, gcc will generate faster running object code..a long standing trade off (like -O0 vs -O3, etc.).

[1] https://github.com/TinyCC/TinyCC

Re: Ask HN: Why Did Pascal Fail?

#127
post #117
post #111

Earlier quoted context omitted.

> Apparently you missed the whole TP 5.0, 5.5, 6.0, 7.0 and TPW 1.5 offerings. I didn't miss them, but because IIRC all the versions you mentioned (and also Delphi 1.0) were x86 16-bit (only) Borland/Turbo Pascal evolutions having effectively the same memory model support as TP 4.0, felt they were not important to enumerate. These releases certainly added other features, but IIRC made no architectural changes affecti…

Borland Pascal compilers that I mentioned had exactly the same memory models than their C++ counterparts, specially the Windows 3.1 versions, there was no difference between TPW 1.5 and TC++ 3.1. Borland Pascal 7.0 introduced support for protected mode.

> Borland Pascal compilers that I mentioned had exactly the same memory models than their C++ counterparts, specially the Windows 3.1 versions, there was no difference between TPW 1.5 and TC++ 3.1.

The Turbo C 1.0 User's Guide [1] page 244 (257) "Turbo C's Six Memory Models" lists these as tiny, small, medium, compact, large, huge. Also, page 220 (233) "The near, far, and huge Modifiers".

You claim that these same capabilities were present in TP 5.0, 5.5, 6.0, 7.0 and TPW 1.5. Can you provide a reference for that?

[1] http://bitsavers.informatik.uni-stuttgart.de/pdf/borland/tur...

Re: Ask HN: Why Did Pascal Fail?

#128
post #7

Earlier quoted context omitted.

I think your first link [freepascal.org] speaks volumes. I clicked on it and was taken to a page which looked like it was stuck in a 1990s timewarp. Opened it on my phone and, as expected, no concessions to mobile layout at all. Just that massive page of text rendered in microscopic size on my phone screen. Back to the site on my laptop and I look for the two things I want to see up front when deciding whether I'm in…

The utter superficiality of your comment is the perfect demonstration of the fashion driven nature of software development. You're not worried about the language. You're worried about the marketing and whether or not you feel cool. You might as we be asking if this is the right language to wear this season or if your bum looks big in this compiler.

  >The utter superficiality of your comment is the perfect demonstration of the fashion driven nature of software development. You're not worried about the language. You're worried about the marketing and whether or not you feel cool...
You walk into a bookshop, undecided on what you want to read next. On every shelf are books in plain white covers. You pick one out at random and look at the front. There is no illustration at all to give you any hint as to what it's about. Just the plain white cover with the title of the book. You flip it over. On the back cover, instead of a summary of the plot, there is just an index of chapter titles.

If that's not enough for you upon which to base your decision on whether or not to purchase, then you're an incredibly shallow and fashion-led reader

[Feel free to create similar analogies. For example; a supermarket in which every tin, packet and bottle has a plain white label with 'Food' written on the front and nothing but an ingredients list on the back]

Re: Ask HN: Why Did Pascal Fail?

#129
post #123

Earlier quoted context omitted.

Borland/Inprise/Embarcadero with high and then prohibitive prices put multiple nails in the Pascal coffin, but it fate was predetermined even before this. Pascal occupies roughly the same niche as C. C is the language in both Unix and DOS/Windows were written which defined it success. C was chosen by Microsoft for DOS and later for Windows - using it for app development was the path of the least resistance (Visual C,…

MS-DOS was written in Assembly.

First versions (at lest 2.0 and older) indeed where written in Assembly. I've seen somewhere that later version used C, but now cannot find any information about this.

Re: Ask HN: Why Did Pascal Fail?

#130

> A typed, compiled language easy to program. The thing about these early language designs is that it's really only their "toy" language subset that's truly easy to program. Once you try and extend a comparatively simple language like PASCAL to deal with all the complexities of truly large-scale software development you end up with something not unlike ADA, where the verbose syntax just gets in the way of surveying a…

They're called “Pascal” and “Ada”. Not all caps, because they aren't acronyms.
Post reply on HN