Content deleted Content added
Samiam95124 (talk | contribs) |
m Archiving 1 discussion(s) to Talk:Pascal (programming language)/Archive 2) (bot |
||
(235 intermediate revisions by 89 users not shown) | |||
Line 1:
{{Talk header}}
{{ArticleHistory|action1=FAC
|action1date=17:13, 1 March 2008
|action1link=Wikipedia:Featured article candidates/Pascal (programming language)/archive1
|action1result=not promoted
|action1oldid=194502760
|currentstatus=FFAC
}}
{{WikiProject banner shell|class=C|vital=yes|1=
{{WikiProject Computing |importance=Mid |science=y |science-importance=Low |software=y |software-importance=Mid}}
}}
{{Annual readership}}
{{User:MiszaBot/config
|algo=old(90d)
|archive=Talk:Pascal (programming language)/Archive %(counter)d
|counter=2
|maxarchivesize=100K
|archiveheader={{Automatic archive navigator}}
|minthreadsleft=4
|minthreadstoarchive=1
}}
== A root article ==
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. <!-- Template:Unsigned --><small class="autosigned">— Preceding [[Wikipedia:Signatures|unsigned]] comment added by [[User:Samiam95124|Samiam95124]] ([[User talk:Samiam95124#top|talk]] • [[Special:Contributions/Samiam95124|contribs]]) 23:57, 12 July 2023 (UTC)</small> <!--Autosigned by SineBot-->
== wrong, but understandable variant record example ==
The following example is understandable, but wrong:
<syntaxhighlight lang="pascal">
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;
</syntaxhighlight>
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:
<syntaxhighlight lang="pascal">
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} ;
</syntaxhighlight>
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:
<syntaxhighlight lang="pascal">
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};
</syntaxhighlight>
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. <!-- Template:Unsigned IP --><small class="autosigned">— Preceding [[Wikipedia:Signatures|unsigned]] comment added by [[Special:Contributions/2806:106E:B:400F:F9:F69F:2ED7:3753|2806:106E:B:400F:F9:F69F:2ED7:3753]] ([[User talk:2806:106E:B:400F:F9:F69F:2ED7:3753#top|talk]]) 05:50, 4 September 2022 (UTC)</small> <!--Autosigned by SineBot-->
:I've updated with a simpler, less potentially controversial, example. [[User:Chris Burrows|Chris Burrows]] ([[User talk: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? [[User:Samiam95124|Samiam95124]] ([[User talk:Samiam95124|talk]]) 23:31, 12 July 2023 (UTC)
== BSD Pascal? ==
mention BSD Pascal or UICU Pascal ? [[User:3MRB1|3MRB1]] ([[User talk:3MRB1|talk]]) 21:12, 7 January 2024 (UTC)
: Probably should, but I don't know anything about them.[[User:Bubba73|Bubba73]] <sup>[[User talk:Bubba73|You talkin' to me?]]</sup> 23:10, 7 January 2024 (UTC)
::@[[User:Bubba73|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
::*[https://dl.acm.org/doi/pdf/10.1145/234286.1057812 Recollections about the development of Pascal] by N. Wirth, 1996
::*Berkeley Pascal 1975: [https://lunduke.substack.com/p/the-true-history-of-vi Ken Thompson went to Berkeley (University of California) and built a Pascal compiler for UNIX]
:::*https://lunduke.locals.com/post/4400197/the-true-history-of-vi-and-vim
::*[https://www.researchgate.net/publication/2570821_Berkeley_Pascal_User's_Manual Berkeley Pascal User’s Manual, Version 3.1, April 1986]
::*[https://web.archive.org/web/20050710014117/http://www.linux-mag.com/content/view/336/2260/ Bill Joy interview] with Eugene Kim of [[Linux Magazine]] 1999
::*[https://www.oreilly.com/library/view/open-sources/1565925823/ch04.html Twenty Years of Berkeley Unix]
::*[https://www.eecs.qmul.ac.uk/~gc/history/ Bits of History] [[George Coulouris]]
::*[https://archive.org/details/1bsd.tar_201503 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
::*[[User:3MRB1|3MRB1]] ([[User talk:3MRB1|talk]]) 01:13, 9 January 2024 (UTC)
:: Thanks.[[User:Bubba73|Bubba73]] <sup>[[User talk:Bubba73|You talkin' to me?]]</sup> 04:07, 9 January 2024 (UTC)
:::@[[User:Bubba73|Bubba73]]
:::* [https://www.tuhs.org/cgi-bin/utree.pl?file=1BSD 1BSD] archive has code and documentation ([[troff]] files) [[User:3MRB1|3MRB1]] ([[User talk:3MRB1|talk]]) 16:47, 9 January 2024 (UTC)
== Microsoft Pascal ==
[[Microsoft Pascal]] and Microsoft QuickPascal not mentioned. (There is mention of way way later VisualPascal) [[Special:Contributions/81.6.34.169|81.6.34.169]] ([[User talk:81.6.34.169|talk]]) 05:30, 23 March 2025 (UTC)
: Should be in there. I put in a sentence at the end of a section. There was another one (or two) for IBM PCs at the time, but I can't remember the maker. [[User:Bubba73|Bubba73]] <sup>[[User talk:Bubba73|You talkin' to me?]]</sup> 05:48, 23 March 2025 (UTC)
|