Zobrazit příspěvky

Tato sekce Vám umožňuje zobrazit všechny příspěvky tohoto uživatele. Prosím uvědomte si, že můžete vidět příspěvky pouze z oblastí Vám přístupných.


Příspěvky - Idris

Stran: 1 ... 130 131 [132] 133 134 ... 153
1966
C++ patří mezi nejtěžší programovací jazyky, s komplikovaností knihy musíš počítat. Pokud jsi začátečníkem, začni raději s Javou - ta je jednodušší a získáš lepší návyky.
Java je do začátků strašně ukecaná... a taky mám dojem, že z ní pak mají občas lidé pocit, že se všechno musí řešit přes výjimky, což mi jako lepší návyk nepřijde.
Výjimky jsou výrazně lepší, než předávání chybových stavů. Bez mechaniky výjimek se objektově moc programovat nedá.
OO nějak esenciálně závisí na výjimkách? Jak jejich absence omezuje posílání zpráv?
Bez výjimek vlastně nemáš odezvu, co se s tou zprávou stalo - zda byla přijata či odmítnuta. Můžeš programovat i bez nich, ale praktické to není.
Nějak nevidím důvod, proč bych k tomu potřeboval výjimku...
Jak to tedy uděláš, když ten chybový stav nesmíš předat returnem ani parametry nesmíš předávat odkazem?
Jenže ty ho můžeš vrátit a parametry lze samozřejmě předávat odkazem.

1967
Taky mne napadlo, že vhodně poskládaný funkce vracející Maybe/Either s nějakou omáčkou kolem by se mohli celkem podobat fungování výjimek. Compile-time.
Ano, Maybe je isomorfní s výjimkami.
To je dost zajímavé tvrzení na to, jak je tu pojem "výjimky" dost abstraktní.
Idea výjimek je, že odchytáváš určitou skupinu konkrétních chybových stavů v konkrétním stromu výrazů. Víc toho není. IMHO zbytek je implementační detail.
Výjimky jsou hlavně konkrétní implementace, prostě takový elegantnější long jump z céčka. Maybe je instanciace určité abstraktní konstrukce (“návrhového vzoru”), kterou lze implementovat třeba právě výjimkami. Ve skutečnosti třeba řez v logickém programování je taky jen instance Maybe a vskutku se implementuje výjimkami (jen tedy poněkud složitějšími).

A abych se vrátil z odbočky, Haskellu chybí vzhledem k “výjimkám” transparentnost, v blbovzdorném funkcionálním jazyce by měl překladač podporovat automatický lifting na Kleisliho kompozici, když nějaká normální funkce dostane instanci Maybe. Možná právě tohle lidi mate, jakmile někde zavedu v Haskellu Maybe, kontaminuju tím celý kód s tímto místem propojený. Přitom je pro překladač triviální přidat před onu funkci η, aby do sebe vše typově zapadalo.

1968
Taky mne napadlo, že vhodně poskládaný funkce vracející Maybe/Either s nějakou omáčkou kolem by se mohli celkem podobat fungování výjimek. Compile-time.
Ano, Maybe je isomorfní s výjimkami.

1969
Jen je k němu ta teorie prostě blíž než u C++.
Tak něco takového jsem víceméně chtěl říct. Plus to, že Haskel je víc deklarativní, což má IMHO velké důsledky. Jak na požadavky vývojáře, tak i na kvalitu výsledné práce.
Haskell je důsledně deklarativní, což je jenom dobře, ale jak to souvisí s C++ bordelem?

1970
C++ patří mezi nejtěžší programovací jazyky, s komplikovaností knihy musíš počítat. Pokud jsi začátečníkem, začni raději s Javou - ta je jednodušší a získáš lepší návyky.
Java je do začátků strašně ukecaná... a taky mám dojem, že z ní pak mají občas lidé pocit, že se všechno musí řešit přes výjimky, což mi jako lepší návyk nepřijde.
Výjimky jsou výrazně lepší, než předávání chybových stavů. Bez mechaniky výjimek se objektově moc programovat nedá.
OO nějak esenciálně závisí na výjimkách? Jak jejich absence omezuje posílání zpráv?

Bez výjimek vlastně nemáš odezvu, co se s tou zprávou stalo - zda byla přijata či odmítnuta. Můžeš programovat i bez nich, ale praktické to není.
Aha.

1971
Vždy radostu si tu počíst. Někdo slyšel haskellu a hnedka se už považuje za neobyčejného (nebo jaký je opak obyčejného?) vývojaře.  8)
Nechtěl bys to trochu rozvést? Ovládáš snad Haskell lépe než ti, kteří se tu o něm zmiňují? Pochlub se, rád se přiučím.
Připojuji se, také bych se rád naučil něco nového o Haskellu nebo FP obecně.

1972
C++ patří mezi nejtěžší programovací jazyky, s komplikovaností knihy musíš počítat. Pokud jsi začátečníkem, začni raději s Javou - ta je jednodušší a získáš lepší návyky.
Java je do začátků strašně ukecaná... a taky mám dojem, že z ní pak mají občas lidé pocit, že se všechno musí řešit přes výjimky, což mi jako lepší návyk nepřijde.
Výjimky jsou výrazně lepší, než předávání chybových stavů. Bez mechaniky výjimek se objektově moc programovat nedá.
OO nějak esenciálně závisí na výjimkách? Jak jejich absence omezuje posílání zpráv?

1973
Se vzorci si člověk vystačí, ale musí mít celou tu mašinerii za nimi, tj. typový systém, syntaktické cukrovinky apod.
Není to tak zlé. V XSLT je jen 5 typů a syntaktického cukru tam moc není. Problém bude jinde.
To není zrovna plnohodnotný jazyk. V Haskellu už to vypadá jinak.
XSLT je úplným programovacím jazykem, stejně jako Haskell.
Nic moc pokus o provokaci, že je turingovsky úplný neznamená, že je srovnatelný s Haskellem.

1974
Já bych si dovolil trochu offtopic říct jestli je to dobrý nápad. Jdeš do prváku a navíc už jsi jednou zfailil, je rozumné nabrat si hned další kýbl povinností? Nedá se ta druhá škola studovat třeba jako mimořádné studium?
Nebo se soustředit na jednu VŠ a tu opravdu dokončit třeba s červerným diplomem, než dvě nedokončit, nebo bídně?
V tomto vedou univerzity v USA, člověk si klidně může vedle sebe zapsat astrofyziku a starořečtinu, aniž by to kohokoliv udivovalo. V ČR jsou studijní plány na začátku studia příliš rigidní. Skutečně je lepší soustředit se na jednu VŠ, ve vyšších ročnících se pak dá víc vybírat, třeba i na jiných fakultách.

1975
Se vzorci si člověk vystačí, ale musí mít celou tu mašinerii za nimi, tj. typový systém, syntaktické cukrovinky apod.
Není to tak zlé. V XSLT je jen 5 typů a syntaktického cukru tam moc není. Problém bude jinde.
To není zrovna plnohodnotný jazyk. V Haskellu už to vypadá jinak.

1976
Haskell a spol jsou více na to dobře si promyslet co chceš. Protože zapsat to pak je na pár řádek. A možná požadavek na větší teoretický rozhled. V Javě ani v C++ nepotřebuješ prakticky nic znát.
Mně přijde, že mnoho algoritmů (jejich zápis) se v obou přístupech prolíná. Promyslet se člověk akorát musí, jak obejít to, že do proměnných nejde přiřazovat, ale to už je o neznalosti specifických řešení (nebo “vzorů”).

Fígl je v tom, že bys do proměnných ani neměl chtít zapisovat, podobně jako nepřepisuješ funkci. V XSLT to je také tak a docela mi trvalo, než mi docvaklo, že by byla blbost do nich zapisovat. Není tam ani "else" a časem jsem zjistil, že nepotřebuji ani "if" či "choose". Podobně dopadl i "for-each" - cykly už také nepotřebuji. Ta změna myšlení není jednoduchá, ale stojí za to.

Nakonec přijdeš na to, že ve funkcionálních jazycích žádné algoritmy nepotřebuješ, vystačíš si se vzorci.
Však taky nechci, ale většinu lidí to mate, protože to jinak neumí.

K poslední větě: 1) Najdi definici algoritmu. 2) Se vzorci si člověk vystačí, ale musí mít celou tu mašinerii za nimi, tj. typový systém, syntaktické cukrovinky apod.

1977
Mně přijde, že mnoho algoritmů (jejich zápis) se v obou přístupech prolíná. Promyslet se člověk akorát musí, jak obejít to, že do proměnných nejde přiřazovat, ale to už je o neznalosti specifických řešení (nebo “vzorů”).
I v Javě jsou zkušenější programátoři.
Nepochybně, ale tady jde o schopnost pochopit, ne zkušenosti.

1978
Haskell a spol jsou více na to dobře si promyslet co chceš. Protože zapsat to pak je na pár řádek. A možná požadavek na větší teoretický rozhled. V Javě ani v C++ nepotřebuješ prakticky nic znát.
Mně přijde, že mnoho algoritmů (jejich zápis) se v obou přístupech prolíná. Promyslet se člověk akorát musí, jak obejít to, že do proměnných nejde přiřazovat, ale to už je o neznalosti specifických řešení (nebo “vzorů”).

1979
Haskell je naopak velmi elegantní a uspořádaný, akorát ho běžný vývojář moc nepobírá
Takže na jedné straně máme "dokonalé jazyky" se kterými většina vývojářů nechce nic mít
Ne že nechce, ale prostě nechápe. Nejde jen o Haskell, to je ve světě FP poměrně nenáročný entry level, ale nedávno tu byla debata o závislostních typech, které jsou ještě mnohem elegantnější a “dokonalejší”, tam už ale tápou i “senioři”.

1980
Odkladiště / Re:(Rádoby)frikulínská komunikace firem
« kdy: 12. 09. 2019, 16:40:27 »
Tak tedy píšu si, nabízet retro automatové hry na pracovišti.
U nás ve firmě bývalí kolegové postavili opravdovej arkádovej automat (velká bedna, televizor, joysticky, tlačítka), dali tam RetroPi, nebo jak se to jmenuje, takže je tam asi tak milion a půl všech možných klasických arkádovek a nikdy jsem neviděl nikoho to hrát. Já jsem to zkusil jenom jednou, když jsem na firmě přespával přes víkend a jeden večer se mi nechtělo nic bastlit :)
Nejlepší je pinball, starý dobrý mechanický...

Stran: 1 ... 130 131 [132] 133 134 ... 153