OldComp.cz

Komunitní diskuzní fórum pro fanoušky historických počítačů


Právě je 28.03.2024, 12:50

Všechny časy jsou v UTC + 1 hodina [ Letní čas ]




Odeslat nové téma Odpovědět na téma  [ Příspěvků: 19 ]  Přejít na stránku 1, 2  Další
Autor Zpráva
 Předmět příspěvku: Historie vzniku jazyka BASIC
PříspěvekNapsal: 19.07.2018, 00:26 
Offline
Pan Generální
Uživatelský avatar

Registrován: 18.06.2013, 20:26
Příspěvky: 2487
Has thanked: 115 times
Been thanked: 424 times
Článek od Pavla Tronnera: Jak John Kemeny a Thomas Kurtz stvořili BASIC, základ novodobého programování.

Komu se to bude zdát moc krátké, ať klikne dole vpravo na link "Další kapitola" 8-) (jsou celkem čtyři)...

_________________
"Je lepší rozsvítit byť jen malou svíčku, než jen proklínat temnotu." (Konfucius)

www.zxsparrow.com


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Historie vzniku jazyka BASIC
PříspěvekNapsal: 19.07.2018, 06:55 
Offline
Pan Generální
Uživatelský avatar

Registrován: 11.06.2013, 15:27
Příspěvky: 3025
Has thanked: 2191 times
Been thanked: 894 times
No, nevím, mi připadá, že delší dobu vypadal BASIC více jako slepá vývojová větev jednoho z mnoha stylů programování spíše než "základ moderního programování".

Není mi jasné, proč nikdo dlouho nedokázal BASIC zbavit čísel řádků.
K tomu vyjádření T. Kurtze:
"...John Kemeny and I were shielded from some of the worst implementations of BASIC. For example, we stopped using line numbers in 1975, just as personal computers were being invented. ... in 1983, three Dartmouth alums challenged us to look at the versions of BASIC that were out there, all different on the different computers. We were appalled at how terrible these crude ‘street’ versions were..."
https://www.truebasic.com/downloads/D2006.pdf

_________________
// na co myslím, když sedím u oldkompů: celý příběh


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Historie vzniku jazyka BASIC
PříspěvekNapsal: 19.07.2018, 08:19 
Offline
Óm Nejvyšší
Uživatelský avatar

Registrován: 28.01.2016, 23:57
Příspěvky: 3756
Has thanked: 213 times
Been thanked: 388 times
Rekl bych, ze hlavnim duvodem pro cisla radku byla snazsi editace programu, protoze celoobrazovkove editory byly asi trochu mimo dosah moznosti tehdejsich osmibitu.

_________________
Nikdy nediskutujte s blbcem. Stáhne vás na svoji úroveň a vyhraje zkušeností.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Historie vzniku jazyka BASIC
PříspěvekNapsal: 19.07.2018, 08:39 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 24.05.2018, 22:32
Příspěvky: 1972
Bydliště: Most, Praha
Has thanked: 863 times
Been thanked: 697 times
I texťáky se dřív takhle upravovaly pomocí číslovaných řádků, nebyl ještě volný pohyb kurzoru po obrazovce, ten už je o dost vyšší level naprogramovat a ani dřív nikoho nenapadlo, že by to mohlo být potřeba. U BASICu to bylo potřeba kvůli odkazům na skoky a podprogramy, neměl labely.

_________________
i++ (INC) increment
i-- (DEC) decrement
i@@ (EXC) excrement


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Historie vzniku jazyka BASIC
PříspěvekNapsal: 19.07.2018, 09:22 
Offline
Profík
Uživatelský avatar

Registrován: 31.08.2014, 16:27
Příspěvky: 993
Bydliště: Praha
Has thanked: 63 times
Been thanked: 371 times
Důvodů pro číslování řádků bylo vícero

1. Již zmíněná neexistence celoobrazovkových editorů. To je primární důvod, ne neexistence návěští. Spousta BASICů návěští měla, ale i přesto bylo potřeba řádky číslovat kvůli editaci textu.
2. Uchovávání programu jen v jediné formě. Zdrojový text a přeložený kód často neexistovaly vedle sebe. Existovala jen jediná forma - tokeny. Příkaz LIST pak každý jednotlivý řádek před zobrazením detokenizoval do čitelné podoby. Stejně tak každý vložený řádek je ihned tokenizován po stisku klávesy pro ukončení řádku.
Udělat tímto způsobem celoobrazovkový editor by bylo velmi obtížné. Zase je takové uspořádání výhodné pro počítače s 16-64 KB RAM, protože vyžaduje opravdu minimum paměti.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Historie vzniku jazyka BASIC
PříspěvekNapsal: 19.07.2018, 10:24 
Offline
Óm Nejvyšší

Registrován: 22.05.2013, 21:14
Příspěvky: 3642
Bydliště: Bratislava
Has thanked: 371 times
Been thanked: 788 times
baktra píše:
každý vložený řádek je ihned tokenizován po stisku klávesy pro ukončení řádku.
Udělat tímto způsobem celoobrazovkový editor by bylo velmi obtížné.
Ale nie nemozne. Napriklad na ZX Spektre existuje kopec celoobrazovkovych editorov, ktore edituju priamo tokenizovany zdrojovy text - a to nielen basic (napr. celoobrazovkovy 128 basic editor), ale aj ine jazyky uchovavajuce zdrojak v tokenizovanej podobe. Typickym prikladom su niekore editory asembleru - napr. Laser Genius a Prometheus. A take MRS (trosku si prihrejem polievocku) ide este dalej - zdrojak nie je ulozeny ani vo forme tokenov, ale priamo ako kody instrukcii. Pri editovani zdrojaku sa kazdy riadok automaticky hned implicitne prelozi priamo do strojaku, a ked uzivatel spusti preklad zdrojaku, tak sa tieto uz hotove prelozene kody instrukcii rovno ulozia do pameti a k nim sa uz len v pripade potreby dopocitaju ciselne argumenty.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Historie vzniku jazyka BASIC
PříspěvekNapsal: 19.07.2018, 10:52 
Offline
Pan Generální
Uživatelský avatar

Registrován: 18.06.2013, 20:26
Příspěvky: 2487
Has thanked: 115 times
Been thanked: 424 times
Ještě jeden (i když malý) možný přínos má číslování řádků: zpráva o chybě může být stručnější.
Stačí vypsat "Syntax error on line 20" a není potřeba ukazovat, kde to je... ;)

_________________
"Je lepší rozsvítit byť jen malou svíčku, než jen proklínat temnotu." (Konfucius)

www.zxsparrow.com


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Historie vzniku jazyka BASIC
PříspěvekNapsal: 19.07.2018, 11:00 
Offline
Óm Nejvyšší

Registrován: 22.05.2013, 21:14
Příspěvky: 3642
Bydliště: Bratislava
Has thanked: 371 times
Been thanked: 788 times
Jiiira píše:
Ještě jeden (i když malý) možný přínos má číslování řádků: zpráva o chybě může být stručnější.
Stačí vypsat "Syntax error on line 20" a není potřeba ukazovat, kde to je... ;)
Toto ma inak vzdy hrozne jedovalo na BasicG a inych klonoch, na riadku som mal 10 prikazov a - clovek aby mal vestecku gulu aby mu povedala aj cislo prikazu v ktorom nastala chyba.
V tomto ohlade klepem na drevo resp. skatulku ZX Spektra, ktoreho basicove hlasenia obsahuju nielen cislo riadku, ale aj cislo prikazu kde nastala chyba.

Ale k veci. Podla mna ten prinos voci celoobrazovkovym editorom nie je az tak vyznamny, pretoze klasicke bezriadkove celoobrazovkove editory si riadky obvykle tiez cisluju aspon interne, a ked zistis ze na ktorom riadku nastala chyba, tak dokazu hodit kurzor priamo na ten riadok. Napriklad aj MRS ma takuto funkciu - ak nastane pri preklade chyba, tak ta automaticky hodi do editora na riadok s chybou.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Historie vzniku jazyka BASIC
PříspěvekNapsal: 19.07.2018, 17:34 
Offline
Pan Generální
Uživatelský avatar

Registrován: 23.03.2014, 20:13
Příspěvky: 2773
Has thanked: 224 times
Been thanked: 601 times
Ano, BASIC vznikl, když měli dva univerzitní profesoři skupinu studentů příliš líných na to, aby se naučili FORTRAN...

Panda38 píše:
I texťáky se dřív takhle upravovaly pomocí číslovaných řádků

To je právě ono! Doporučuji vyzkoušet na vlastní ruce i nervy práci s dobovým editorem ED, například tady: http://pdp11.aiju.de
Základní návod pro úplné začátečníky: https://www.root.cz/clanky/ed-textovy-editor-do-nepohody/
(Bez něj se nepohnete, mě trvalo půl hodiny, než se mi povedl aspoň Hello World v C!)

Ono v té době, kdy se BASIC rozšířil, prostě nebylo na čem ten celoobrazovkový editor udělat. Protože:
Příloha:
12yo.jpg
12yo.jpg [ 40.02 KiB | Zobrazeno 13210 krát ]

Schválně jestli poznáte, kdo je ten spratek v pruhované košili, který tam právě buší BASIC do terminálu :lol:

Nějaká editace již existujícího textu na řádkovém terminálu také nepřipadala v úvahu, nejjednodušší bylo vybraný řádek prostě napsat znovu se stejným číslem, a tím se v paměti automaticky nahradil původní. Mazání řádku stejně tak, a navíc je tu výhoda že čísla řádků se dají rovnou použít jako labely, což velmi zjednodušilo překladač i jazyk samotný. Rozhodně ve srovnání s FORTRANem, který byl tehdy vlastně jediná použitelná alternativa.
Čísla řádků se navíc podobají adresám v paměti počítače, a tahle vědomost se může hodit při dalším studiu pokročilejšího programování v assembleru a strojovém kódu.

Když vznikaly první osmibity, byl BASIC už dávno počítačová Lingua Franca, běžící dlouhé roky na všech minipočítačích a většině mainframů, takže na nějaké inovace nebylo ani pomyšlení. Spíš šlo o to, mít tam to co mají ti ostatní. A pak se to holt drželo jako muslimská víra.

Takže norma MINIMAL BASIC (ECMA 55 - jestli se nepletu) jasně říká, že každý řádek programu má vlastní číslo, a teprve rozšířená norma, myslím z roku 1985, přináší řadu změn, jako například strukturování a textové labely. Což měl ten Fortran už od roku 1977.

_________________
Plesnivý sýr z Tesca, zatuchlé kuřecí řízky z Albertu, oslizlé hovězí a myší trus z Lidlu.
Nákup potravinářské inspekce v ČR, říjen 2023.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Historie vzniku jazyka BASIC
PříspěvekNapsal: 19.07.2018, 17:54 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 24.05.2018, 22:32
Příspěvky: 1972
Bydliště: Most, Praha
Has thanked: 863 times
Been thanked: 697 times
Viditelně ho to tam nebaví protože má v hlavě Wokno.

_________________
i++ (INC) increment
i-- (DEC) decrement
i@@ (EXC) excrement


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Historie vzniku jazyka BASIC
PříspěvekNapsal: 19.07.2018, 20:04 
Offline
Radil
Uživatelský avatar

Registrován: 13.05.2013, 17:48
Příspěvky: 529
Bydliště: Košice
Has thanked: 423 times
Been thanked: 265 times
Busy píše:
A take MRS (trosku si prihrejem polievocku) ide este dalej - zdrojak nie je ulozeny ani vo forme tokenov, ale priamo ako kody instrukcii.
Aj Prometheus to presne takto robí.

_________________
https://pmd85.borik.net - PMD 85 Emulátor, PMD 85, PMD 32-SD
https://pp01.borik.net - PP 01 Emulátor, PP 01, SD-ROM Modul


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Historie vzniku jazyka BASIC
PříspěvekNapsal: 20.07.2018, 17:08 
Offline
Pan Generální
Uživatelský avatar

Registrován: 23.03.2014, 20:13
Příspěvky: 2773
Has thanked: 224 times
Been thanked: 601 times
Ten Křivánek si nedá pokoj. Nejdřív se vyřádil na Céčku, teď se (nostalgicky) pouští i do BASICu: http://www.abclinuxu.cz/blog/squeaker/2018/7/basic/ :lol:

_________________
Plesnivý sýr z Tesca, zatuchlé kuřecí řízky z Albertu, oslizlé hovězí a myší trus z Lidlu.
Nákup potravinářské inspekce v ČR, říjen 2023.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Historie vzniku jazyka BASIC
PříspěvekNapsal: 20.07.2018, 17:18 
Offline
Profík
Uživatelský avatar

Registrován: 31.08.2014, 16:27
Příspěvky: 993
Bydliště: Praha
Has thanked: 63 times
Been thanked: 371 times
faraon píše:
Ten Křivánek si nedá pokoj. Nejdřív se vyřádil na Céčku, teď se (nostalgicky) pouští i do BASICu: http://www.abclinuxu.cz/blog/squeaker/2018/7/basic/ :lol:

Ale je to celkem neškodná zábava. A teď mne omluvte, jdu si na abclinuxu trochu zatrollovat.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Historie vzniku jazyka BASIC
PříspěvekNapsal: 20.07.2018, 21:24 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 06.10.2015, 17:37
Příspěvky: 1554
Bydliště: Praha východ
Has thanked: 11 times
Been thanked: 144 times
Hm, ono je to trošku jinak. První BASIC vznikl v roce 1971-72 u Hewlett Packard a byl jím vybaven stolní počítač HP 9830A - viz http://www.hpmuseum.org/hp9830.htm , který měl LED maticový (5x7) 1-řádkový displej, na dnešní dobu 1cm velké znaky. BASIC v ROMech používal čísla řádek. Automatické řádkování bylo po 10, přičemž bylo možno nastavit jiné řádkování. Ale řádkování po 10 bylo výhodné, protože bylo možno vkládat řádky prostým napsáním čísla řádku, např. 15 PRINT [A]; čímž se tento příkaz vložil mezi řádky 10 a 20. BASIC u HP 9830A měl na svoji dobu spoustu vymožeností a směle konkuroval tehdejšímu Fortranu. Hewlett Packard tento BASIC později rozšířil , nazval HP BASIC a ten pokračoval u počítačů HP 9845A/B/C , HP-85 a dalších.

Zajímavé bylo, že program napsaný v HP BASIC pro počítače HP 9845A/B/C byl rychlejší, než stejný program napsaný v assembleru téhož počítače. Tento fenomén byl všeobecně znám tisícům uživatelů HP 9845 po celém světě, kteří to stále testovali a zkoumali, ale tuto záhadu nikdo kloudně neobjasnil. Od HP v tomto směru bylo mlčení.

_________________
Hyperinzerce - historické počítače

ComputerAsylum WEB: http://www.computerasylum.co.uk
Twitter: https://twitter.com/COMPUTERASYLUM
Zprávy: https://www.euronews.com/ https://www.aljazeera.com/
Obrázek


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Historie vzniku jazyka BASIC
PříspěvekNapsal: 20.07.2018, 21:44 
Offline
Pan Generální
Uživatelský avatar

Registrován: 23.03.2014, 20:13
Příspěvky: 2773
Has thanked: 224 times
Been thanked: 601 times
Ale no tak, ta fotka výše je rozhodně focená dřív než v roce 1970, smrkáčovi na ní by mělo být něco přes 12 let ;-)

Možná první BASIC u HP, ale skutečně první BASIC se rozběhl 1. května 1964 kolem čtvrté hodiny ráno dartmouthského času.

A ono se to moc nezmiňuje, ale byl to také první jazyk vytvořený speciálně pro operační systém se sdílením strojového času, což byl současně s ním vyvíjený DTSS (Dartmouth Time Sharing System)!

_________________
Plesnivý sýr z Tesca, zatuchlé kuřecí řízky z Albertu, oslizlé hovězí a myší trus z Lidlu.
Nákup potravinářské inspekce v ČR, říjen 2023.


Nahoru
 Profil  
 
Zobrazit příspěvky za předchozí:  Seřadit podle  
Odeslat nové téma Odpovědět na téma  [ Příspěvků: 19 ]  Přejít na stránku 1, 2  Další

Všechny časy jsou v UTC + 1 hodina [ Letní čas ]


Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 4 návštevníků


Nemůžete zakládat nová témata v tomto fóru
Nemůžete odpovídat v tomto fóru
Nemůžete upravovat své příspěvky v tomto fóru
Nemůžete mazat své příspěvky v tomto fóru
Nemůžete přikládat soubory v tomto fóru

Hledat:
Přejít na:  
Založeno na phpBB® Forum Software © phpBB Group
Český překlad – phpBB.cz