Před C# začít s C ?

perceptron

Re:Před C# začít s C ?
« Odpověď #45 kdy: 24. 10. 2015, 16:48:36 »
Citace
Jednemu eklips neustale pada zere prostriedky spomaluje pocitac, druhemu Android Studio "blbne" SVNka a ma tam furt konflikty atd atd.
"java je mrtva lebo kolegovi pada eclipse". dafuq?

 
Citace
riesi nejake low level zalezitosti.
vojine kefaline co je pre vas taka ta low level zalezitost v jave?
-----
@radek micek:

reifikovane generika nemozu byt lebo backward compatibility
value types su planovane do java 9
tail calls su problem, jedine naozaj je nejaky monkey patch ala scala @tailrec

Citace
Je zajímavé, proč má tak jednoduchý jazyk tak dlouhou specifikaci.
did you say intercal?


balki

Re:Před C# začít s C ?
« Odpověď #46 kdy: 24. 10. 2015, 16:49:11 »
ked chcete inu syntax pre jvm, zoberte scalu / groovy / whatever

IMO hlavní problém je v JVM a tam další jazyky nepomohou. Například reifikovaná generika a hodnotové typy nebo optimalizace tail callů.

V clojure sa na tail-cally pouziva vyhradene slovo "recur".  Nie je to az take elegantne, ale umoznuje to setrit stackom aj na jvm. (priznam sa, ze neviem, co su reifikovana generika a honotove typy)

Re:Java
« Odpověď #47 kdy: 24. 10. 2015, 16:50:07 »
Java je jednoduchý jazyk

Je zajímavé, proč má tak jednoduchý jazyk tak dlouhou specifikaci. Osobně mám za to, že jednoduchý jazyk jde popsat na pár stránek, ale specifikace Javy má více než 700 stran.

Nutno dodat, ze je to docela upovidana specka a je dost zamerena na citelnost.

huehue

Re:Před C# začít s C ?
« Odpověď #48 kdy: 24. 10. 2015, 17:00:18 »
Tak pomalý vývoj ještě nutně nemusí být špatně. Takové C se za posledních 15 let téměř nezměnilo, ale kdybych si měl tipovat jaký jazyk se bude za 50 let pořád aktivně používat, bylo by to asi právě C.... ne že by pomalý vývoj zaručoval kvalitu, Javě se hodlám vyhýbat jak to jen půjde.

To je  smutne, nechciet sa nieco naucit a vyhybat sa. Zrovna koderina je oblast, kde sa treba ucit stale. Prave sa ucim funkcionalne programovanie, lebo dost strasia, ze sa to bude pouzivat. (vid haskell) Ista miera pragmatizmu nie je na skodu.
Tak ona Java není v principu špatná a má i nějaké podstatné výhody (no, spíš výhodu), ale když člověk zná C# a C++, tak není moc nového co by mu Java jakožto jazyk mohla dát. Pokud to zrovna nepotřebuji kvůli platformě, nemám důvod se jí učit. Tím spíš když člověk vidí všechny ty javisty co si na javu stěžují.

Je zajímavé, proč má tak jednoduchý jazyk tak dlouhou specifikaci. Osobně mám za to, že jednoduchý jazyk jde popsat na pár stránek, ale specifikace Javy má více než 700 stran.
Tak když člověk chce aby to bylo přenositelné, tak se to na velikostí standardní knihovny projeví...

perceptron

Re:Před C# začít s C ?
« Odpověď #49 kdy: 24. 10. 2015, 17:00:41 »
reifikovane generika znamenaju ze ArrayList<KitovMutableString> za behu umozni zistovat informaciu nielen o tom ze to je arraylist, ale aj o tom ze prvky su typu KitovMutableString

v jave vdaka type erasure sa na genericky typ v case behu zabudne.

.net to zaviedol myslim v c# 2.0 kde to hodili do virtualmasiny. v jave to nemohli kvoli spatnej kompatibilite spravit

value types umoznuju zlepsit performance a finty pre vecicky ako komplexne cisla. definujete si value typ KomplexneCislo, ten bude v pamati ulozeny bez class overheadu (menej narocne na ram), dve komplexne cisla mozete porovnat cez ==, a dalsie vecicky. viac o tom http://cr.openjdk.java.net/~jrose/values/values-0.html


balki

Re:Před C# začít s C ?
« Odpověď #50 kdy: 24. 10. 2015, 17:14:47 »
reifikovane generika znamenaju ze ArrayList<KitovMutableString> za behu umozni zistovat informaciu nielen o tom ze to je arraylist, ale aj o tom ze prvky su typu KitovMutableString

v jave vdaka type erasure sa na genericky typ v case behu zabudne.

.net to zaviedol myslim v c# 2.0 kde to hodili do virtualmasiny. v jave to nemohli kvoli spatnej kompatibilite spravit

value types umoznuju zlepsit performance a finty pre vecicky ako komplexne cisla. definujete si value typ KomplexneCislo, ten bude v pamati ulozeny bez class overheadu (menej narocne na ram), dve komplexne cisla mozete porovnat cez ==, a dalsie vecicky. viac o tom http://cr.openjdk.java.net/~jrose/values/values-0.html

Aha, takze klasicke javisticke generika. To uznavam, su dost fail, aj na certifikacii bolo par pikosiek ohladom toho. No holt, treba vediet, co do toho strkam :-/

Radek Miček

Re:Před C# začít s C ?
« Odpověď #51 kdy: 24. 10. 2015, 18:42:07 »
reifikovane generika nemozu byt lebo backward compatibility

Nevidím důvod, proč by to muselo pokazit zpětnou kompatibilitu. IMO kolekce a jiný negenerický kód mohli nechat tak, jak byl, a jen přidat generickou variantu.

Citace
tail calls su problem, jedine naozaj je nejaky monkey patch ala scala @tailrec

To bohužel funguje jen, když funkce volá sama sebe - nefunguje to, když je volána jiná funkce v tail pozici.

Radek Miček

Re:Před C# začít s C ?
« Odpověď #52 kdy: 24. 10. 2015, 18:47:24 »
value types su planovane do java 9

Pokud je přidají bez reifikovaných generik, neztratí se výhody hodnotových typů (tj. nebude je třeba boxovat při vkládání do kolekcí)?

Tomas Roll

Re:Před C# začít s C ?
« Odpověď #53 kdy: 24. 10. 2015, 19:18:04 »
Chystám se do ciziny. Doporučili mi španělštinu. Neměl bych předtím začít s italštinou?

Pokud jedes do Latinske Ameriky, tak spis zacit s portugalstinou. Abys nedopadl jako Feynman - ten se ucil spanelsky a pak skoncil v Brazilii.  ;)

Pokud do Latinské Ameriky, tak samozřejmě latinu. Bez té se tam neobjedeš. To je takový jazykový ekvivalent C.

perceptron

Re:Před C# začít s C ?
« Odpověď #54 kdy: 24. 10. 2015, 19:35:55 »
value types su planovane do java 9

Pokud je přidají bez reifikovaných generik, neztratí se výhody hodnotových typů (tj. nebude je třeba boxovat při vkládání do kolekcí)?

oni to riesia

http://cr.openjdk.java.net/~briangoetz/valhalla/specialization.html

perceptron

Re:Před C# začít s C ?
« Odpověď #55 kdy: 24. 10. 2015, 20:09:43 »
a este k reifikovanym generikam: v jave by to rozdrbalo celu stdlib. vid clanok z 2006

2006/11/reified-generics-for-java.html?m=1

Radek Miček

Re:Před C# začít s C ?
« Odpověď #56 kdy: 24. 10. 2015, 22:57:08 »
value types su planovane do java 9

Pokud je přidají bez reifikovaných generik, neztratí se výhody hodnotových typů (tj. nebude je třeba boxovat při vkládání do kolekcí)?

oni to riesia

http://cr.openjdk.java.net/~briangoetz/valhalla/specialization.html

V podstatě tedy mohou mít reifikovaná generika pro hodnotové typy?

perceptron

Re:Před C# začít s C ?
« Odpověď #57 kdy: 25. 10. 2015, 08:36:05 »
zatial to tak vyzera ze to taj bude ako dosledok

perceptron

Re:Před C# začít s C ?
« Odpověď #58 kdy: 25. 10. 2015, 13:42:59 »
este k tym problemom reifikacie a value types, brian goetz z java language summitu

http://www.oracle.com/technetwork/java/jvmls2015-goetz-2637900.pdf

Re:Před C# začít s C ?
« Odpověď #59 kdy: 25. 10. 2015, 14:51:06 »
Ahoj, jsem začátečník-stařec, který má malou a dávnou zkušenost s Pascalem. Rád bych si jako hobby zkusil napsat nějakou jednoduchou aplikaci na PC, která "hezky vypadá". Jako vhodný jazyk mi byl doporučen C#, ale chci se zeptat, zda není vhodné předtím začít s C ? Díky

 ???
Proč se to tu většinou zvrhne v načechrávání peříček a poměřování údů?