Má Haskell budoucnost?

zboj

  • *****
  • 1 507
    • Zobrazit profil
    • E-mail
Re:Má Haskell budoucnost?
« Odpověď #375 kdy: 18. 05. 2016, 15:16:42 »
Bude k tomu nějaký materiál?
Myslíš třeba jako kilo koksu? :)

Je to první setkání, asi spíš jenom pokec.
To neberu/koksem netopím (neznám tě tak dobře, abych tvou otázku mohl úspěšně disambiguovat ;)).


Kit

Re:Má Haskell budoucnost?
« Odpověď #376 kdy: 18. 05. 2016, 15:30:14 »
Bude k tomu nějaký materiál?
Myslíš třeba jako kilo koksu? :)

Je to první setkání, asi spíš jenom pokec.
To neberu/koksem netopím (neznám tě tak dobře, abych tvou otázku mohl úspěšně disambiguovat ;)).

Kilem koksu by se ani nezahřál kotel, ale na tohle by to bylo asi akorát: https://www.youtube.com/watch?v=tUxOdFJEDdg

pr

Re:Má Haskell budoucnost?
« Odpověď #377 kdy: 20. 05. 2016, 08:55:51 »
Mimochode, jak se v Haskell řeší mutable stav? Je zde například key-value úložiště?

v

Re:Má Haskell budoucnost?
« Odpověď #378 kdy: 20. 05. 2016, 09:28:27 »
Mimochode, jak se v Haskell řeší mutable stav? Je zde například key-value úložiště?
mutable stave bez IO:
https://hackage.haskell.org/package/base-4.8.2.0/docs/Data-STRef.html
úložiště (jedno z mnoha):
https://hackage.haskell.org/package/acid-state

andy

Re:Má Haskell budoucnost?
« Odpověď #379 kdy: 20. 05. 2016, 10:35:31 »
Mimochode, jak se v Haskell řeší mutable stav? Je zde například key-value úložiště?
Mutable stav se typicky řeší přes nějaký State monad, abys nepotřeboval mutable stav. Takže pak máš třeba "HashTable" (spíš HashMap), která je sice immutable, ale když ji potřebuješ měnit, tak prostě poběžíš v state/stateT a pak můžeš psát třeba:
Kód: [Vybrat]
flip runStateT mempty $ do
   at "key" .= 10
   over (ix "key") (+ 1)
   over (ix "does-not-exist") (+ 20)
   newvalue <- use (at "key")
   whenJustM (use (at "key")) print
Ad key-value úložiště - jestli myslíš diskové, tak acid-state, ale moje osobní zkušenost je, že je lepší použít persistent nad PostgreSQL. Jinak pro haskell existují knihovny pro hodně věcí jako Redis apod.

Jinak docela hezký je třeba vault, který má jako klíč "typ".


zboj

  • *****
  • 1 507
    • Zobrazit profil
    • E-mail
Re:Má Haskell budoucnost?
« Odpověď #380 kdy: 20. 05. 2016, 13:25:28 »
Mimochode, jak se v Haskell řeší mutable stav? Je zde například key-value úložiště?
O tom je celé tohle vlákno: monády, monády, monády...

Kit

Re:Má Haskell budoucnost?
« Odpověď #381 kdy: 20. 05. 2016, 15:28:28 »
Mimochode, jak se v Haskell řeší mutable stav? Je zde například key-value úložiště?
O tom je celé tohle vlákno: monády, monády, monády...

Však jsem za tohle vlákno v této podobě docela vděčný. Bylo tady řečeno víc, než na co jsem se ptal a díky němu mám i s čím experimentovat.

Re:Má Haskell budoucnost?
« Odpověď #382 kdy: 20. 05. 2016, 15:34:18 »
Však jsem za tohle vlákno v této podobě docela vděčný. Bylo tady řečeno víc, než na co jsem se ptal a díky němu mám i s čím experimentovat.
Myslím, že bys klidně mohl výsledky experimentů i postovat. Je tady několik praktických haskellistů, kteří určitě rádi nasměují/poradí/prodiskutují - a my, nehaskellisti, si to se zájmem poslechneme, jak se praktické věci v haskellu řeší.

Kit

Re:Má Haskell budoucnost?
« Odpověď #383 kdy: 20. 05. 2016, 16:02:52 »
Však jsem za tohle vlákno v této podobě docela vděčný. Bylo tady řečeno víc, než na co jsem se ptal a díky němu mám i s čím experimentovat.
Myslím, že bys klidně mohl výsledky experimentů i postovat. Je tady několik praktických haskellistů, kteří určitě rádi nasměují/poradí/prodiskutují - a my, nehaskellisti, si to se zájmem poslechneme, jak se praktické věci v haskellu řeší.

Ono toho zatím moc není. Mám ještě stále problémy se čtením symbolů, které bývají v jiných jazycích slovní, ale v Haskellu jsou tvořeny posloupností nealfanumerických znaků. Časem si na to zvyknu a teprve pak to ocením.

BoneFlute

  • *****
  • 2 082
    • Zobrazit profil
Re:Má Haskell budoucnost?
« Odpověď #384 kdy: 20. 05. 2016, 16:06:42 »
Ono toho zatím moc není. Mám ještě stále problémy se čtením symbolů, které bývají v jiných jazycích slovní, ale v Haskellu jsou tvořeny posloupností nealfanumerických znaků. Časem si na to zvyknu a teprve pak to ocením.

Mě pomohlo, když jsem si uvědomil, že veškerý kód v Haskellu se skládá z pouhých dvou tokenů: mezery a názvu výrazu. A pak závorky.

Re:Má Haskell budoucnost?
« Odpověď #385 kdy: 20. 05. 2016, 16:16:20 »
Ono toho zatím moc není. Mám ještě stále problémy se čtením symbolů, které bývají v jiných jazycích slovní, ale v Haskellu jsou tvořeny posloupností nealfanumerických znaků. Časem si na to zvyknu a teprve pak to ocením.
Tohle mě třeba taky štve. Číst kód, který je směsicí >> >>= << <=< $ <$> kde některé z nich fungují "zprava doleva" a některé naopak, je peklo. Občas mám pocit, že to snad haskellisti dělají schválně, aby okolí ukázali "já na to mám" ;)

Kit

Re:Má Haskell budoucnost?
« Odpověď #386 kdy: 20. 05. 2016, 16:23:40 »
Ono toho zatím moc není. Mám ještě stále problémy se čtením symbolů, které bývají v jiných jazycích slovní, ale v Haskellu jsou tvořeny posloupností nealfanumerických znaků. Časem si na to zvyknu a teprve pak to ocením.

Mě pomohlo, když jsem si uvědomil, že veškerý kód v Haskellu se skládá z pouhých dvou tokenů: mezery a názvu výrazu. A pak závorky.

To platí pro Lisp, ale Haskell toho má podstatně víc. Symboly => -> :: apod. jsou pro mne stále stěží čitelné.

Kromě toho mezera přece není tokenem, ale pouze oddělovačem tokenů, ne? Jinak žádnou funkci nemá.

Re:Má Haskell budoucnost?
« Odpověď #387 kdy: 20. 05. 2016, 16:25:53 »
To platí pro Lisp, ale Haskell toho má podstatně víc. Symboly => -> :: apod. jsou pro mne stále stěží čitelné.
Myslím, že jste si teď s BoneFlute nerozuměli, každý mluvíte o něčem jiným.

Kromě toho mezera přece není tokenem, ale pouze oddělovačem tokenů, ne? Jinak žádnou funkci nemá.
Ještě jako indentation. Haskell má významný whitespace (narozdíl třeba od javy).

BoneFlute

  • *****
  • 2 082
    • Zobrazit profil
Re:Má Haskell budoucnost?
« Odpověď #388 kdy: 20. 05. 2016, 16:36:18 »
Ono toho zatím moc není. Mám ještě stále problémy se čtením symbolů, které bývají v jiných jazycích slovní, ale v Haskellu jsou tvořeny posloupností nealfanumerických znaků. Časem si na to zvyknu a teprve pak to ocením.

Mě pomohlo, když jsem si uvědomil, že veškerý kód v Haskellu se skládá z pouhých dvou tokenů: mezery a názvu výrazu. A pak závorky.

To platí pro Lisp, ale Haskell toho má podstatně víc. Symboly => -> :: apod. jsou pro mne stále stěží čitelné.
No, tak jsem si docela dost jistý, že třeba <- je funkce. A vůbec by měl nepřekvapilo, kdyby :: byla funkce pro definování typové anotace.

Re:Má Haskell budoucnost?
« Odpověď #389 kdy: 20. 05. 2016, 16:39:53 »
No, tak jsem si docela dost jistý, že třeba <- je funkce.
Standardni fce to neni. Je to syntakticky cukr pouzitelny jenom v do blocku. do taky fce neni.