Hot answers tagged

136 votes
Accepted

Why did MS-DOS applications built using Turbo Pascal fail to start with a division by zero error on faster systems?

Turbo Pascal programs start by calibrating a delay loop (so that the Delay function knows how much to spin to achieve a certain delay). The calibration counts the number of times a certain loop is run ...
64 votes

Why was nil defined as a reserved word in Pascal?

The definition of PASCAL is, above all else, intended to be simple. PASCAL was designed as a pedagogical language (with aspirations to be useful for commercial purposes, but that was a secondary ...
  • 12.6k
39 votes
Accepted

Was Dennis Ritchie being too modest in this quote about C and Pascal?

Was Ritchie correct, or was he just being modest? I’m not sure modesty plays a part here; I don’t see any statement of value attached to the size of a language’s family. As of the date of the ...
37 votes
Accepted

What was the point of Apple Pascal having its own file system?

UCSD Pascal was a product of UCSD - The University of California at San Diego. It was not a product of Apple. UCSD Pascal was available on a number of machines, including the PDP-11, TI99/4, the BBC ...
  • 7,904
33 votes
Accepted

Did Pascal programmers really move on to Java in the 90s?

It's almost impossible to give a single and definite answer as not only usage of programming varies greatly over markets as well as new markets opening and new programmers are added as well, having ...
  • 195k
30 votes

What caused the downfall of Pascal?

I think it’s worth looking at the rise of Turbo Pascal (in particular) to understand its “downfall”. When Turbo Pascal was released, it has a number of advantages over the competition, regardless of ...
25 votes

What was the point of Apple Pascal having its own file system?

UCSD Pascal was developed prior to the Apple II, during the 70's in San Diego, using PDP-11 class machines with a 512-byte block disk structure. In the process of porting it to microcomputers, often (...
  • 195k
22 votes
Accepted

Where does this esoteric Pascal operator come from?

From personal communication with Adam Sampson: I think it's fairly likely that the designers of your 1979 dialect of Pascal were thinking of this as a feature to support (what was then called) "...
  • 17.7k
22 votes

Did Pascal programmers really move on to Java in the 90s?

Pascal teaching My strongest impression is not that Pascal programmers shifted to Java in the 90s, but that Pascal teachers shifted to Java in the 90s. In other words, the 90s was the decade when new ...
  • 739
20 votes

Why was nil defined as a reserved word in Pascal?

Unlike Boolean constants, the value of NIL cannot be assigned a particular type. That's why it has to be parsed in a special way, that is, it has to be a keyword. Another reason for NIL to be a ...
  • 17.7k
18 votes

Why does Pascal have numeric labels?

[Preface: It's about genuine Pascal history, thus I will answer this based on the original 1970 Pascal Manual. Since then many different implementations have been made, so it might not be true for all ...
  • 195k
17 votes

Who invented small string optimization?

TL;DR: ALFA is a predefined machine specific type (like all Pascal types), that happens to be 10 on CDC 6600, but may have any other value on other machines. ALFA has been added to allow machine ...
  • 195k
17 votes

Did Pascal programmers really move on to Java in the 90s?

I am only one data point. But I most definitely did not move on to Java. I did have some very limited Java work, but only supporting someone else (much younger - I highly suspect he learned Java in ...
16 votes

x86 as a Pascal Machine?

What exactly does it mean to be a "Pascal machine" in that context? It's close but not really the case. It starts with the term Pascal Machine being misused, as this usually describes a software and/...
  • 195k
16 votes

How much time and how many people were required to develop Delphi version 1?

Delphi 1.0 was released Feb 14, 1995. By my (now somewhat foggy) recollection, research / experimentation that directly contributed to defining the Delphi visual development experience started around ...
  • 261
14 votes
Accepted

Is this a bug or an allowed Pascal behavior?

The ISO 7185 Pascal standard, section 6.4.3.5 "File-types", says (my emphasis): There shall be a file-type that is denoted by the required structured-type-identifier text. The structure of ...
  • 24k
13 votes
Accepted

What caused the downfall of Pascal?

I don't think the answer is very complicated, but the scope and time-frame of the transition was much bigger than you indicate. This wasn't so much about what was happening in DOS/PC programming as it ...
  • 59.1k
12 votes
Accepted

Was there a bug in Wirth's original Pascal compiler?

If the compilers you have were based on the P-series, then I believe that there was indeed a bug. In the P-series compilers after P2, the destination of an assignment is determined by a routine named ...
  • 3,397
12 votes

Why does Pascal have numeric labels?

Pascal can be parsed without using a table of user symbols. If general symbols were allowed as labels, a compiler that encounters a user identifier when a statement is expected would have no way of ...
  • 32.3k
11 votes

Did Pascal programmers really move on to Java in the 90s?

Short answer: no. Longer answer: Almost everybody, Wirth included, recognised that there were flaws in Pascal; these were the result of its definition being rushed. That meant that from the earliest ...
9 votes
Accepted

When were the analogs of the C operators "break" and "continue" introduced in Pascal?

It is difficult to say for sure, because there have been a lot of implementations of the Pascal Language (some of them not very widely distributed), each with their own specific additions to the ...
  • 1,598
9 votes

Who invented small string optimization?

Before Pascal, there was Algol 68, which includes the data types bits and bytes, fixed-length array-like entities holding bool values or char values respectively, and which were expected to be ...
  • 31.3k
9 votes

Did Pascal programmers really move on to Java in the 90s?

The usual progression imho was from Pascal in the '80s on 8 bit computers (UCSD-Pascal on Apple II, Turbo Pascal on CP/M, etc) and XT/AT class PC's (Turbo Pascal for MS-DOS). Then transition to 16 bit ...
8 votes

Where does this esoteric Pascal operator come from?

They probably meant Landin's J operator, which is basically a precursor to the call-with-current-continuation function from Scheme. See the relevant part of Racket documentation.
8 votes

Was Dennis Ritchie being too modest in this quote about C and Pascal?

Short Answer: Yes Was Ritchie correct, or was he just being modest? As of the date of the quote (1993), were more computer languages descended from Pascal than C? (*1) Well, it's not as easy as ...
  • 195k
7 votes
Accepted

Cross-Compatibility of UCSD p-Machine Versions?

Will CODE (pcode 'executables') files from the II. p-System run correctly on the IV. p-System? Quick answer: No The roman numeral (I..IV) of the p-code system denotes the underlying p-code engine. ...
  • 195k
7 votes
Accepted

Looking for the source code of a sophisticated Pascal pretty-printing program

A few pretty-printers were published in the 13th Pascal Newsletter in 1978. The machine-readable text of a version of the one by Hueras and Ledgard is available on the SAILDART archive. (Also on ...
  • 3,397
7 votes

Why does Pascal have numeric labels?

This is not an answer as I don't know the real reason. It is just a comment about parsing label: In pascal varname: is expected to be followed by either = or a variable type. If a statement were ...
  • 2,087
6 votes

Why is the following p-Code generated by the Apple 3 pascal compiler?

How can I recognise in the p-Code, that this is an integer function and has not 3 parameter values (6 bytes = 3 words data). Has not? To be honest, I'm a bit confused about what you're asking. So ...
  • 195k
6 votes
Accepted

Was dynamic type check in Pascal commonplace?

Pascal compilers/runtimes typically do some (very often, optionally, enabled by a flag) run-time type checking. A very typical run-time check supported by most Pascal compilers is array bounds ...
  • 30.1k

Only top scored, non community-wiki answers of a minimum length are eligible