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 - Cikáda

Stran: 1 ... 32 33 [34] 35 36 ... 54
496
Vývoj / Re:Rychlost Haskell vs. C++
« kdy: 28. 08. 2018, 08:52:49 »
Pánové, observable side effect je terminus technicus: https://en.wikipedia.org/wiki/Side_effect_(computer_science). Pokud neznáte ani takové základní věci, jak se chcete bavit o tom, co může překladač vyhodit a co ne? Normálně se tím myslí:

In computer science, a function or expression is said to have a side effect if it modifies some state outside its local environment, that is to say has an observable interaction with the outside world besides returning a value.

Zjevně v tom máte zmatek. Prakticky zjednodušeně si to můžete představit tak, že observable side effect je něco, co mění výstup programu.

Toto asi všichni známe, otázkou je, kde je ten side efect. Ta funkce je pure, spadnutí programu není side-efect.

Cikádo, co se týká derefence null pointeru, C standard explicitně říká, že je to UNDEFINED behavior. To znamená, že překladač si s tím může v podstatě udělat co chce. Klidně tu derefenci při optimalizaci vyhodit, protože to stále odpovídá definici undefined behavior. Čekal bych, že takové základní věci budeš znát?

Tak si tam strč to dělení nulou, nebo jinou random adresu. Pointa je jasná.

@lopata: Omlouvám se, špatná citace - měl jsem namysli opačný směr, tj. jak lazy evaluation může rozbít "strict předpokládající" kód. Sorry. :) Na tento případ bys příklad měl?
Ano, taky na to čekám...
Projev taky nějakou vlastní iniciativu. Já jsem ti funkční příklad dal, máš všechny informace potřebné k řešení, opačným směrem to určitě zvládneš taky, když v Haskellu děláš 5 let. Opravdu to není nic složitého, zkus se trochu snažit.

On se blbě vymýšlí příklad, když neexistuje...

497
Vývoj / Re:Rychlost Haskell vs. C++
« kdy: 28. 08. 2018, 08:07:55 »
imho zrovna v tomto případě bych "čekal", že to optimalizuje kompilátor a onen "vadný řádek" vyhodí (tak jako třeba v C) - zvlášť když zapínáš optimalizace.
Tak to bys čekal špatně. Kompilátor to NESMÍ vyhodit, protože to má při strict vyhodnocení observable side-effects. Nesmí to vyhodit ani v C ani v Haskellu, v tom není žádný rozdíl.

Kód: [Vybrat]
 1 #include <stdio.h>
 2 #include <stdlib.h>
 3
 4 int main(void) {
 5     int x = 9;
 6     int* ptr1 = &x;
 7     int* ptr2 = NULL;
 8
 9      int q = *ptr1;
10     int y = *(ptr2);
11     printf("x: %d\n", q);
12
13     return 0;
14 }
15

Zkus to zkompilovat takto:

Kód: [Vybrat]
gcc -O2 test.c -o test

pak takto:

Kód: [Vybrat]
gcc test.c -o test

a nakonec to modifikuj tak, aby se výraz
Kód: [Vybrat]
*(ptr2)
neukládal do proměnné. :)

Btw nejsem si jist, že "observable side-effects" používáš korektně.
Btw2 ten příklad na rozbití "strict" kódu přes lazy evaluation by nebyl? Opravdu mě to zajímá. :)

498
Vývoj / Re:Rychlost Haskell vs. C++
« kdy: 28. 08. 2018, 07:00:58 »
Kód: [Vybrat]
myDiv :: Float -> Float -> Float
myDiv x 0 = error "Division by zero"
myDiv x y = x / y

main =
  do
    let a = myDiv 1 2
    let b = myDiv 1 0
    print a

Lazy:
Kód: [Vybrat]
ghc -O2 test.hs
./test
0.5

Strict:
Kód: [Vybrat]
ghc -O2 -XStrict test.hs
./test
test: Division by zero
CallStack (from HasCallStack):
  error, called at test.hs:2:13 in main:Main

imho zrovna v tomto případě bych "čekal", že to optimalizuje kompilátor a onen "vadný řádek" vyhodí (tak jako třeba v C) - zvlášť když zapínáš optimalizace.

499
Vývoj / Re:Rychlost Haskell vs. C++
« kdy: 28. 08. 2018, 06:52:25 »
@lopata: Omlouvám se, špatná citace - měl jsem namysli opačný směr, tj. jak lazy evaluation může rozbít "strict předpokládající" kód. Sorry. :) Na tento případ bys příklad měl?


500
Vývoj / Re:Rychlost Haskell vs. C++
« kdy: 27. 08. 2018, 23:14:30 »
Ty jsi nepochopil, jak to funguje. Pokud je kód v Haskellu napsaný s předpokladem lazy evaluation, tak ho strict evaluation může rozbít. (...)

Tak to bych rád viděl nějaký příklad, ať si doplním znalosti. Za tu dobu, co v Haskellu dělám, jsem na podobný případ nenarazil. :)

501
Vývoj / Re:Rychlost Haskell vs. C++
« kdy: 27. 08. 2018, 17:31:58 »
A ještě jedna věc, vem si typickou lopatu, třeba mě, která by chtěla něco dělat v Haskellu. Mám problém, jsem lepič, nějaké řešení najdu na stackoverflow. Mám další problém, další řešení najdu na stackoverflow. Slepím to dohromady. A jsem úplně v háji protože nevím, která část kódu závisí na strict vyhodnocování a která ne. Musím tu informaci někde dohledávat a případně slepený kód pochopit a upravit, na správná místa přidat bang nebo lazy patterny, aby to fungovalo. Když to neudělám, tak se to přeloží, ale v určitých případech se to nemusí chovat správně. Tohle je úplně mimo možnosti běžné lopaty.

Pokud to poslepuješ z "fungujících kousků kódu", tak se dostaneme na úroveň tohoto:

S -ffast-math lopata mít problém nebude, prostě to přeloží bez -ffast-math a všechno bude fungovat, i když třeba pomaleji. (...)

čili, bude to fungovat vždy, jen bude případně problém s výkonem. (pragma bude mít jen ten kód, co to potřebuje, protože to při a) lepení budeš vědět - tedy necháš to pouze na onom souboru b) vědět to nebudeš a tím pádem to bude možná akorát tak pomalejší s lazy eval.)

502
Hardware / Re:Pomoc s výběrem procesoru
« kdy: 23. 08. 2018, 09:35:31 »
(...) Ak sa opytam, ze ci si mam kupit Skodu Fabia alebo Skoda Rapid, tak ste schopni mi tu ponukat Daciu. (...)

Problém je, že se ptáš, jestli si máš koupit Rapid s chybějícím předním levým kolem, nebo Fabii s chybějícím předním pravým kolem. Ostatní se tě jen snažili upozornit, že by možná stálo za zvážení auto, kterému kola nechybí.

503
Hardware / Re:novy notebook, jaka grafika?
« kdy: 19. 08. 2018, 13:16:51 »
Ovšem XPS je na tom s chlazením hůř, a to tím hůř, čím budeš mít kratší úhlopříčku.

Zvláštní, právě že 13" je dost vychvalována (především ta poslední), naopak na 15" je kritika stále stejná.

504
Po usilovném hledání jsem kdysi našel Dell XPS 13 s rozlišením 1920x1080 (a tedy zřejmě matným displayem) a 16 GB RAM), tuším v Anglii. Nebyla to nejnovější verze intelu, pokud si dobře vybavuju. Zkusím si doma vzpomenout, mám uložený link.

Diky. xps13 s 16gb umim sehnat na alze, ale uz je za 50k, coz se mi nechce
https://www.alza.cz/dell-xps-13-s-tenkym-rameckem

Ale ne s FullHD, o kterém píše ;)

505
Ono i ty Windows těch 5 let vydrží, když s nima člověk nenavštěvuje pornostránky a nestahuje kdoví co.

Takový Windows jsem ještě nepotkal. Naopak s desítkama už jsem zažil BSOD i při vypínání počítače.

506
Hardware / Re:Výběr pracovního notebooku pro vývojáře
« kdy: 16. 08. 2018, 09:48:57 »
XPSka jsou super stroje, za mě taky doporučuji. (pokud není problém objednávat ze zahraničí, tak bych možná kouknul na Razer Blade nebo LG Gram, i když druhý jmenovaný na hry není ideální)

Ten prvni XPS ma jako GPU GeForce :-/

Všechny XPSka 15" mají (bohužel) nVidii, pokud se nepletu.

507
Hardware / Re:Výběr pracovního notebooku pro vývojáře
« kdy: 15. 08. 2018, 00:15:58 »
Matný displej nezminuju, to je diagnoza, prakticky s tím není žádný problém.

Prakticky s tím nemá problém člověk, co je zalezlý někde v noře. Nepotřebuju sedět před zářivkou s lesklým povrchem, když se na sebe budu chtít koukat, použiju zdrcadlo. Štěstí, že ta lesklá mánie už přešla.
Mě osobně zase přešla mánie tahat notebook na každém rohu jen abych ukáza že jsem ten "freelancer". Reálně se tak stejně dělat nedá.

A jak to souvisí?

508
Hardware / Re:Doporučení ThinkPadu na VŠ?
« kdy: 15. 08. 2018, 00:13:03 »
Možná (skoro určitě) vadný kus? 303 jsem mám po ruce dvě, starší s Haswellem (ale bez grafiky, pokud se nepletu) už přišla o panty (zase se k ní nechovali úplně v bavlnce), novější se Skylake bez problému (i když je pravda, že na něm mám Ubuntu - tam se muselo spravit nefunkční podsvícení klávesnice, ale to je na chvilku - Windows jsem nebootoval sto let).

Možná by to vyřešil reinstall Windows...

509
Hardware / Re:Doporučení ThinkPadu na VŠ?
« kdy: 14. 08. 2018, 18:42:21 »
Nějaký Zenbook? V té cenové relaci jsou i3 s FullHD matným displejem, slušná výdrž... Mám tu jeden starší (ale vyšší konfigurace) a v pohodě, jen to tedy není Thinkpad.
Asus Zenbook bych nedoporučil. Sice je kovový, ale displej při otevírání vrže a notebook se nevypíná/nelze používat režim spánku. On asi každý notebook bude mít ty svoje chyby.. Ale zkrátka bych si ho už znovu nekoupil.

Který model? Prošly mi rukama nějaký 303, 310, 410, 305 + možná ještě nějaké z těch nových a na Ubuntu jsem s tím problém neměl.

510
Hardware / Re:Výběr pracovního notebooku pro vývojáře
« kdy: 14. 08. 2018, 18:01:37 »
Jo takže by sis vzal Dell xps13, tedy kopii macbooku,(...)

Doporučuji nepoužívat slova, jejichž význam neznáš (kopie ;) ).

(...) akorát narozdíl od macu má horší touchpad, horší resale value, a co hlavně, není možnost na něm mít MAC OS (pro mnoho lidí je to ten důvod proč macbook kupují).

Zase na něm jede Linux (s nímž má i použitelnou klávesnici). XPSko má zase lepší klávesnici, což je trochu důležitější... aspoň pro mě jako programátora.

Na macbooku totiž můžete mít jak Linux, tak Windows tak MAC OS.

Ano, všechny systémy mají stejný layout klávesnice, takže to není ani trochu opruz (a navíc třikrát sláva modelům s Touchbarem).

Matný displej nezminuju, to je diagnoza, prakticky s tím není žádný problém.

Prakticky s tím nemá problém člověk, co je zalezlý někde v noře. Nepotřebuju sedět před zářivkou s lesklým povrchem, když se na sebe budu chtít koukat, použiju zdrcadlo. Štěstí, že ta lesklá mánie už přešla.

Stran: 1 ... 32 33 [34] 35 36 ... 54