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 - Mirek Prýmek

Stran: 1 ... 122 123 [124] 125 126 ... 618
1846
Server / Re:Turris Omnia jako malý firemní intranetovy server
« kdy: 05. 04. 2018, 09:49:55 »
vydel som psychopatov ktory na RPI postavily vyrobnu linku lebo je to "lacne" - 30e vs 150e a tak to aj dopadlo
Jenom tak pro zajimavost: https://www.unipi.technology/

1847
Vývoj / Re:Vyšší typy
« kdy: 04. 04. 2018, 10:43:33 »
Tak třeba hned v tom prvním odkazu výslovně stojí mimo jiné:

"when::∀(m::∗ → ∗).Monad m⇒Bool→m()→m()
The kind ascription ∗ → ∗ makes explicit the fact that m is a higher-kinded type variable"

Jasnější to snad být ani nemůže.
Zjevně by být mohlo, protože to interpretuješ špatně.

Ono to taky pokračuje dál:
Citace
: it abstracts type constructors such as Maybe and [ ]
- tj. předáváš parametr kindu * -> *, což můžeš udělat jenom v jazyce, který má "higher order kinds" (="higher-kinded types") - naprosto analogicky jako můžeš funkci (typ T -> U) předávat jako parametr jenom v jazyce, který podporuje higher order functions.

Tahle citovaná věta říká, že jako parametr můžeš použít samotný List nebo samotný Array. A to třeba v Javě nejde, protože typy kindu * -> * jako parametr použít nemůžeš. Protože Java HKT nemá.

Prostě nevím, co tam hledáš za složitosti. Je to úplně prostá, doslovná analogie, jenom "o úroveň výš" (nad "jinou doménou): type ~ kind, function ~ type constructor, higher order function ~ higher order type constructor. Stejně jako higher order function je funkce, která přijímá jinou funkci (per se), higher order type constructor je type constructor, který přijímá jiný type constructor (per se, bez "zaplněných děr pro parametry").

Máš to hned na začátku toho článku:
Citace
Higher-kinded polymorphism takes things a step further, abstracting both types and type constructors,
just as higher-order functions abstract both first-order values and functions.

1848
Vývoj / Re:Vyšší typy
« kdy: 04. 04. 2018, 10:23:02 »
Sorry, klokane, Rust neznám natolik, abych mohl to tvoje sdělení dešifrovat :)

To, že order je řád, tady nikdo nezpochybňuje. Řád není totéž co kind (druh), a právě proto tam používají termín order a ne kind. To je, řekl bych, jasné.
Já bych do toho češtinu vůbec nepletl, zbytečně to s ní komplikuješ. Jinak "order" opravdu není "kind". Je to obecný termín používaný v různých kontextech: higher order functions, higher order kinds, higher order logic. Ve všech těhle kontextech má ale analogický význam.

všimni si, prosím: eliminovat HK znamená všechno převést na *
Přesně tak, ale imho ne z toho důvodu, který si myslíš.

Úplně stejně je to s funkcemi - pokud máš HO functions, můžeš napsat
Kód: [Vybrat]
>>> def f(x):
...   return x+1
...
>>> def g(x):
...   return x(2)
...
>>> g(f)
3
- všimni si, že předáváš "samotné f", neaplikuješ ho na žádné parametry. f má typ number -> number a proto g má typ (number -> number) -> number. f je prvního řádu, g je druhého/vyššího řádu.

Pokud bys HO functions v jazyce neměl, udělat to nemůžeš. Jediné, co můžeš, je:
Kód: [Vybrat]
>>> def f(x):
...   return x+1
...
>>> def g(x):
...   return x+2
...
>>> g(f(1))
4
f i g jsou prvního řádu a obě mají typ number -> number. Jazyk typ (number -> number) -> number nepodporuje.

Tj. pokud jazyk nepodporuje higher order functions, nemůžeš do funkce předat "samotnou funkci", tj. funkci, která není aplikovaná na všechny parametry, které přijímá. Prvně musíš "díry pro parametry zalepit", tím z funkce uděláš hodnotu. Tj. z number -> number se aplikací na hodnotu typu number stane z celé té věci jenom number, což je hodnota. Předáváš tedy hodnotu, ne funkci.

...a úplně stejně pokud jazyk nepodporuje higher-kinded types, nemůžeš v jazyce použít "typový konstruktor" (funkci přijímající typ a vracející typ) per se - s "nezalepenými dírami pro parametry". Prvně musíš typový konstruktor aplikovat na nějaký proper type, tím se z toho celého stane taky proper type a ten už předat můžeš. Proto v Javě nemůžeš nijak operovat se samotným List (bez parametru). Všude mu nějaký parametr musíš dát, abys z něj vytvořil proper type, který už předat můžeš.

1849
Vývoj / Re:Vyšší typy
« kdy: 04. 04. 2018, 01:03:34 »
přestřelka zboj vs. mirek po bambilijóntéosmé?
Co mám já a zboj společnýho se sporem mezi Jestrem a klokanem?

1850
Vývoj / Re:Vyšší typy
« kdy: 02. 04. 2018, 18:18:14 »
*->* ale taky *->*->*->* jsou vyšší druhy (HKT) prvního řádu (analogicky klasické funkce).

(*->*)->* je vyšší druh (HKT) vyššího řádu (HRT) (analogicky funkce vyššího řádu).
Imho se mýlíš. Snad se shodnem na tom, že List<T> v Javě má kind * -> * a List<Int> má kind *. No a pak si už můžeš snadno kdekoli najít, jestli Java má nebo nemá higher-kinded types. Najdeš, že nemá. Protože * -> * je first order kind a není to teda "higher-order kind" neboli "higher-kinded type". V Javě nejsou typy s kindem (* -> *) -> *, narozdíl od Haskellu.

1851
Vývoj / Re:Vyšší typy
« kdy: 02. 04. 2018, 18:00:35 »
P.S. Ty tvoje odkazy výslovně uvádí přesně to, to tady píšu furt dokola: *→* není HK. Tímto jsi ze sebe udělal totálního debila. Přečti si ty texty nejdřív sám, pak se můžeš pokorně připlazit zpátky a omluvit se.
Máš sice pravdu, Jestere, ale škoda, že to shazuješ takhle zbytečnými urážkami. To přece není nutný, ne? (Jo, vím, že sis nezačal :) )

1852
Co když všechny banky na trhu budou chtít vysoké úroky?
Úrok se odvíjí od dostupnosti peněz na trhu.


1853
A musí se školáci na prvním stupni učit programovat? Tedy pokud k tomu sami neinklinují. [...] Spíš bych viděl, že by se žáčci měli seznamovat s tím, jak lze počítače využívat.
To je hodně dobrá otázka po vůbec smyslu výuky informatiky, na kterou nejspíš nikdo ve školství neumí dát rozumnou, něčím podloženou odpověď. Protože ji neumí dát ani u daleko "tradičnějších" předmětů. Zkuste se prvně zeptat, jaký smysl má třeba výuka výčtů (!!!) děl obrozenců. A pak se dá bavit o tom, jaký smysl má výuka Wordu, Karla, Scratche...

Imho se dá informatika pojmout třemi základními způsoby:
1. výuka ve stylu "řidičák na počítač" - tj. klasika Word, Excel, maily, ... Prostě předat základní znalosti, o kterých si myslíme, že to je nutné minimum pro každého.

2. výuka "programování" ve stylu "kuželosečky" - tj. naučíme vás Pascal, kdyby náhodou někdo z vás chtěl být programátor - a ti ostatní to nějak přetrpte, ono vás neubude, když to budete znát (stejně nebudou, protože to nedaj).

3. výuka "algoritmického myšlení", zapojení kreativity. Tady máte nějaké elektronické věcičky, ukážeme vám, co asi tak umí, a zkuste vymyslet, jak by se daly použít k řešení nějakého problému, který vás zajímá.

První i druhý způsob mi přijde zbytečný a neefektivní. Třetí je skvělý, protože nejde ani tak o konkrétní znalosti jako o naučení se řešit problémy "informatickým" způsobem - analyzovat problém, abstrahovat, použít dostupné prostředky, zapojit kreativitu, pochopit, že krása a zároveň záludnost počítačového světa je v tom, že stroje jenom otrocky (ale spolehlivě a přesně) dělají to, co jim člověk řekne. Vyzkoušet si tenhle pohled na svět se bude perfektně hodit i budoucímu operátorovi CNC strojů, který není žádný Einstein ani Goedel... A pokud by byl skvělý učitel (což bohužel většinou není), tak to může děcka i dost bavit a polapit do tenat informatiky ;)

1854
Reaguješ na „vlákno“, které začalo komentářem uživatele pepicekk, který mluvil pouze o penězích. Uznávám, ve zdejším CMS je snadné toto přehlédnout.
Ne, reaguju na chybnou úvahu, že co není výhodné pro developera, nemůže být výhodné pro jednotlivce.

1855
Jako úroky z nesplacené částky (tomu bych docela věřil, ale o kolik to tak může být?
Nemůže to tak být. Úrok se odvíjí od dostupnosti peněz na trhu. Banka mi nemůže zvýšit procenta, protože už platím dlouho, protože bych ten úvěr jednoduše refinancoval novým u jiné banky. Lidi, používejte trochu mozek, promatkupřírodu!


1856
snažím se tím poukázat právě na fakt, že developeři, investoři či banky považují pronájem k bydlení za nevýdělečný a/nebo rizikový. Pokud by tomu bylo naopak, už by takové projekty existovaly.
To je zcela chybná úvaha.

Banky považují výtobu traktorů za nevýdělečnou a/nebo rizikovou. Pokud by tomu bylo naopak, už by traktory vyráběly.

Q.E.D.

Propánajána, banky jsou BANKY. Půjčují peníze. Nevyrábějí traktory ani nepronajímají byty.

1857
Přijde mi pak bláhové, když tohoto stavu nejsou s to dosáhnout developeři a banky, když si jednotlivec myslí, že pořízením vlastní nemovitosti šetří.
Ale vždyť to tady zaznělo už x-krát: bydlení ve vlastním dává člověku těžko ocenitelné výhody typu stabilita, neotravování se s cizím vlastníkem, možnost nemovitost kdykoli podle svého uvážení upravit atd. atd. To jsou benefity (pro ekonomicky zatížné: příjmy), které by developer asi dost těžko nějak vytěžil, že.

1858
YYA-sopimus neměl (nad úroveň effektu motýlích křídel) vliv na osobní svobody obyvatel Finska, což je tu uváděno jako důvod k chataření ve východním bloku.
Které části věty "Ne, že by to něco na věci měnilo" jsi nerozuměl?!

1859
Tvá argumentace má podstatné mezery. Finsko je sice na východě, ale v žádném východním bloku nebylo a „dači“ jsou tu podobně populární jako v tom bývalém východním bloku.
Ne, že by to něco na věci měnilo, ale jenom technická:

Po druhé světové válce se Finsko ocitlo v šedé zóně mezi Západem a Sovětským svazem. „YYA dohoda“ (zkratka slov ystävyys-, yhteistyö- ja avunantosopimus, což znamená Smlouva o přátelství, spolupráci a vzájemné pomoci) dávala Sovětskému svazu možnost vlivu na finskou domácí politiku. Mnoho politiků, jako např. prezident Urho Kekkonen (1956 až 1981), využívalo jejich vztahů s Moskvou k řešení vnitrostranických sporů, což mělo za následek, že Sovětský svaz měl ještě větší vliv. Jiní politici, jako třeba Karl-August Fagerholm, se naopak snažili sovětskému vlivu umíněně čelit.
https://cs.wikipedia.org/wiki/Finsko#%C5%A0v%C3%A9dsk%C3%A1_a_rusk%C3%A1_nadvl%C3%A1da

Takže s tím "Finsko v žádném východním bloku nebylo" to zas tak jednoduchý není...

1860
S inflací poroste splátka hypo (Ptž banka by pak tratila)
Ne, tak to opravdu nefunguje.

Úrok je prostě procento z nezplacené jistiny. A pointa je v tom, že si půjčím dnešní ("drahé") peníze, ale splácím zítřejšími a pozítřejšími penězi (čímdál "levnějšími").

Že banka nebude tratit, je zajištěno tím, že to procento je stanoveno tak, aby pokrylo právě tu inflaci + riziko + zisk.

Stran: 1 ... 122 123 [124] 125 126 ... 618