Hm, nemohl byste, prosím, doplnit tabulku operátorů o příslušný „codepoint“ v unicode (např. pro „⌹“ je to „U+2339“, atd..). Jinak skvělý článek, díky…
Článek je zajímavý úvod k APL. Ukázat jeho nesmírnou moc neznalci je asi nemožné, ale těm u kterých vzbudil zájem musím doporučit zmiňovaný J. Má všechny skvělé vlastnosti APL a mnoho navíc a používá ASCII, lze v něm tedy pohodlně programovat na normální klávesnici. Od doby, kdy jsem se naučil J, mě žádný jiný jazyk ani vzdáleně tolik nezaujal a nenadchnul. Chcete dobrou záminku, proč se jej naučit? Vrhněte se na Project Euler, po vyřešení úloh se můžete pokochat řešením v J od Rogera Huie, který s E. Iversonem vytvořil J.
Dneska to byl takovy jemny uvod, aby se lidi moc nepolekali :-) Sam vim, jak na me pusobily prvni ukazky APL, kdyz jsem nevedel, co ktery symbol znamena (APL je jednim z jazyku, ktere vyzaduji alespon par hodin na „zaziti“), ale v dalsim dilu mozna nekteri programatori uvidi, jak silne je APL (nebo jazyky J ci trosku vzdalenejsi K) pri praci s maticemi nebo i slozitejsimi strukturami (matice v maticich, takovy zobecneny strom).
Diky za odkaz na Project Euler, na ten jsem uplne zapomel.
Tam jsem poprvé viděl J i já a je to masakr. Ani jsem nevěděl, že tam ta řešení na fórum dává přímo spoluautor jazyka…
Proc dava rho EMPTY_LIST jako vysledek prazdny retezec a ne nulu? To je preklep nebo nejaky nepekny rys jazyka?
Jinak diky za hezky clanek.
Btw, kde se dá sehnat ten kejbord? Nejlépe přímo s podpisem a věnováním pana Iversona…
Pane Tišňovský, díky za to, že jste mě osvítil…
Konečně jsem našel to pravé náboženství…APL
Clanok ma zaujal, tak som si chcel vyskusat APL. Nasiel som implementaciu od FSF, ktora sa vola a+ . Lenze problem. Ako „IDE“ to pouziva xemacs. Ale mam to akesi rozbite. Isiel som podla navodov a nie a nie sprevadzkovat klavesnicu pre a+. Tam moje pokusy skoncili :)
Uz chapem, preco vzniklo J-cko :) Ani nejde o to, ze ta klingoncina je ledva citatelna, ale nejde ani zapisat.
Mozno by schodnou cestou bola notacia a la LaTeX. Napriklad „1 \klikihak 2“.
jestli nebude vadit ne-OpenSource IDE, tak Dyalog je mozna dobra volba na odzkouseni: http://www.dyalog.com/linux.htm
(personal edition)
Dakujem, vyskusam. Momentalne sa hram s J-ckom ale A+ vyzera byt lepsie vybavene.
Tohle nemohl vymyslet zdravy clovek. Tu logiku pod tim samozrejme ano, ale ten zapis… To musel byt nejaky masosadisticky asocial.
No, matematik…
Infixovy zapis funkci neni tak spatny, hlavne se ziska pomerne pekna syntaxe bez nadbytecnych zavorek.
A mezi monadickymi a dyadickymi funkcemi musi rozlisovat prakticky vsichni programatori (i kdyz tem funkcim rikaji „operatory“, to je vsak z hlediska APL newspeak :-).
Tohle vsechno beru, ale ty hieroglyfy, to musel hodne dlouho premyslet, jak ten jazyk znepristupnit.
On to Dr. Iverson (matematik) zpocatku psal jako jazyk pro zapis matematickych algoritmu v knizkach a clancich, takze to naopak znamenalo zjednoduseni oproti tomu rozsypanemu caji, ktery maji matematici tak radi (minimalne je vsechno na jednom radku, ne jako v pripade sum/integralu/zlomku/matic/determinantu/indexu/mocnin atd. rozsekane vsude mozne).
Potom se toho zapisu (chcete-li gramatiky) chytli lidi od pocitacu a proste 1:1 z toho udelali programovaci jazyk, coz je opet vhodne chapat v kontextu doby – ASCII teprve zacinala a vubec nebylo jiste, jestli zrovna toto kodovani je to prave, bylo tady jeste EBCDIC, takze kdyz se zavedlo 80 hieroglyfu k 26 znakum velke abecedy (mala nebyla zpocatku pouzita), tak se v pohode vlezli do 128 znaku (a zmenit typove kolecko u tiskarny bylo jednoduche :-).
Nakonec z toho vysel docela zajimavy neobvykly jazyk, kteri uz asi napriklad C++ nebo Javu nenahradi :-) ale zkusit si v nem napsat nejaky algoritmus je docela zabava.
Ty pises z Finska? Jestli ano, tak mas vsude okolo sebe dukaz, ze i prirozene jazyky jsou nekdy ponekud „nepristupne“ :-)
[aspon ja jsem mel po priletu do Finska dojem, ze v letistnim rozhlasu omylem pustili pasek pozpatku :-)]
Neni to tak strasne. Pulka finstiny je prevzata ze svedstiny, druha z rustiny a cele je to pekne zabaleno do vysoce pravidelne gramatiky.
hoj, tak by me zajimalo v cem vsem umis kodit ;) Po prvnim pohledu na tabulku operatoru se mi otocil kufr naopak :D
A to jsem pro zachovani predvanocni pohody vypsal jen ty uplne zakladni, chybi jich jeste asi 60 :-) Pristi tyden asi prihodim vsechny operatory z APL2, to je trosku vetsi maso…
Byl jsem v Kunsthistorisches Museum Wien a tam meli takovou kamennou desku a na ni taky byly nejaky programy v APL