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 - Idris

Stran: 1 ... 32 33 [34] 35 36 ... 153
496
Vývoj / Re:Jak validovat DTO v dynamicky typovaném jazyce?
« kdy: 27. 01. 2022, 13:43:15 »
Moc rád bych pochopil co si mám představit pod pojmem “kombinovat dynamické se statickým”.
Ada:
Kód: [Vybrat]
subtype Even is Integer with Dynamic_Predicate => Even mod 2 = 0;
Staticky se kontroluje přiřazení celého čísla, ale predikát je dynamický. To je rozdíl oproti jazykům jako Agda, kde můžu mít typ EvenNat, který je kompletně kontrolovaný v době překladu.

Staticky typované jazyky se dělí na dva základní typy: s běhovými chybami a bez (taky se říká bez výjimek, prostě nedojde k přerušení bloku kódu kvůli chybě). Ty druhé (Agda, SPARK…) vyžadují aspoň GADT nebo nějaký podobný mechanismus a predikáty jako sudost nebo nenulovost se vyjadřují staticky.

A to dynamické znamená, že mi:
Kód: [Vybrat]
function test (x: Even) return Even
begin
   return x + x;
end

test(13)
sice přeloží, ale při běhu to vyhodí výjimku při pokusu zavolat test(13), tak?
Jo. Aby se to nepřeložilo, chce to mocnější typový systém.

497
Sítě / Re:Kde je ajťákův ráj na venkově?
« kdy: 27. 01. 2022, 10:53:51 »
Citace
Mám kamaráda v Ulánbátaru, ten to taky splňuje :)
<joke on>
Ulanbátár je veľkomesto, nie vidiek ;-), takze to spĺňa iba z geografckého hľadiska. A mimo mesta samotného predpokladám dosť problém s wi-fi (osobnú skúsenosť ale nemám) ...
</joke off>

Ešte som ku kladom zabudol pridať: najbližšia pálenica (oficiálna!) 4km, zdroj kvalitnej horskej vody na riedenie destilátu 1km ... ;-)
Tak on není přímo ve městě pod pokličkou smogu, ale někde za městem. Internet má rychlejší než já v “civilizaci”.

Palírna? Jiný kamarád už pár let bydlí v Íránu a má jednu (taky oficiální) za rohem. Než někdo začne držkovat, tak křesťanské menšiny v Íránu můžou legálně vyrábět alkoholické nápoje. A Isfahán je z velké části arménský :)

498
Studium a uplatnění / Re:Naštvaný tým - oprávněně?
« kdy: 27. 01. 2022, 10:46:10 »
nevím jak tyhle věci narovnat
To nejde, pryč odtamtud. U nás to je naopak, někdo má hotovo, hybaj domů, do posilovny, na pivo… Klidně ve dvě odpoledne. I když teď v pandemii stejně všichni dělají doma, to už nejde regulovat vůbec.

499
Vývoj / Re:Jak validovat DTO v dynamicky typovaném jazyce?
« kdy: 27. 01. 2022, 09:16:38 »
Dynamic_Predicate prisne vzato neresi typ v tom smyslu, jak ho zname v beznych jazycich, ale pouze constraints (neco jako kontrakt?)
Přesně, kontrakt. Ale v podstatě to je jen implementační detail, protože to staticky (přes typy) udělat jde a zápis typu je v podstatě stejný. Klidně by někdo mohl transpilovat takovéto predikáty z Ady do řekneme Agdy, kde už bude příslušná kontrola v době překladu.

Ostatně i SPARK má staticky ověřované kontrakty, a to je “skoro Ada”.

500
Vývoj / Re:Jak validovat DTO v dynamicky typovaném jazyce?
« kdy: 27. 01. 2022, 09:11:24 »
Moc rád bych pochopil co si mám představit pod pojmem “kombinovat dynamické se statickým”.
Ada:
Kód: [Vybrat]
subtype Even is Integer with Dynamic_Predicate => Even mod 2 = 0;
Staticky se kontroluje přiřazení celého čísla, ale predikát je dynamický. To je rozdíl oproti jazykům jako Agda, kde můžu mít typ EvenNat, který je kompletně kontrolovaný v době překladu.

Staticky typované jazyky se dělí na dva základní typy: s běhovými chybami a bez (taky se říká bez výjimek, prostě nedojde k přerušení bloku kódu kvůli chybě). Ty druhé (Agda, SPARK…) vyžadují aspoň GADT nebo nějaký podobný mechanismus a predikáty jako sudost nebo nenulovost se vyjadřují staticky.

501
Vývoj / Re:Jak validovat DTO v dynamicky typovaném jazyce?
« kdy: 26. 01. 2022, 23:33:42 »
Nejsem tedy znalec typových systémů, ale Ada jsem drtil 10let zpátky tzn. že 2012 jsem ještě chytil. Co jsem tenkrát pochopil, tak velká energie se dávala do té podmnožiny která se jmenuje SPARK.
SPARK znám ještě méně, ale vypadá rozhodně sympaticky, má formální verifikaci a od verze 2014 kontrakty. Musím se na něj podívat podrobněji, zatím mě míjel.

502
Vývoj / Re:Jak validovat DTO v dynamicky typovaném jazyce?
« kdy: 26. 01. 2022, 23:07:17 »
před rokem jsem téměř neznal ... (moderní) Adu (ta zajímavě kombinuje statické a dynamické typování), kde jsou taky lahůdky.
Chceš to rozvést?
Ani ne, furt ji moc neznám (tu nejnovější verzi), takže bych nerad psal blbosti. Nicméně jde o to, že Ada je poměrně přísně staticky typovaná, ale má (verze 2012, podle definice) závislostní typy, které jsou ale implementované pomocí tzv. predikátů, z nichž některé můžou být dynamické. Takže jestli jsem to dobře pochopil, částečně se chová jako třeba Julia s jejím existenciálním typovým kvantifikátorem. Právě čtu Ada 2012 rationale, ale je to bichle a mám i jiné věci, takže mi to jde jak psovi pastva.

503
Vývoj / Re:Jak validovat DTO v dynamicky typovaném jazyce?
« kdy: 26. 01. 2022, 22:02:48 »
@BoneFlute
Tak většinou s čím přicházíš, s tím také odcházíš.
Je to tak. Je to škoda, ale co nadělám. Někdy má člověk smůlu.
Ta diskuse o záv. typech zhruba před rokem byla náhodou celkem dobrá, a teď by byla ještě lepší, když mají účastníci o rok více zkušeností se sofistikovanými typovými systémy. Za sebe můžu říct, že před rokem jsem téměř neznal OCaml nebo (moderní) Adu (ta zajímavě kombinuje statické a dynamické typování), kde jsou taky lahůdky.

504
Sítě / Re:Kde je ajťákův ráj na venkově?
« kdy: 26. 01. 2022, 15:59:05 »
Síce spĺňam podmienku "na východ od Prahy, smerom na Brno", ale až za rieku Moravu to asi myslené nebolo ;-)
Mám kamaráda v Ulánbátaru, ten to taky splňuje :)

Nicméně na Slovensku mám příbuzné na Šíravě, tam je taky krásně, blízko do Tater, fajn lidi. Jen na to jejich nářečí je třeba si zvyknout, ale to musí “imigranti” z Bratislavy také :)

505
Vývoj / Re:Jak validovat DTO v dynamicky typovaném jazyce?
« kdy: 26. 01. 2022, 08:52:42 »
Teď to pár let bude holt Rust. […] Ale zdá se mi, že kolem něj roste skupina lidí, co budou zase slepě tlačit Rust všude, jeho typový systém je to nejlepší na světě... ehhh to už tu bylo s C++ , Java a atd.
Tady na fóru možná, jinak je rustí komunita celkem přátelská, když člověk nezmiňuje některé červené hadry :)

506
Vývoj / Re:Jak validovat DTO v dynamicky typovaném jazyce?
« kdy: 26. 01. 2022, 00:53:25 »
Někde se ta čára udělat musí. Já jí mám nad C++.
Nikdo nechce, abys C++ používal, ale uznat jeho existenci a rozšíření musíš ;)
Ano uznávám jeho existenci.
To už je posun správným směrem :D

Teď Ti ještě zbývá prozřít v případě dynamických jazyků, tedy že statické typování není zas taková spása :P

507
Vývoj / Re:Jak validovat DTO v dynamicky typovaném jazyce?
« kdy: 26. 01. 2022, 00:39:57 »
Někde se ta čára udělat musí. Já jí mám nad C++. Přijmi to. Bavit se se mnou nemusíš.
Nikdo nechce, abys C++ používal, ale uznat jeho existenci a rozšíření musíš ;)

508
Vývoj / Re:Jak validovat DTO v dynamicky typovaném jazyce?
« kdy: 26. 01. 2022, 00:39:09 »
Hele, dokavad nepřišel Rust, tak bych možná váhal. Ale nyní jsem přesvědčen, že se úspěšně vyhnu práci dělat v C++. Zrovna třeba ten projekt, který jsem zmiňoval, tak jsem původně zkoušel psát v C++. Chvilku jsem se s tím pral a strašně fňukal. Pak jsem se na to vykašlal.
To chápu, tady není moc do řešit.

509
Vývoj / Re:Jak validovat DTO v dynamicky typovaném jazyce?
« kdy: 26. 01. 2022, 00:16:52 »
Když mi spadne aplikace na nějaké výjimce,  za běhu, u klienta, tak je mi to k prdu
Jenže o to vůbec nejde, důležité je, že to vůbec jde nějak ošetřit. U toho druhého typu jazyků to prostě nejde z principu, protože ta typová informace chybí a runtime nemá jak tu chybu vůbec rozpoznat. To je snad jasné jak facka, ne?
Tou druhou skupinou myslíš ty slabě typované? Ty, o nichž se celou dobu bavím a tvrdím, že defakto neexistují? Takže ta argumentace je taková, že silně/slabě typované je důležitější než staticky/dynamicky, protože když by nějaký slabě typovaný jazyk existoval, tak by to bylo špatně? To si ze mě děláš legraci, že jo.
C++
Hele, můj dědeček, budiž mu země lehká, programoval ve Zlíně pro velkou modrou, ještě před děrnými štítky.
Hezký. Ale C++ se ještě používá a tudíž evidentně existuje. Možná se ti víc pozdává Pascal jako alternativní příklad.

510
Vývoj / Re:Jak validovat DTO v dynamicky typovaném jazyce?
« kdy: 25. 01. 2022, 23:55:23 »
Když mi spadne aplikace na nějaké výjimce,  za běhu, u klienta, tak je mi to k prdu
Jenže o to vůbec nejde, důležité je, že to vůbec jde nějak ošetřit. U toho druhého typu jazyků to prostě nejde z principu, protože ta typová informace chybí a runtime nemá jak tu chybu vůbec rozpoznat. To je snad jasné jak facka, ne?
Tou druhou skupinou myslíš ty slabě typované? Ty, o nichž se celou dobu bavím a tvrdím, že defakto neexistují? Takže ta argumentace je taková, že silně/slabě typované je důležitější než staticky/dynamicky, protože když by nějaký slabě typovaný jazyk existoval, tak by to bylo špatně? To si ze mě děláš legraci, že jo.
C++

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