Talk:Pascal (programming language)
This is the talk page for discussing improvements to the Pascal (programming language) article. This is not a forum for general discussion of the article's subject. |
Article policies
|
Find sources: Google (books · news · scholar · free images · WP refs) · FENS · JSTOR · TWL |
Archives: 1, 2Auto-archiving period: 90 days |
Pascal (programming language) is a former featured article candidate. Please view the links under Article milestones below to see why the nomination was archived. For older candidates, please check the archive. | ||||||||||
|
This level-5 vital article is rated C-class on Wikipedia's content assessment scale. It is of interest to the following WikiProjects: | ||||||||||||||||||||||||
|
A root article
[edit]I wanted to make explicit here, that this is a root article pertaining to original Pascal as designed by Niklaus Wirth. Thus the many dialects of Pascal are branched off as separate articles, which I think is proper, and has been the rule here for decades (and I appreciate that greatly). Please make sure that any modifications to it pertain to and are compatible with the original language Niklaus Wirth.
The standard for the language, ISO 7185, has been derided as a later version of the language. The basis for this claim (loosely) was the fact that many dialects branched from the language before the standard was issued in about 1983. I (personally) respect that opinion, but I would note that there is little net difference between the original (J&W) version of Pascal and ISO 7185, and, indeed, the examples on this page work under both versions of the language.
Thank you.
Scott Franco San Jose, CA. — Preceding unsigned comment added by Samiam95124 (talk • contribs) 23:57, 12 July 2023 (UTC)
The image contains terrible Pascal code
[edit]The indentation is odd and there are unnecessary begin/end pairs. It appears to be from a beginner programmer who has cut-and-pasted parts that work. It makes Pascal look more cryptic than it is. --Abandondero (talk) 23:09, 29 November 2022 (UTC)
- I assume you were talking about the FPC IDE image. This is not Pascal, but a dialect of it. FPC is capable of using regular/Wirth Pascal, the image shown is not an example of it. I removed it. Samiam95124 (talk) 23:29, 12 July 2023 (UTC)
wrong, but understandable variant record example
[edit]The following example is understandable, but wrong:
TYPE
TSystemTime = record
Year, Month, DayOfWeek, Day : word;
Hour, Minute, Second, MilliSecond: word;
end;
TPerson = RECORD
FirstName, Lastname: String;
Birthdate: TSystemTime;
Case isPregnant: Boolean of
true: (DateDue:TSystemTime);
false: (isPlanningPregnancy: Boolean);
END;
Person's sex is omitted, but pregnancy status is required even for men. Only women can be pregnant, is this a women record? also END for RECORD is missing. The following code is the union of male and female records, also female records have two variants for pregnant and not pregnant women:
TYPE
TSex = (male, female) ;
TSystemTime = record
Year, Month, DayOfWeek, Day : word;
Hour, Minute, Second, MilliSecond: word;
end;
TPerson = Record
FirstName, Lastname : String;
Birthdate : TSystemTime;
Case Sex : TSex of
female: Case isPregnant: Boolean of
true: (DateDue:TSystemTime);
false: (isPlanningPregnancy: Boolean);
End {isPregnant Case};
male: (hasVasectomy : Boolean);
End {Sex Case} ;
End {Record} ;
I did not change the example because I don't have a Pascal compiler to try it and many years have passed since the last time I wrote a program in Pascal. I am not sure it has a correct syntax. The second an maybe more important reason is because it is more complex than the original one. Another option is to rewrite the original example as follows:
TYPE
TSystemTime = Record
Year, Month, DayOfWeek, Day : word;
Hour, Minute, Second, MilliSecond: word;
end;
TWoman = Record
FirstName, Lastname: String;
Birthdate: TSystemTime;
Case isPregnant: Boolean of
true: (DateDue:TSystemTime);
false: (isPlanningPregnancy: Boolean);
End {isPregnant case};
End {TWoman Record};
Whichever option is taken, this example comes from another article, it should be changed in that page too. Of course not necessary identical each according to what is explained. — Preceding unsigned comment added by 2806:106E:B:400F:F9:F69F:2ED7:3753 (talk) 05:50, 4 September 2022 (UTC)
- I've updated with a simpler, less potentially controversial, example. Chris Burrows (talk) 23:41, 6 September 2022 (UTC)
- Just my opinion, but this is not the place to have off topic discussions about if men can or cannot get pregnant. Can we stick if the examples are or are not valid Pascal? Samiam95124 (talk) 23:31, 12 July 2023 (UTC)
BSD Pascal?
[edit]mention BSD Pascal or UICU Pascal ? 3MRB1 (talk) 21:12, 7 January 2024 (UTC)
- Probably should, but I don't know anything about them.Bubba73 You talkin' to me? 23:10, 7 January 2024 (UTC)
- @Bubba73
- Joy, William N.; Graham, Susan L.; Haley, Charles B. (1979). Berkeley Pascal User's Manual, Version 1.1, April, 1979. University of California, Berkeley. Department of Electrical Engineering and Computer Sciences
- Recollections about the development of Pascal by N. Wirth, 1996
- Berkeley Pascal 1975: Ken Thompson went to Berkeley (University of California) and built a Pascal compiler for UNIX
- Berkeley Pascal User’s Manual, Version 3.1, April 1986
- Bill Joy interview with Eugene Kim of Linux Magazine 1999
- Twenty Years of Berkeley Unix
- Bits of History George Coulouris
- 1BSD was an add-on to Version 6 Unix; its main components were a Pascal compiler and ex
- see Niklaus Wirth and its edit history for links
- ...........
- https://smartbear.com/blog/40-years-of-unix-and-the-scariest-thing-ive-ever-d/
- https://www.salon.com/2000/05/16/chapter_2_part_one/
- https://catalogimages.wiley.com/images/db/pdf/0471164836.01.pdf
- https://www2.eecs.berkeley.edu/bears/CS_Anniversary/cs_brochure_final.pdf
- https://www.macos.utah.edu/documentation/short_courses/mac_os_x_overview/history_and_evolution/unix_history.html
- 3MRB1 (talk) 01:13, 9 January 2024 (UTC)
- @Bubba73
- C-Class level-5 vital articles
- Wikipedia level-5 vital articles in Technology
- C-Class vital articles in Technology
- C-Class Computing articles
- Mid-importance Computing articles
- C-Class software articles
- Mid-importance software articles
- C-Class software articles of Mid-importance
- All Software articles
- C-Class Computer science articles
- Low-importance Computer science articles
- All Computing articles