Elhunyt Niklaus Wirth, a Pascal programozási nyelv megalkotója

89 éves korában elhunyt Niklaus Wirth, akinek -- többek között -- a Pascal és Modula-2 programozási nyelveket is köszönhetjük.

Nyugodjék békében!

Hozzászólások

Éppen a napokban kezdtem el az ötödikes fiamnak tanitani a nyelvet - egyrészt hatodikban ezt fogják tanulni az iskolában, másrészt érdekli és kárára biztosan nem válik - emiatt némi kutakodás után egy 23 éves CD-n megtaláltam a régi programjaimat is (nyilván csak nekem kincsek, semmi forradalmi dolgot nem tarzalmaznak, de példaprogramnak jók lesznek).

Igazából egy még karakteres felületű, helyszín és szituáció függő kiválasztós cselekvéses szöveges kalandjáték engine lehet csak érdekesebb közülük, ami sima szöveges fájlokkal vezérelhető, illetve ha ugyanilyen fájlnéven talál képet, akkor azt is be tudja szúrni az adott helyszínhez, valamint egy kb. 70%-ban elkészült és a régi Eye of Beholder sorozathoz hasonló játékengine (persze fekete-fehér felülettel, mert '97 környékén a grafikáért felelős barátomnak és nekem is csak ilyen monitorunk volt). Az utóbbi már objektum-orientált megközelítéssel készült.

Szóval írhatnám, hogy nyugodjék békében, de egyrészt nem hiszek abban, hogy a halál után lenne bármi, másrészt a munkássága nem volt hiábavaló, mivel ha folyamatosan csökken is a részesedése, valószínűleg nem mi leszünk az utolsó pascalozó generáció.

Szóval velünk (is) él tovább.

Ezzel én is így voltam, szerettem anno a Pascalt, nagy előrelépésnek tűnt a Basic-hez képest. Megvan az összes valaha írt programom is benne, egy se veszett el. Szintén semmi forradalmi, szokásos dolgok, amik minden programozásoktató könyvben fel vannak adva feladatnak, rendezés, tömbkezelés, prímszámkeresés, alakzatok kirajzolása, felhasználói interakció. Írtam én is érdekesebbeket azért, mindet DOS-ra, benchmark és rendszerinformációs program, CD lejátszó (lemezadatbázist is kezel), és CLI CD meghajtót kezelő utilit-k (kiadja a lemezt, lejátszik egy sávot, megállítja a lejátszást, stb.), Peg Solitaire játék, alap kézi rajzolóprogram, néhány alap grafikus animáció, képernyővédő, primitív szövegszerkesztő, wav lejátszó, sound blaster kompatibilis hangkártyákhoz hangerőszabályozó, stb.. Semmi nagy forradalmi alkotás, meg mai szemmel látok bennük hibákat, de ahhoz képest nem rossz, hogy 12-15 évesen írtam őket, és akkoriban nem volt netem, meg ennyi tutorial, példakód, amiből merítve elegánsabban meg lehetett volna írni. Nem hogy még ChatGPT meg language server/linter megoldások.

Azon a szinten én sose voltam, hogy game engine-t írjak. Mindegy, hiába a szép emlékek, én ma már Pascalt nem tanítanék. Nem azért, mert a nyelvvel lenne akkora baj, de már nincs piaca, akár még a Java-t is jobban preferálnám helyette, pedig NagyZ a tanúm rá, hogy azt pedig utálom. C vagy C++, esetleg Rust vagy Go. Másnak nincs értelme első nyelvként. Jó, talán a C# és a Python, de azokat se nagyon favorizálom.

Wirth nyugodjék békében, sok érdekes nyelvet alkotott. Igaz egyik sem maradt fent tömeges használatban, de mint korai úttörőnek azért bőven jár az elismerés.

Windows 95/98: 32 bit extension and a graphical shell for a 16 bit patch to an 8 bit operating system originally coded for a 4 bit microprocessor, written by a 2 bit company that can't stand 1 bit of competition.”

Nem nyelvet tanulnak, hanem algoritmikát. Arra teljesen jó, szvsz sokkal jobb mint Scratch-el kezdeni s aztán áttérni. Egy órában sokat nem fognak haladni, de látszik rajtuk, hogy kit fog meg s kivel érdemes foglalkozni, vagy olyan helyre tanácsolni ahol foglalkoznak vele.

Wirth "nyelvei" nem a piacnak voltak szánva, eleve oktatási céllal készültek.

Ebben igazad van, oktatási nyelvek voltak, de a maguk idejében az oktatáson kívüli is népszerűek voltak, nem csak a Pascal, de pl. a Modula, Simula is. Azokat én sose tanultam, anno nem volt hozzá se fordítóm, de könyvem, utána, meg hogy beszerezhetők lettek, már nem voltak többé népszerűek.

Azzal is egyetértek, hogy csak algoritmusokat tanulására a Pascal is alkalmas. Mindezek ellenére én tartom, amit írtam.

Windows 95/98: 32 bit extension and a graphical shell for a 16 bit patch to an 8 bit operating system originally coded for a 4 bit microprocessor, written by a 2 bit company that can't stand 1 bit of competition.”

Nem azért, mert a nyelvvel lenne akkora baj, de már nincs piaca

Ez egyrészt nem igaz (Delphi, Lazarus stb.), másrészt az, hogy nem fősodratú nyelv, pont lehetővé teszi neki, hogy józan léptékben fejlődjön, mintsem idő előtt bloatware legyen belőle, mint a Jávából vagy a Python-ból lett.

A Rust és a Go szintén olyan divatnyelvek, amiket nincs értelme első körben oktatni, mert előbb tanít meg babzsákfejleszteni, mint a programozás alapvetéseit. C és Pascal (egymással felcserélhető módon), amik megtanítják rendesen a prgoramozás alapvetéseit. Aztán, utána jöhet a C++. Ha ez így megvan, és ezen a 2-3 nyelven már tud valamennyire programozni, akkor magától meg fogja tanulni az aktuális divatnyelveket, ha szüksége lesz rá. Azt én viszont nem tekintem programozónak, aki egy néhány leckés Python tutorialból összetákol valami erőforráspocsékoló csiligány szarkupacot.

Általában trend- és divatbuzi, kényelmeskedő, a saját menőségüket és kiteljesedésüket ezen keresztül megélő fejlesztőket értek alatta, akik a befektetői milliárdokból ezüsttálcán kapják a 12. generációs CPU-val, 64 GB RAM-mal, 1 TB SSD-vel szerelt csiligépüket, amin a trehány módon túltervezett (over-engineered), szarul-húgyul implementált, bloat, lassú, szuboptimális kódjuk sem fog lassan futni, cserébe minden más felhasználóén igen.

Ha nem volt elég kimerítő a definíció, akkor tekintsd a soydev magyar megfelelőjének.

Soydev is a type of most abundant Software Developer. The Software he/she makes is always inefficient and uses more CPU and RAM than it should. This person always prefers hard work instead of smart work, Has little or no knowledge of existing solutions of a problem, Comes up with very complex solution for a simple problem and has fear of native and fast programming languages like C, C++ and Rust

https://www.urbandictionary.com/define.php?term=Soydev

Annyi extra, hogy én a Rust-ban a világot újraíró hipstereket is babzsákfejlesztőnek tekintem és azokat is, akik divatból választanak egy nyelvet. A babzsák, mint olyan, a kényelem szimbóluma, amivel a magukat trendinek mutatni akaró irodák kényelmesítik el a fejlesztőiket. A tipikus babzsákfejlesztő egész nap babzsákon ül és onnan követi el legnagyobb bloatware-fejlesztéseit.

Csak a Delphi, maradjunk abban, a Lazarus egy IDE, nem nyelv. A Delphit csak annak ajánlom, aki máris tud Pascalul, és valami olyan nyelvet akar tanulni, amihez nem értenek sokan, de még keresik néhány helyen, jó fizetésért. Aki viszont nem tud még Pascalul, annak nem javasolnám, hogy a Pascal-Delphi irányvonalat nézze ki magának.

A Rust és Go nekem sem kedvencem, de az is igaz, hogy nem is a legszarabb nyelvek, a GyávaSzkript, Pyhton, Java, stb. még gázabb. Abban viszont egyetértek veled, hogy a natív C, C++ jobb választás. Egyébként megvan a helye a Python-nak is, de az tényleg csak egyszerű, egyedi (tehát nem általános célú) problémák megoldására jó (modellezés, matek, adatkonverzió), nagy szoftvercsomagot, komplex GUI-s programot nem kéne benne senkinek fejleszteni (pl. Deluge, meg jó néhány program még ilyen), arra nem való. Ez minden script nyelvre igaz, nem csak a Pythonra.

Windows 95/98: 32 bit extension and a graphical shell for a 16 bit patch to an 8 bit operating system originally coded for a 4 bit microprocessor, written by a 2 bit company that can't stand 1 bit of competition.”

https://stackshare.io/stackups/delphi-vs-lazarus

Használtam Turbo Pascalt (előtte még ZX Spectrumra is volt Pascal fordítóm), Delphit, mostanság (bár már ritkán) Free Pascalt, Lazarust. Annyi a különbség, hogy a Free Pascal meg a Lazarus ingyenes és nyílt forrású, a többi nem volt az. :)

Egy nyugati megyeszékhelyhez közeli falu kicsike iskolájába.

A színvonalra majd kiváncsi leszek, mert jelenleg egy matek-ének-földrajz vonalon mozgó tanár próbál valamit oktatni nekik tankönyvből (nem ért hozzá, de kis rosszindulattal neki sikerült a legtöbbször hiba nélkül bekapcsolnia a számítógépet a teljes tanári karból, ezért bízták rá szaktanár híján).

A számítógép alkatrészeit is a fiam magyarázta el neki, aki már segített nekem portalanitani az itthoni gépeket és közben megmutattam neki, hogy mi micsoda és mire való.

Egyébként nekem csak hobbi volt annak idején (még C64-es MS BASIC-kel kezdtem, majd Amiga és jött a PC, itt már váltva Pascalra 20+ éve), jelenleg teljesen más vonalon mozgok, csak a Pythonba kontárkodtam bele még alapszinten, így ezekben tudok neki segíteni.

Amugy manapsag mondjuk milyen IDE-vel erdemes nekiesni a Pascalnak?

Mert anno a Pascal ereje igazabol a Turbo/Borland Pascal IDE-bol fakadt szerintem, ami piszkosul kenyelmesse tette a fejlesztest, nem beszelve a hozza adott libekrol.

Ma van ugye a Free Pascal, de akad hozza ilyen szintu IDE?

Ha pedig mondjuk "GUI" programozasrol van szo, TP-ben baromi konnyu volt a DOS-os 80x25-os karakteres kepernyore fejleszteni egy kvazi-ablakozo rendszert.

FP-hez van mondjuk ncurses binding?

"Szóval írhatnám, hogy nyugodjék békében, de egyrészt nem hiszek abban, hogy a halál után lenne bármi"

Ez felesleges aggodalom, nem leszel beállítva ezo-hívőnek (pedig tőlem lehetnél az is), mert a mondásnak nincs köze semmi ilyesmihez.

Szerkesztve: 2024. 01. 04., cs – 13:22

Nyugodjék békében!

Nem semmi, amit letett az asztalra. Az akkori, sok más "számítógép tudóssal" egyetemben.

Középsuliban én is játszottam vele kicsit, persze csak saját szórakoztatásomra. Én nem informatikus osztályba jártam, csak érdekelt a programozás. Mi PLC-t és CNC-t programoztunk.

A Pascal egy elég magas szintű programozási nyelv. Arra tényleg jó, hogy az algoritmusokat gépi kódra átírjuk tanulási céllal.

Szerkesztve: 2024. 01. 04., cs – 23:42

Nekünk az egyetemen a "bevezetés a programozásba" Modula-2 -ben volt tartva. Úgy, hogy előtte már kicsit programoztam Pascal-ban - teljes visszalépés volt számomra (nyilván, mivel a Modula-2 idősebb a Pascalnál, de akkor is)

és mindent magadnak kellett megírni

Hogy mik vannak!?!? Vagy voltak!?!?! :)

Igen, a hőskorban ez így ment. Emlékszem, Pascalban mennyi mindent megírtam, milyen sok időmbe telt (pl. egy menürendszer fejlesztése), és leesett az állam, amikor valahol ráakadtam egy unitgyűjteményre, ami mindent is tartalmazott, többek között olyanokat is, amiket sok melóval már előállítottam magamnak (ez a unitgyűjtemény volt a TTT, vagyis a Technojock's Turbo Toolkit).

Nem hiszem, hogy túl sokakat érdekel, de ez a toolkit megtalálható itt: http://www.retroarchive.org/garbo/pc/turbopas/index.html

(Kétféle verzió is van az oldalon: 5.0 és 5.1)

Szerkesztve: 2024. 01. 05., p – 07:45

Algorithms + Data Structures = Programs || Algoritmusok ​+ Adatstruktúrák = Programok

gondolom nem én vagyok az egyetlen ember (itt), akire nagy hatással volt a legismertebb könyve IS,

köszönöm Niklaus Wirth...

Rémlik, hogy a fordításban, de kicsit azért rég volt már.

(Hibás programkód az első magyar nyelvű - asszem Kossuth-kiadó-féle - Perl könyvben volt rengeteg. Ha jól rémlik, magában a kódban is sikerült időnként lefordítaniuk dolgokat. Pl. valahol a sendmail -t :-) )

Csodálom, hogy Oberont eddig senki nem említette, pedig az is egy érdekes projectje volt az öregnek.

"Maradt még 2 kB-om. Teszek bele egy TCP-IP stacket és egy bootlogót. "