Tento web používá soubory cookie. Dalším používáním webu s tímto souhlasíte.
jméno
heslo
přihlásit
zaregistrujte se
zapomněli jste heslo?
Scala, Clojure, Groovy... Polyglot development with JVM
LITTLELI
Scala je jazyk pro JVM, který kombinuje OOP s funkcionálními prvky. Byl navrhnut s ohledem na typovou bezpečnost a škálovatelnost. Typový systém je podobný ML nebo Haskellu.

Stránka jazyka: http://www.scala-lang.org/
Velmi šikovná učebnice: http://www.artima.com/shop/programming_in_scala
Web framework: http://liftweb.net/
IRC komunita, server: irc.freenode.net #scala-cz
Máte k tomu co říct? Vložte se do diskuze.
REDGUY --- 14:11:04 18.1.2016
RUDOLF: Urcite bych se pouziti externich toolu snazil vyhnout pokud to jen trochu jde. Parsovani vystupu je oser, reseni chyb je oser... a celej find asi implementovat nemusis. A pokud se pri tom chces ucit clojure, tak cim vic clojure, tim vic uceni 8)
RUDOLF --- 10:39:42 18.1.2016
SATAI: jestli použitelná nevím: http://ecmendenhall.github.io/sicpclojure/ , pak je sicp destilled - každopádně myslím že Rickey to vystihl v úvodu dobře.. ale já poslouchám ty původní přednášky v lisp, mně jde spíš o tu teorii, jak rozumět programování jako činnosti. Příklady jsem ještě nezkoušel, od toho mám tu aplikaci do práce. Ale living clojure je sympatický úvod. Nikdy jsem se nezabýval vývojem, tak je to pro mně novej svět, ale funkcionální programování vypadá zábavně, tak se ho chci držet.
SATAI --- 10:28:23 18.1.2016
RUDOLF: Uz existuje pouzitelna SICP mutace pro Clojure nebo si to prekladas ze Scheme do Clojure?
RUDOLF --- 9:29:19 18.1.2016
REDGUY: sql je jasný.. šlo mi o výstupy z find apod.. tj. find mi vrátí data, clojure je zpracuje a narve do DBS, md5 mi vrátí data, clojure je zpracuje a narve do DBS. Clojure jen parsuje, pracuje s DBS, porovnává data s DBS a na požádání iniciuje nějaký skript, jehož vstup zpracuje. Vstupy lezou ze standardních linux nástrojů a clojure dělá všechno ostatní.

No asi se cítím nejistý, že zvládnu dobře implementovat find/md5 jiný gnu utility:-) Tj. pokud bych třeba řešil procházení adresářové struktury, použiji java.io/file, stejně tak to bude pro chmod operace - použiju PosixFilePermission.. takže myslíš že mám jít spíš touhle cestou, než zpracovávat jen vstupy z gnu nástrojů?
REDGUY --- 4:24:18 18.1.2016
RUDOLF: A proc to vsechno nenapises rovnou v clojure? Co ziskas tema skriptama? Na SQL mas hned nekolik prima knihoven, md5 pocitat neni problem... proc si pridelavat praci s komunikaci mezi clojure a shellem? Data, vyjimky, stav, to vsechno musis predavat tam a zpatky, coz mi prijde jako desnej oser...
RUDOLF --- 23:06:44 17.1.2016
Zdar, ve volným čas zkouším clojure. Poslouchám sicp, rozečtl jsem living clojure, nahodil ring+compojure+hiccup a zkusil na to narvat bootstrap. A cajk, na tom funkcionálního programování moc není, cítím se jak začínající phpkář:-)

Každopádně bude to appka s web UI do práce, takovej data management. DBS bude obsahovat soubory v úložišti, metadata jako md5, zda už byli ingestovaný do jinýho systému apod. Appka bude validovat jestli jsou správný soubory ve správný složce, jestli je tam správná struktura adresářů, jestli jména souborů odpovídají patternu, jestli souhlasej nově vygenerovaný md5 apod. Na výstupu člověk uvidí jestli sesložky zelenaj, nebo jestli oranžoví a něco tam nesedí, či vysloveně rudej průser. Ty data byli od r. 2001 manažovaný ručně, tak je třeba zjistit různé formální nekonzistence. Plus je třeba držet statistiku kolem těch souborů.

Teď mi připadá jako dobrý nápad, že ta moje appka bude jen managovat různý bash skripty. Tj. tlačítkem pustím tenhle skript, ať mi aktualizuje md5 a výstup v appce narvu do databáze, ať je tam timestamp kontroly s md5. Appka porovná záznamy, všechno cajk a ukáže se datum poslední kontroly + půjde rozkliknout historii přechozích kontrol.

No a potřeboval bych poradit, jak nejlépe komunikovat mezi mojí aplikací a bashovýma skriptama. Případně mi říct, že na to jdu špatně a měl bych to řešit jinak:-)
MARASAN --- 16:06:25 16.3.2015
pisete nekdo Clojure ve VIMu?
Pripojim-li se na REPL a v nem se objevi vyjimka - v mem pripade "java.io.IOException: Broken pipe" na TCP - tak mi vim zmrzne a nevim, co dal, co muzu delat. Da se to njak resit?
LUDWIG_ --- 16:07:12 10.2.2014
neco jako node.js pro JVM:

http://vertx.io
REDGUY --- 20:35:55 6.1.2014
A at sem napisu taky neco uzitecnyho: pokud to jeste nahodou nevite, tak Light Table = rozkos.
Light Table
http://www.lighttable.com/
REDGUY --- 20:34:36 6.1.2014
LITTLELI: Nehledam, tomu se nedavaji (explicitni) dvojice.

Co me (iracionalne) irituje je, ze ty funkce rikaji "Do tyhle, v mym pripade prazdny mapy nastrkej tyhle (ruznym zpusobem specifikovany) hodnoty a vrat mi vysledek". Co my chybi je funkce, ktera rika "Z tehle hodnot udelej novou mapu". A to navic tak, aby ty hodnoty byly zadany jako vektor dvouprvkovejch (k/v) vektoru.

Ale jak rikam, to je jen moje OCD 8)