UCSD Pascal

UCSD Pascal

Obrazovka editoru v UCSD p-System , Apple II
Typ vysokoúrovňový programovací jazyk a programovací jazyk
Vývojář UC San Diego , SoftTech , Pecan
Jazyky rozhraní Angličtina
První vydání 1978
Hardwarová platforma Apple II , DEC PDP-11 , Zilog Z80 , MOS 6502 , Motorola 68000 , x86 , Pascal MicroEngine
Nejnovější verze Verze IV

UCSD Pascal je dialekt programovacího jazyka Pascal .

V druhé polovině sedmdesátých let byl na University of San Diego (Kalifornie, USA) vyvinut UCSD p-System , který zahrnoval kompilátor z Pascalu na přenosný p-kód (samotná myšlenka kompilace do p-kódu byl vypůjčen z dřívějšího systému Pascal-P). První verzí, která byla distribuována mimo univerzitu, byla verze I.3 vydaná v srpnu 1977 [1] .

Vlastnosti jazyka

UCSD Pascal představil několik důležitých rozšíření jazyka Pascal, jako jsou moduly , což jsou kompilační jednotky, a znakové řetězce s proměnnou délkou. Kromě toho byla podporována rozšíření standardu jazyka Pascal, která byla v té době běžná, jako jsou překladové direktivy v pseudokomentářích, specifikování skutečného názvu souboru při jeho otevírání, řešení I/O chyb, volitelně výpis souborů v hlavičce programu , atd. Následně byly hlavními komerčními implementacemi jazyka Pascals založeného na této modifikaci Pascalu především Object Pascal od Applu a Turbo Pascal od Borlandu .

Maximální délka znakového řetězce v UCSD Pascal, stejně jako v pozdějších dialektech 80. let, byla 255 znaků, ale v UCSD Pascal bylo standardně použito 80 znaků.

Podporovány byly soubory bez typu a odpovídající procedury blockread a blockwrite .

Správa paměti haldy pomocí nových procedur a vyřazování v UCSD Pascal byla na tehdejší hardware příliš náročná na zdroje a byla nahrazena efektivnější, ale méně pohodlnou dynamickou správou zásobníku paměti způsobující chyby ( procedura vyřazení byla prázdná, aktuální ukazatel zásobníku dynamických proměnných byl zapamatován pomocí procedury mark a byl obnoven pomocí procedury release , čímž se uvolnila celá paměť přidělená po odpovídajícím volání mark ).

Podobně jako řetězec typu string  [n] byl podporován datový typ BCD integer  [n] se zadaným počtem desetinných číslic.

Zajímavou vlastností dialektu UCSD Pascal byl výchozí zákaz používání operátoru goto (pokud nebyl specifikován speciální režim překladu {$G+}, pak byl operátor goto považován za chybu).

Moduly

V přehledových článcích se někdy tvrdí, že koncept modulů v UCSD Pascal byl převzat z jazykového projektu Ada . Vývojář UCSD Pascal Kenneth Bowles ale píše, že naopak moduly v UCSD Pascal sloužily jako prototyp podobného mechanismu balíčků v Ada [2] , jehož vývoj začal v roce 1977.

Implementace

Na konci sedmdesátých a na začátku osmdesátých let byla implementace UCSD Pascal II.1 na počítači Apple II s procesorem 6502 licencována společností Apple Computer pod ochrannou známkou Apple Pascal a s vlastní verzí číslování 1.0-1.3 (ale mezi běžnější označované jako UCSD Pascal). V této implementaci byly k dispozici další moduly AppleStuff s různými systémovými voláními (práce s klávesnicí, zvukem atd.) a TurtleGraphics s grafickým balíkem želv. V Bulharsku byl Apple Pascal lokalizován pro počítač Pravets-82 , tento produkt byl použit v bulharském vzdělávacím programu, který se v 80. letech používal i v SSSR.

Poslední komerční verze kompilátoru UCSD Pascal byla do roku 2001 distribuována společností Cabot Software pod názvem P-Code Pascal a měla implementace pro Windows, MS DOS, Macintosh, OS/2, RS/6000, Power PC, ARM, SCO UNIX, Interaktivní platformy UNIX. , Linux, DEC VAX, AIX, Hitachi SH. P-Code Pascal zahrnoval multitasking a objektově orientované programování [3] .

Poznámky

  1. MUZEUM P-SYSTÉMU UCSD . Datum přístupu: 5. října 2009. Archivováno z originálu 17. února 2015.
  2. Soubor z webu Keent Bowles www.kenbowles.net, Některé poznatky o UCSD Pascal Generation archivované 24. února 2021 na Wayback Machine na retro8bits.com
  3. Cabotův P-Code Pascal . Získáno 10. října 2009. Archivováno z originálu 5. prosince 2008.

Odkazy

V angličtině

Viz také