166
Server / Re:>> : cannot create soubor: Directory nonexistent
« kdy: 03. 11. 2020, 00:57:23 »
Co máte na prvním řádku skriptu?
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.
. Někde v oblasti práce s velkými daty či AI(?) je to asi užitečný jazyk, ale pro mě je to spíše taková kuriozita.Kotlin ale nesúťaží priamo s jazykmi Scala, Clojure, Haskell či OCalm. Kotlin je pragmatický jazyk ...
Právě na Kotlinu se mi líbí ten pragmatismus. Také mám rád FP (zkušenosti z Rustu), ale na Haskell (alespoň zatím) nemám a dále mi vyhovuje OOP, takže se Scala ukazovala za dobrou volbu, ale Kotlin a jeho pragmatismus (HTML dsl například) je také velice pěkná volba. A to mě dostalo sem. Kotlin má také funkcionální prvky.
No tak pak se nabizi Clojure. Z toho pragmatismus strika do vsech smeru.
Kotlin ale nesúťaží priamo s jazykmi Scala, Clojure, Haskell či OCalm. Kotlin je pragmatický jazyk ...
S prominutím, ale jazyk bez pattern matchingu, bez algebraickych datovych typu, a optimalizovany na to aby se operace provadely skrz efekty neni funkcionalni jazyk. Kotlin ma o nekolik radu slabsi typovy system a vpodstate nepouzitelnou generiku. Zkratka je to funkcionalne **vypadajici** hromadka syntaktickeho cukru nad javou.V dnešní době bych ani nemluvil o tom jestli je jazyk funkcionální či imperativní, pokud to není čistě to a to (C je čistě procedurální, SmallTalk objektový, Haskell funkcionální, ...) ale co si z každého paradigmatu "vyzobal". Spousta jazyků si bere co chce (například z funkcionálních mapy, filtry což mi šetří cykly).
Zajem o scalu by byl, bohuzel s nabidkou pozic je to bida :-(.
Jen jsem nepřišel jak je to s breakpointy (nebo to dělat postaru s println(...))A jakou zkušenost jsi měl s rychlostí kompilace a ekosystémem/toolingem? Když jsem se o Scalu zajímal já, přišlo mi, že to jsou hlavní potenciálně problematické věci. Samozřejmě, ta vysoká heterogenita může být nepříjemná, ale to je designové rozhodnutí a podle mě se tam dá zvolit nějaká podmnožina idiomů, které člověk používá, ale když to celé funguje divně nebo pomalu, je to zásadní problém.
Rychlost překladu ujde, řekl bych že o něco rychlejší než Rust v debug režimu - desítky tisíc řádků trvají vteřiny až desítky vteřin studené kompilace, ale docela funguje inkrementální, která to v praxi hodně zrychluje.
Jako IDE používám Intellij community version, a Scala plugin je na dost vysoké úrovni.
Dokumentace ke standardní knihovně ujde, ale teď jsem rozmazlený Rust-em, tam je to přeci jen vyšší úroveň.
Chybí mi nějaký centrální repozitář scala knihoven ala crates.io pro Rust, ale je to asi trochu dané tím, že Scala má dobrou interop s Javou (hlavně ve směru Scala používá Javu, opačně už se vývojář musí trochu snažit), takže Scala vývojář má vlastně k dispozici taky všechny Javovské balíky z Mavenu atp.
Hodně jsem nadával, a nejen já, na build/package manager sbt - https://www.scala-sbt.org/ . Na jednoduché věci je to jednoduché, ale když si člověk chce něco customizovat, napsat vlastní plugin, nebo prostě jen dobře porozumnět tomu, jak to funguje, je to naprosté šílenství. Kdybych začínal nový větší projekt, dost bych uvažoval o tom vyzkoušet https://github.com/lihaoyi/mill , ale osobní zkušenost nemám.
Učil jsem se z "Programming in Scala" od Oderskyho a spol, to je super knížka, prostě jsem to projel od začátku do konce a zkoušel si kód, zábavný měsíc. Dneska bych asi začal s https://www.handsonscala.com/ . Celkově se mi líbí Scala věci od Li Haoyie (autora té knížky i Millu), jsou na používání jednoduché, ale promyšlené - a to znamená, že vymyslet je asi vůbec jednoduché nebylo. Ale je to jen moje osobní preference, někdo jiný bude mít rád shapeless.
Nevím jak hodně se ví, že Scala má nový překladač s novými featurami - https://dotty.epfl.ch/ . U nového projektu bych do toho asi klidně šel.
Abych to nějak shrnul, považuju Scalu a ekosystém za vyzrálý a naprosto production-ready, v tom jazyce se pracuje příjemně, i když nějaké nedostatky má, a nějaké nadávání určitě taky přijde (hlavně asi sbt). Určitě bych ve Scale dělal 100x radši než v Javě.
WSL2 nevím co je. Singleboot leda že bych přešel na windows, v linuxu spoustu věcí nespustím, a s některými bych se nechtěl mořit, třeba s home office, kde ten soft bylo skrz kybernetickou bezpečnost a kdejaké certifikáty obtížné zprovoznit i pod windows. Potřebuju aby věci fungovaly jednoduše a spolehlivě.Linuxový podsystém (Windows Subsystem for Linux) spustí lehkou linuxovou virtuálku jen s příkazovým prostředím ale když dáte Xorg Server na Windows (a dělají i na tom aby to šlo samo od sebe myslím, možná už to tam jde) tak tam máte i GUI.