Portál AbcLinuxu, 21. říjen 2017 14:41

Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Vložit další komentář
alblaho avatar 5.4.2011 10:39 alblaho | skóre: 17 | blog: alblog
Rozbalit Rozbalit vše Re: Google Go – pokročilejší témata
Odpovědět | Sbalit | Link | Blokovat | Admin
Ten jazyk je fakt zajímavý. Myslel jsem, že v kategorii imperativních jazyků už nemá cenu se učit nic nového, ale tohle nevypadá marně.
5.4.2011 11:25 Ladicek | skóre: 28 | blog: variace | Havlíčkův brod
Rozbalit Rozbalit vše Re: Google Go – pokročilejší témata
Mně to nepřijde nijak úchvatné. Mají pár zajímavých nápadů (defer se mi docela líbí), odvážili se zrušit dědičnost (tleskám!) a zavést určitou formu strukturální typové ekvivalence (u rozhraní)… no, na gorutiny s posíláním zpráv se budu muset ještě trochu podívat, ale žádné velké nadšení nepozoruju.

Lambdy jsou syntakticky hrozně roztahané, skoro jako v Javě :-) A proč autoři mluví o uzávěrech jako o uzávěrách?
Ještě na tom nejsem tak špatně, abych četl Viewegha.
5.4.2011 12:33 Sten
Rozbalit Rozbalit vše Re: Google Go – pokročilejší témata
Taky mi přijde, že je to akorát jinak zapsaný libovolný jiný imperativní jazyk, který má pár věcí navíc řešených přímo ve specifikaci místo v knihovně (což je IMO velmi omezující), např. korutiny (nazvané gorutiny :-)), lambdy či uzávěry (v C++ to umí třeba Boost.Coroutine (zatím není součástí Boostu) a Boost.Lambda).
5.4.2011 13:13 Lukáš Zapletal | skóre: 42 | blog: lzapův svět | Olomouc
Rozbalit Rozbalit vše Re: Google Go – pokročilejší témata
Snad každý imperativní jazyk bude jinak zapsaným imperativním jazykem, ne? :-)

Go se mi líbí, ale mírným favoritem na podobném poli je u mě Vala.
5.4.2011 14:09 Sten
Rozbalit Rozbalit vše Re: Google Go – pokročilejší témata
To byla spíš narážka na to, že většina dnes používaných imperativních jazyků se zapisuje podobně jako Céčko :-)
alblaho avatar 5.4.2011 17:54 alblaho | skóre: 17 | blog: alblog
Rozbalit Rozbalit vše Re: Google Go – pokročilejší témata
Vala mi přijde jako velmi vhodná alternativa pro programování pro GNOME. Čisté C je zatrest, Python zas prostě nemá tu efektivitu nativního kódu, Mono je... Mono :-)

Plusem je, že nějaký kvalitní soft už je v tom napsaný, třeba Shotwell. Ale detailně jsem to nezkoumal, teď koukám, že mají i výjimky, takže to není jen blbý preprocesor pro C.

Ale mimo GNOME nevím nevím.
q66 avatar 7.4.2011 01:04 q66 | skóre: 32 | blog: Q's CZ devblog
Rozbalit Rozbalit vše Re: Google Go – pokročilejší témata
čisté C je perfektní, ale je třeba si dát pozor. Ono to programování pro GNOME je to, co stojí za hovno .. :D
7.4.2011 22:09 __dark__
Rozbalit Rozbalit vše Re: Google Go – pokročilejší témata
Ty bys začal velký projekt v C?
q66 avatar 8.4.2011 01:06 q66 | skóre: 32 | blog: Q's CZ devblog
Rozbalit Rozbalit vše Re: Google Go – pokročilejší témata
Zrovna jeden začínám :-P Pořád mnohem lepší, než se srát s C++, D ještě není pořádně rozvinutý a když je třeba přenositelnost a možnost nabindovat API z mnoha jiných jazyků, tak Cčko je perfektní volba.
8.4.2011 04:25 __dark__
Rozbalit Rozbalit vše Re: Google Go – pokročilejší témata
Já osobně nevidím rozdíl v bindování C nebo C++. Ve většině případů se píšou wrappery u obou stejné. Podle mě je největší problém v tom, že těch jazyků je milion, a každý má pro ty bindingy jiné API.

Jinak k tomu projektu dej link, pokud je open, rád se podívám, čemu říkáš větší projekt :-)
8.4.2011 07:18 petr_p | skóre: 59 | blog: pb
Rozbalit Rozbalit vše Re: Google Go – pokročilejší témata
Když děláte binding na kód C++ (obecně jakýkoliv jazyk se jmennými prostory), tak musíte řešit mapování identifikátorů na symboly v objektových souborech. A zrovna C++ výslovně varuje, že se liší překladač od překladače (a často i mezi verzemi téhož překladače).
8.4.2011 08:06 __dark__
Rozbalit Rozbalit vše Re: Google Go – pokročilejší témata
To ovšem pouze v případě, že ten jazyk, do kterého dělám binding, umí načíst sdílenou knihovnu a volat C funkce (toto umí hlavně kompilované jazyky). Na druhou stranu, někde stejně musí být seznam těch funkcí, parametry, atd, takže ten "wrapper" je sice jinde, ale stále je tam.

Takže abych to shrnul, pokud mám malou knihovnu, která má do 20 funkcí, které chci nabindovat, opravdu nevidím rozdíl v tom, jestli je v C nebo C++. Pokud je knihovna větší (dejme tomu tisíce funkcí), je bindování podle mě komplikované jak v C, tak i v C++.

Nakonec i v C++ je možné používat pro externí API C symboly, takže bych se toho zase tak nebál.
q66 avatar 8.4.2011 14:43 q66 | skóre: 32 | blog: Q's CZ devblog
Rozbalit Rozbalit vše Re: Google Go – pokročilejší témata
pracuju na herním enginu s integrací master/asset serveru pro storage dat na serveru a automatické stažení klientem; s jednoduchým skriptováním v jazyce Lua a tím pádem možností tvořit velkou škálu her bez zásahů do core enginu. V současnosti je venku první pre-alpha, ale používá se existující engine Cube 2, který je v C++ (no, spíš takový Cčkovitý C++) a vzhledem k tomu, že jeho kód není moc flexibilní, začaly práce na úplně novém enginu from-scratch v čistým C99 a modulární architekturou založenou na runtime načítání modulů (renderery, zvukové subsystémy, skriptování, formáty map apod.) s důrazem na velkou flexibilitu a efektivitu. Vývoj bude trvat asi dlouhou dobu i s týmem několika programátorů, takže vývoj probíhá vedle aktuální codebase a postupně proběhne přechod. Také je momentálně problém s managementem, takže tam bude probíhat hodně změn - bude se forkovat, takže pokud chceš sledovat stav, tak ti můžu poslat link až po forku - klidně mě kontaktuj na IM (quaker66 AT gmail DOT com nebo quaker AT jabbim DOT cz)

Původní záměr bylo použití D pro nový engine, ale vzhledem k nepodpoře několika věcí ve všech kompilátorech (momentálně chybějící linkování shared knihoven a podpora pro málo architektur / OS) jsem se rozhodl pro Cčko, se kterým nemám problém.

V Cčku se dá psát velice přehledný kód i pro velké projekty - ale je třeba si dát pozor na paměť a pečlivě kód strukturovat, aby se z toho nestala špagetovitá změť a vše rozdělit přehledně do částí.

Jiný projekt, ve kterým jsem zapojen a je psaný v Cčku, je Enlightenment a jeho knihovny.
alblaho avatar 5.4.2011 17:58 alblaho | skóre: 17 | blog: alblog
Rozbalit Rozbalit vše Re: Google Go – pokročilejší témata
Já to vidím jako konkurenci pro céčko. Javisti Go moc řešit nemusí.

- jednodušší než C++ (doufám)

- jakás takás podpora pro moderní vícejádrové procesory

- kompaktní nativní kód (doufám)

- rychlý překlad

- moderní serepetičky typu typová inference a uzávěry

Déčko se moc nechytlo, třeba prorazí tohle. Nezlobil bych se.
q66 avatar 7.4.2011 01:06 q66 | skóre: 32 | blog: Q's CZ devblog
Rozbalit Rozbalit vše Re: Google Go – pokročilejší témata
"Déčko se moc nechytlo" .. nemůžeš říct o jazyce, který měl první stabilní specifikaci v roce 2007 a druhá ještě ani není.
7.4.2011 22:08 __dark__
Rozbalit Rozbalit vše Re: Google Go – pokročilejší témata
Specifikace možná, ale ten jazyk je tu už pěkně dlouho a stejnou dobu je i ignorován. Na druhou stranu programovat pod D bych si zvykl, ale v tom Go paskvilu ne:-)
q66 avatar 8.4.2011 01:07 q66 | skóre: 32 | blog: Q's CZ devblog
Rozbalit Rozbalit vše Re: Google Go – pokročilejší témata
Nojo, jenže ten jazyk NENÍ ještě pořádně vyvinutý pro produktivní použití - D2 už celkem jo, ale ideální to není - není ignorován, prostě ještě není "ready".
8.4.2011 04:26 __dark__
Rozbalit Rozbalit vše Re: Google Go – pokročilejší témata
V tom případě je otázka, bude v dohledné době vyvinutý, když se nevyvinul ani během deseti let?
Luboš Doležel (Doli) avatar 7.4.2011 15:02 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
Rozbalit Rozbalit vše Re: Google Go – pokročilejší témata
Do D bych docela vkládal naděje, ale myslím si, že je pro jeho budoucnost zásadní plná kompatibilita s C++ (ve smyslu linkování vůči knihovnám).
q66 avatar 8.4.2011 01:10 q66 | skóre: 32 | blog: Q's CZ devblog
Rozbalit Rozbalit vše Re: Google Go – pokročilejší témata
No, zatím se dá C++ knihovna wrapnout pod Cčkem a to pak použít v D, ale ideální to není, samozřejmě.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.