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

Stran: 1 ... 30 31 [32] 33 34 ... 43
466
Vývoj / Re:Doporučte programovací jazyk pro Windows
« kdy: 03. 04. 2020, 17:22:58 »
On tam zmínil ještě jednu takovou věc. Že se prostě vývoj dost usadil. Máme tady pár jazyků (Java, C) a technologií (XML), které jsou usazené, a mají ohromný záběr. Mají své neduhy, ale jak to chceš vylepšit, když je to tak velký.

Tady to vidím ještě v pohodě - C je assembler vyšší úrovně a dá se dopňovat a potenciálně nahradit čímkoli - těch podobných jazyků se v poslední dobou vyrojilo dost. Java v podstatě taky - prostě ji lze pomaloučku doplňovat/nahrazovat třeba Kotlinem. C i Java se ale vyvíjejí, což je IMO dobře pro všechny.

Třeba XML je značkovací jazyk fakt hloupě ukecanej. Mnoho věcí (třeba atributy) jsou tam navíc a zbytečně to všechno komplikujou. Jenže i když bych vytvořil lepší variantu, tak budu muset dodělat i všechny ty související technologie (namespace, validace, dotazování, transformace). A přesně na tomhle dojel JSON plus to, že to není oproti XML zase taková výhra (komentáře, escapování, čísla).

Zrova namespacy bych asi klidně oželel a myslím si, že velká část mašinérie, která se kolem XML udělala, je ve stylu "když máš po ruce kladivo, všechno vypadá jako hřebík". Prostě máme to magické XML a co bychom s ním tak ještě mohli dělat?

A když si dá někdo tu práci, a začne vytvářet jazyk, který je opravdu promyšlený a silný (Rust), tak se stejně nezavděčí.

Rust má našlápnuto - Microsoft, Google, Dropbox, Apple, Facebook - tam všude se pomalu prosazuje. A pro zajímavost autor shellu Fish (psaného v C++) teď pracuje na novém shellu zvaném Crush v Rustu. Těch věcí, co se dají v Rustu dělat a dělá se na nich, jsou mraky. Holt to ale nikdy nebude Go (s filosofií, kterou zde trefně popsal Standa Blábol).

Třeba zmiňovaný Python - jeho historická role byla, že ukázal jak vypadá čitelnost. To "starejm" jazykům opravdu scházelo. A za sebe musím říct, že jsem rád, že se z toho poučili a vznikají věci jako Scala, Kotlin, Rust, TypeScript, Elm, Idris, Agda, ...

Nevím, jestli Python všechny tyhle jazyky inspiroval, ale ta vzájemná inspirace na poli programovacích jazyků je široká a je to super.

467
Vývoj / Re:Doporučte programovací jazyk pro Windows
« kdy: 03. 04. 2020, 14:08:50 »
XML je blbe citelne, fajn, JSON jde cist lip, oki.
Vylepsili jsme jeden aspekt ze sta.
Kde mame XSD validaci?
Kde je XSLT?
Kde je XPATH? Jo vim, uz existuje zprasek JSONPath se smesne malou podmnozinou funkce XPATH2. A vzhledem k tomu, za mapa v JSON nema zarucene poradi, neni mi uplne jasne, jak to muze fungovat, asi na pevne vire.

JSON Schema treba existuje, kdyz jsme u toho. Ale ja jsem netvrdil, ze JSON je ve vsem vhodnejsi, ale ze se XML pouzivalo (i) tam, kde bylo kanonem na vrabce.

Klasika, vylepsil jsem jeden aspekt z mnoha, na zbytek jsem se vysral, a duha se rozklene nad krajinou, je zde dalsi "krasna nova  mlada" zalezitost, a kdo potrebuje XSLT, nebo nevericne kouka na neexistenci exceptions a generik v GO, je zapskly duchodec.

Co se tyce Go, take se mi nelibi jeho pristup, presto uz dnes pouzivam nekolik ruznych toolu, ktere v nem nekdo napsal. Tak mu asi holt v necem prijde vhodne. Mne osobne je v IT uplne jedno, co je mlade a krasne, natoz nove. V tom mladem a novem je casto hodne energie a dokaze se poucit z problematickych aspektu tech starsich reseni. A casto dokaze v novem kontextu oprasit stare myslenky - viz Rust a jeho spojeni konceptu z C++, ML atd.

A mimochodem, tvrdil jsem uz pred casem, ze Go vymysleli stari paprdove z casu Unixu a C a i proto je ten navrh jazyka takovy prapodivny.

468
Vývoj / Re:Doporučte programovací jazyk pro Windows
« kdy: 03. 04. 2020, 13:22:15 »

V branzi se pohybuju dlouha leta.
..............
A tak je to se vsim. Pojdme znovu vynalezat kolo, bude "krásné nové mladé".

Tolik keců o ničem. Stačilo napsat "jsem starý a zapšklý".

Ale kus pravdy ma. Tahle branze namisto standardizace straslive diverguje a spousta veci se lepi na kolene.

Je ovsem take pravda, ze k zavrzeni "stare" technologie mohou byt casto dobre duvody. Napr. XML je v mnoha ohledech odporny jazyk, ktery se na spoustu veci naprosto nehodi, presto byl pouzivan tam, kde napr. JSON vyhovi lepe. JSON navrhnul nekdo v tezke kocovine, jelikoz nema ani podporu komentaru atd. atp. Takze pojdme tedy pouzit neco jineho. reStructuredText - jako obecne dobry, hosi, ale kdo prisel s tim genialnim napadem, ze podtrhavat musim minimalne stejne dlouhou lajnou, jako je nadpis nad ni? To by nestacilo rict, ze ==== je proste uz dost?

Kdyby Google stacila Java, C++ a Python, nikdy by neprisel s Go. Kdyby Google stacily Java, C++, Python a Go, nezacal by experimentovat s Rustem. Kdyby Java nebyla v necem spatna, nepodporoval by Google Kotlin.

469
Naprosto nic nemam proti vystiznym identifikatorum, naopak! Ale identifikator ma popisovat obsah a ne datovy typ. Ten by mel jazyk nebo tooling resit extra. Jestli si pises el namisto element, nemam s tim problem, ale jakmile si nekdo pise predponu i jako integer nebo s jako string, je za tim zrejme neco podivneho.

470
Také záleží na dalších okolnostech. Ve funkci, která má pár řádků a krátkou životnost je to jiné, než u proměnných, které mají dlouhou životnost a objevují se na různých místech programu. Rozlišování datových typů se hodí hlavně tam, kde pracuji se stejným obsahem, ale s různými datovými typy. Jr to potřeba brát s rozumem, používat to tam, kde to má přínos. Ale chápu potřebu molocha, jako je microsoft, že se snaží mít jednotné api napříč projektem, na kterém pracují stovky lidí. Tam je třeba disciplinovanost, byť je občas ne zcela smyslná. Kdo si vzpomíná na rané verze php, ten ví, tam to byl pěkný kočkopes, jak v názvech, tak třeba v pořadí parametrů. A výsledkem byla zbytečně vyšší chybovost.

Ano, jelikož, jak jsi sám přiznal, všechno prasíš do jednoho dlouhého souboru, proměnné mají dlouhou životnost a (objevují se?) na různých místech programu, potřebuješ tyhle obezličky. Asi by stálo za to se zamyslet a namísto maďarské notace přestat prasit. Kromě jiného by mohlo pomoci i v tom Vimu používat pluginy, které drží kontext - co třeba na Rootu nedávno recenzované Kite, Kite?

471
Vývoj / Re:Doporučte programovací jazyk pro Windows
« kdy: 02. 04. 2020, 15:27:18 »
Možná, ale ego v kombinaci s Dunning-Krugerovým efektem vede k tomu, co je tady na fóru. Kdyby bylo fórum jen pro absolventy VŠ, tak to k blití nebude a diskuse by byla přínosná, nebo aspoň slušná.

No, Idrisi, vzhledem k tomu, že jsem absolvoval VŠ s titulem Ing., si snad mohu dovolit říct, že si s tím svým vzděláním (či papírem) docela fandíš a děláš z něj zbytečný fetiš. Nejagresivnější a nejtrapnější účastník tohoto vlákna o sobě tvrdí, že VŠ vzdělání má a víš co? Já mu to klidně i věřím! Zamindrákovaných asociálů s červeným diplomem by se našlo také asi víc než dost.

472
Vývoj / Re:Doporučte programovací jazyk pro Windows
« kdy: 02. 04. 2020, 15:17:42 »
No a už jste teda nějak rozsekli ? Jestli Python nebo Java, dynamické nebo statické typování a ty mapy, nebo o čem je tu teď řeč ?

Tady bylo nějaké konkrétní zadání, tzn. jednou provždy zavrhnout Javu nebo ji nechat žít? Flame war je flame war, tam k žádnému rozseknutí ani dojít nemůže.

473
Vývoj / Re:Doporučte programovací jazyk pro Windows
« kdy: 02. 04. 2020, 15:05:30 »
:D ;D :o ::)

tohle vlakno je brutalni poctenicko.

 :-\ :'( ::)
Tohle vlákno se brzo propadne do pekla, protože něco tak hloupého zemský povrch neunese :)
Zajímalo by mne, jestli třeba zubaři mají někde diskusi o špachtli do pusy. Dřevěná nebo plastová ? Toť kardinální otázka.
Zubaři mají všichni kvalitní vzdělání, mezi nimi se odpad, co s bídou dodělal ZŠ, nenajde ;)

Ano, vzdělání mají kvalitní, ale výsledky mnohdy mizerné.

474
Vývoj / Re:Doporučte programovací jazyk pro Windows
« kdy: 02. 04. 2020, 11:17:06 »
Akorát že tohle jsou úplně jiné ordered mapy.

Ta c++ ordered mapa řadí prvky podle operátoru porovnání. Ve chvíli, kdy máme unordered mapu, tak už má ta ordered jen minimální využití. Vůbec bych se nedivil, pokud Pythonistům nijak zvlášť nechyběla.

Ta mapa, která PetroviK tak moc chyběla, prvky neřadí. Akorát drží pořadí, v jakém se do ní prvky vkládaly. V c++ nic takového nemáme (šlo by samozřejmě udělat) a zatím mi to nikdy nechybělo. Opět se vůbec nedivím, že se bez ní Pythonisti bez problémů obejdou.

Přesně! Nechybí a obejdou. Pod to se můžu podepsat.

Mne prijde dost nestastne to, ze to poradi kllcu v novejsich verzich Pythonu vubec vyhlasili za garantovane - to znamena, ze kazda alternativni implementace bude muset poradi drzet nebo to nejaky nestastnik vyuzije a po pripadnem prechodu na jinou implementaci poradi klicu prestane fungovat a program bude mit tezko vysvetlitelne problemy. Ale diskusi k tomu jsem nesledoval, tak netusim, koho a proc tahle vec vubec napadla.

475
Vývoj / Re:Doporučte programovací jazyk pro Windows
« kdy: 02. 04. 2020, 10:30:13 »
Takže z toho hrubého nadávání na Python, že nemá ordered dictionary nakonec vzešlo, že je vlastně nemá vůbec nic, krom toho Pythonu 3.7+. Tak teď by měl přijít naopak vychvalování Pythonu do nebes. :-)

Ehm, pan bude znalec.
Ordered map ma C++ s STL (Standard Templte Library) nekdy od sereho davnoveku 90tych let, Java dtto, akorat do verze 1.5 bez podpory generik.

Takze Python se v teto oblasti dotahl cca na uroven Javy 1.2 z roku 1998.

Mozna uz brzy uvitame python v tomto tisicileti.

To je asi stejne inteligentni prohlaseni, jako ze Python ma multiple inheritance od sameho zacatku a Java porad nic.

Krome toho, ze tuhle zridka uzitecnou vec si v Pythonu snadno naimplementujes, existuji dost dlouho implementace tretich stran, napr. tahle z roku 2010: https://pypi.org/project/blist/1.2.0/

476
Vývoj / Re:Rust - pár dotazů
« kdy: 01. 04. 2020, 07:38:25 »
1. Urcite bych pouzil &'static str - v tomhle pripade jde o ergonomii a stejne s tim nic extra nedelas.
2. print_data() je pomerne neobvykly zpusob vypsani obsahu, tady je to rozhodne vhodnejsi resit nejakym traitem (formatovani je otazka), treba:

Kód: [Vybrat]
use std::fmt;

struct Animal {
    name: &'static str,
    sound: &'static str,
}

impl fmt::Display for Animal {
    fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
        write!(f, "Name: {}, Sound: {}", self.name, self.sound)
    }
}

fn main() {
    let cat = Animal {
        name: "Cat",
        sound: "Mňau!",
    };
    println!("{}", cat);
}

477
Vývoj / Re:Zkušenosti s TypeScriptem
« kdy: 30. 03. 2020, 08:14:21 »
Mne to skôr príde, že tieto debaty slúžia len ako zámienka pre vyplavenie negatívne energie a frustrácie. Racionálne argumenty by boli, že ako statické tak aj dynamické typovenie má svoje use casy a to sú tie a tie a tie. No namiesto toho celá diskusia sa nesie v znamení negatívnych emócii zastrených v rádoby technickom žargóne. Za normálnych okolností by som sa asi pridal, ale nechcete na chvíľu prestať? Nechcete sa na chvíľu vykašľať na všetky tie negatívne emócie, naučený "contrarianism" (ja fakt neviem ako to preložiť) ? Vždy som si myslel, že cieľom majú byť funkčné programy, ktoré robia to čo chceme nie orgastická masturbácia na super intelektuálnym a hyper obskúrnym spôsobom ako sme implementovali triviálnu funkcionalitu. Čo to s vami ľudia je?
Jsou to často výlevy nedouků bez VŠ, bez pořádné práce a bez perspektivy, kterým (aspoň některým) už došlo, že jejich omezený intelekt jim nikdy nedovolí dělat něco víc než patlat v JS skripty měnící barvičky na webu. Jak psal výše kolega, někteří píšou k věci a při čtení holt musí odfiltrovávat bláboly trotlů.
Jasně, patláním JS barviček to začlo a dnes jsou Larry Page nebo Mark Zuckerberk jedni z nejbohatších a nejvlivnějších lidí na světě. Holt nýmandi bez pořádné práce a perspektivy. Zatím co vzdělaní akademici perspektivně programují v Idrisu o kterém nikdy neslyšela ani většina lidí z oboru.

Tak je fajn, že ses v tom našel, Kite.

478
Vývoj / Re:Zkušenosti s TypeScriptem
« kdy: 29. 03. 2020, 14:44:47 »
V souvislosti s tím bych rád upozornil, že jazyk C je dle žebříčku TIOBE stalé druhý nejoblíbenější jazyk. Používá se hodně a používám ho i já. Můžeme se tu bavit i o akademických jazycích, ale mě víc zajímá praxe, jsem pragmatický. Ergo každé platné tvrzení o statických typech musí být v souladu i s druhým nejoblíbenějším jazykem se statickými typy.

Fakt Te nefackuje hanba za takoveto demagogicke kydy?

479
Vývoj / Re:Zkušenosti s TypeScriptem
« kdy: 29. 03. 2020, 08:34:08 »
Není, ukazatel v C je pojmenovaný ukazatel do paměti, který se nijak nestará o datový typ objektu, na který ukazuje. V principu je to stejné, jen je to více low level, programátor si to musí přetypovat explicitně a musí si sám pohlídat paměť.

Srovnáváš jazyk s vyspělým typovým systémem, který rozumí kontextu a vyšší assembler, který umožňuje dělat jenom low level věci, protože je jednoduchý a moc lepších možností nemá.


Dynamické jazyky na to nekašlou, dynamické jazyky mají jiný koncept. A ano, jsou díky tomu více flexibilní a jsou proto pohodlnější na používání, proto také čím dál tím více oblíbené s tím, jak roste výkon počítačů a to jejich plýtvání zdroji je čím dál tím více marginální.

Subjektivní hodnocení - nuda.

Ostatně, garbage kolektor je zrovna tak plýtvání zdroji za cenu pohodlí programátora, virtuální stroje také, ale to ti asi nevadí, že? Lidské zdroje jsou cennější než hardware, produktivita programátora je ve většině případů důležitější než efektivita programu.

To jsi četl kde, že mi to "nevadí"? Plýtvání je vždycky plýtvání, vždycky to je škoda, ale někdy je odůvodnitelné - něco za něco. To, že je produktivita programátora ve všech částech vývojového cyklu v dynamických jazycích v součtu vyšší, je Tvoje víra. Jinak doporučuju následující čtení - převod velkého systému z Pythonu do Rustu v Dropboxu - proč to dělali a co tím získali (nápověda: nešlo jenom o problém pomalosti některých dílčích operací v runtime dynamického jazyka, ale zejména o jeho relativní neflexibilitu, tedy naprostý opak toho, co tu celou dobu tvrdíš):

https://dropbox.tech/infrastructure/rewriting-the-heart-of-our-sync-engine

480
Vývoj / Re:Zkušenosti s TypeScriptem
« kdy: 29. 03. 2020, 00:33:34 »
To není žádná novinka, už v C máš ukazatele a můžeš přetypovávat proměnné. V dynamickém jazyku je to paradigma ale z podstaty jiné, datový typ není vlastností proměnné, ale samotných dat. Jinak samozřejmě statické jazyky se snaží a snaží se napodobovat dynamické jazyky a co nejvíc se jim přiblížit, byť to není dokonalé. Ale to jen potvrzuje sílu dynamických jazyků a toho, jakým způsobem mění pohled na programování. Dynamické jazyky jako Javascript a Python velmi rychle rostou, statickým nezbývá, než se přizpůsobit, pokud se nechtějí stát okrajovým jevem.

Co to, clovece, - s prominutim - meles? Ukazatel v C je diametralne jina zalezitost. V tom mem prikladu je videt, ze "promenna" ve statickych a dynamickych jazycich neni nutne zase tak odlisny koncept. V tech statickych kompilator samozrejme potrebuje vedet typ dat (ne "promenne") v dobe prekladu, aby mohl zkontrolovat, ze program je validni a hlavne mohl optimalne zpracovat alokaci pameti a dalsi operace. Dynamicke jazyky na to kaslou, plytvaji prostredky v dobe behu a ano, clovek v nich muze vice "prasit" a spousta veci tak nejak funguje, kdyz neprasis moc. To je casto pohodlne a umoznuje to veci resit "intuitivne", ale u vetsich projektu to je dost kontraproduktivni a neni nahodou, ze vznikl prave TypeScript nebo ze Python ma volitelne anotace typu.

Stran: 1 ... 30 31 [32] 33 34 ... 43