• úvod
  • témata
  • události
  • tržiště
  • diskuze
  • nástěnka
  • přihlásit
    registrace
    ztracené heslo?
    XCHAOSANSI C/C99 (specifikace), GNU C (gcc, glibc), Tiny C (tcc) a POSIX - ne nutně C++,g++,libstdc++ nebo Win32 API
    DAVIDOWITCH
    DAVIDOWITCH --- ---
    XCHAOS: ja si myslim ze tim vic pokud jde o framework. Potrebujes si udelat jasno v tom jaky nedostatky jazyka resi, jestli se zcela zbytecne neperes s necim co dela uplne identickou vec (pokud ji to dela hur tak klidne vylepsuj, ale pokud uz neco dela tvuj vysneny idealni stav, sel bych vylepsovat neco jinyho).

    Ok, to zni rozumne. Zkusils prvni krok, vzit nejakou cilovou aplikaci a nakodovat v Ccku jako takovym?
    Jednak ti to da vyrazne predstavu jaky vlastne ficury budes potrebovat nez kdyz o tom budes meditovat od stolu. Muzes v klidu naprototypovat marusku linearnim seznamem, a kdyz uvidis ze na tom realne ztracis spoustu casu, tak vylepsit to co se schovava za interfacem.

    Druhak se muze stat ze zjistis ze to PHP tou pameti neplejtva az tak moc jak sis puvodne myslel, protoze proste to co je v nem napsany je pamet-zerouci svinstvo, nebo to musi delat mrak veci na ktery si puvodne nepomyslel.

    Mne prijde vzdycky dulezity, pro moje vlastni projekty (jiny vlastne nedelam) abych mel relativne jasny kde sem, kam se chci dostat a tudiz co je tak cca dalsi rozumnej krok. Nactrnout cestu nahrubo a pak vylepsovat kousky co se mi nelibej. Jinak se placam na miste a nikam se nedostanu. A to "kam se chci dostat" muze bejt uplne zhuleny, ale chci vedet ze se "snazim vyrobit nejakou variantu tohohle single-threaded algoritmu na GPUcko."
    REDGUY
    REDGUY --- ---
    XCHAOS: ale RFC v původním významu těch slov ja vim jak to myslis. Ptal jsem se, jestli tim RFC v puvodnim vyznamu tech slov myslis [ XCHAOS @ ANSI C/C99 (specifikace), GNU C (gcc, glibc), Tiny C (tcc) a POSIX - ne nutně C++,g++,libstdc++ nebo Win32 API ] , nebo jestli jsi psal jeste nejake jine RFC (v puvodnim vyznamu tech slov) nekam jinam, protoze v tom pripade by me fakt zajimalo co ti na to rekli jini 8)



    první aplikace toho frameworku bude fastcgi webová aplikace, schopná velmi rychle reagovat např. na Ajaxové HTTP requesty - a jako obvykle: proc by tvuj framework mel na to byt vhodnejsi nez ciste C nebo nejaka podmnozina C++? Proc bude vyhodnejsi psat v nem nez v Perlu/PHP? (hint: spravna odpoved _neni_ jen "protoze to bude rychlejsi", uz proto ze to zdaleka neni nutne automaticky pravda)
    XCHAOS
    XCHAOS --- ---
    REDGUY: myslím RFC ne jako hotové RFC dokumenty/specifikace, ale RFC v původním významu těch slov: mám nějaký nápad, a zeptám se co si myslí jiní. asi jsem se dozvěděl už fakt dost :-)

    DAVIDOWITCH: i pokud jde o framework ? typicky, framework je něco, co by mělo umožnit udělat více různých věcí...

    ale ano, v hrubých rysech jsem naznačil, že první aplikace toho frameworku bude fastcgi webová aplikace, schopná velmi rychle reagovat např. na Ajaxové HTTP requesty, a požadavek je, abych stihl obsluhovat na průměrném serveru více klientů současně, než třeba kdyby to bylo řešené tradičně v PHP.

    Spustit např. 100 paralelních kopí Apache není problém - pokud tyto Apache v sobě nemají mod_php, který naroste při každém načtení PHP frameworku třeba na 30+ MB. (30x100 už může na průměrném serveru být trochu problém). Tedy, jsou zhruba dvě cesty, jak umožnit paralení přístup více lidem: jednak snižování množství alokované paměti - ale především zkrácení času, který trvá vyřízení jednoho requestu. víceméně: mám po letech v oboru alespoň mlhavou představu o režii webových aplikací napsaných v PHP, Perlu a Pythonu. a chci zkusit něco jiného.

    stačí - nebo je to pořád málo ?
    DAVIDOWITCH
    DAVIDOWITCH --- ---
    XCHAOS: No, typicky nejdriv chces vedet co planujes udelat, alespon v hrubych rysech a az pak zacit bastlit kod...
    REDGUY
    REDGUY --- ---
    XCHAOS: jak mám někoho přesvědčovat, aby používal něco, co ještě není hotové ani v betaverzi ? Ach jo. Takze dalsi, jeste o neco explicitnejsi preformulovani: az bude tvuj bastl hotovy a bude umet to co si ted predstavujes ze ma umet, jak bys nalakal jine programatory aby ho zacali pouzivat? Cim cekas ze je nadchnes pro svuj bastl?

    Tim RFC myslis to co jsi psal tady?
    XCHAOS
    XCHAOS --- ---
    REDGUY: jak mám někoho přesvědčovat, aby používal něco, co ještě není hotové ani v betaverzi ? víceméně - vyslal jsem do světa jsem jakési "request for comments"... tyto komentáře dorazily, a nyní se tato etapa chýlí už víceméně ke konci.

    a kromě toho - není to samostatný jazyk, ale jen dialekt jazyka. (C++ naproti tomu není dialekt, ale samostatný, odlišný jazyk).
    XCHAOS
    XCHAOS --- ---
    ANT_39: ano, připouštím, že lepší komunikace mezi programátory může být mým cílem.

    cíle komunikace v komunitě open-source jsou podle mě aspoň částečně jiné, než cíle komunikace v komunitě zaměstnanců nějaké firmy: tam je cílem podle mě vytvoření nějaké funkční hierarchie, nastolení autority, efektivní organizace a dělba práce... nechci tady nějak dávat najevo, co z toho myslím pozitivně, nebo negativně... ale smyslem programování v zaměstnaneckém poměru je především udržet si to místo a brát mzdu, že.

    existují samozřejmě i programátoři placení za vývoj open source aplikací... ale svým způsobem, cílem mých hypotetických open source projektů by teoreticky mělo být, abych nadchnul ostatní, aby se na mém projektu podíleli zadarmo, a já bych se pak živil jen prodejem triček :-) to je ovšem právě záležitost komunikace mezi lidmi.
    REDGUY
    REDGUY --- ---
    XCHAOS: Budiz. Doufam ze se ale shodneme ze "Jsem tak liny (nebo, chces-li, linny) naucit se C++ nebo jeho cast, ze radsi udelam vlastni programovaci jazyk" je velmi specifickym druhem lenosti. Prima, preju ti ji. Psal jsi ale ze chces svuj jazyk pouzivat ve vetsich projektech. Jak bys presvedcil pripadne prispevatele, ze misto vseobecne rozsireneho a tim i uzitecneho C++ se maji ucit tvuj bastl?
    ANT_39
    ANT_39 --- ---
    Ja si osobne myslim, ze cll1 je proste _conlang_: http://dedalvs.conlang.org/notes/manifesto.php
    Conlangem se nazyvaji umele vytvorene "prirozene" jazyky. Jejich smyslem muze a nemusi byt komunikace mezi lidmi: pruzkum nejake gramaticke charakteristiky je stejne validnim cilem, stejne tak muze byt cilem proste jen tvorba toho jazyka. Je to zkratka umelecka zalezitost. Coz je fajn, ale musi se to rict, aby pak ostatni zmatene nerozhazovali rukama, ze dane reseni nedava smysl z toho, nebo onoho duvodu :)
    XCHAOS
    XCHAOS --- ---
    no ale neučit se C++ není ideologie... to je lennost. ovšem já pokládám lennost za svého druhu ctnost... spousta dobrých objevů, které lidstvo učinilo, vzešlo v podstatě z lennosti...
    REDGUY
    REDGUY --- ---
    XCHAOS: tak si neumím představit, že bych lidi hecoval k něčemu takovému pomocí plakátů ach boze. Nechci po tobe abys namaloval plakat. Snazim se te dotlacit k tomu, abys napsal jake skutecne, prakticke vyhody jazyka ktery se snazis navrhnout. Aniz bych se te ted snazil urazit, to co jsi zatim napsal zadne skutecne vyhody nejsou, to je jen ideologie nekoho, kdo se nechce ucit C++ ani jeho nejakou cast (a ani nedokaze rict proc) - a to proste neni duvod ktery muze vest k necemu rozumnemu. Ma to byt rychlejsi? Spolehlivejsi? Prehlednejsi? Snazsi na nauceni? Levnejsi? Jestli si nedokazes formulovat cile ani na takhle obecne urovni, tak proste nemuzes cekat prijatelny vysledek (pro vsechny definice slova 'prijatelny').


    XCHAOS: file=open(...) OR die(-1) je roztomile na prvni pohled a pro pouziti v bastlech. Ale v okamziku kdy zjistis ze pred tim die potrebujes udelat jeste neco jineho to stejne musis prepsat na normalni if.

    die(-1) IF NOT file=open(...) je zlo, protoze hlavni operaci (otevreni souboru) schovava nekam daleko doprava kde neni na prvni pohled videt a misto toho cpe do popredi osetreni vyjimecne situace. Pro citelnost kodu dost destruktivni.
    XCHAOS
    XCHAOS --- ---
    ještě k tomu vyhodnocování operátorů - vlastně spíš AND, než OR, pravda :-) ale zprava doleva jo.

    file=open(...) OR die(-1)

    die(-1) IF NOT file=open(...)

    to jsou oboje moc hezké zápisy. nevím, jestli jsou vhodné pro začátečník, mě se každopádně líbí. ale v C to napsat nejde (zvlášť to druhé... na to první by stačilo potlačit nějaké warningy)
    XCHAOS
    XCHAOS --- ---
    REDGUY: ne, asi neumím Ruby. ale nepokládám to ani za podstatné.

    mě se některé ty "úsporné" konstrukce líbí: třeba Perl mi kdysi zaujal konstrukcí:

    file=open(...) || die(-1).

    (tohle jde v C napsat taky, ale hodí to warning "value computed but not used", či tak něco...)

    a v Ruby se mi líbí, že IF je v podstatě ekvivalent operátoru OR, akorýt vyhodnocovaný zprava doleva. já neříkám, že se mi některé ty věci nelíbí, a že bych třeba jednou (v důchdou, pro vnoučata, pokud by je bavilo programovat ) nechtěl vymyslet vlastní vyšší programovací jazyk, u které by mi bylo jedno, že je to jenom hračka, a neřešil bych optimalizace a tak.

    dnes ale prostě ještě mám jiné cíle... a skutečně, nevidím žádnou "rudou mlhu".

    faktem je, že plakáty jsem dlouho nenavrhoval. sám jsem se neučil programovat na základě žádného plakátu :-) tak si neumím představit, že bych lidi hecoval k něčemu takovému pomocí plakátů. beru to tak, že dnes si hudbu taky vybírám podle jiného klíče, než jsem si jí vybíral třeba v 16ti... a obracím se tedy na své vrstevníky, kteří potenciálně hledají to co já, jen mají méně času... nevím.
    REDGUY
    REDGUY --- ---
    XCHAOS: Vis, jeden z tvych mnoha omylu je ze staci si precit "Ruby tutorial" a umis Ruby. Ne, neni to tak.

    Ale hele, vazne: zkus si setrit rudou mlhu z oci a napis plakat pro svuj projekt. Co bys napsal na poutac, ktery ma lidi nalakat naucit se tvuj bastl? Neverim ze myslis vazne ze jedine co bys tam dokazal napsat jenom "Jazyk pro lidi, kteri se nechteji ucit ani kousek z C++". Co by tam bylo?
    REDGUY
    REDGUY --- ---
    XCHAOS: bude mít jedinou výhodu, že se nebudeš muset učit C++ - jak uz jsem psal, neni problem naucit se pouze ty veci z C++ ktere se ti libi a ktere potrebujes a ignorovat zbytek (jako treba to pretezovani, co te tak trapi).

    Prosim, vysvetli mi, proc je vyhoda naucit se tvuj nekompatibilni bastl misto podmnoziny C++? Nekompatibilni bastl znamena ze nemuzu pouzivat existujici nastroje, ze znalosti nevyuziju v jinech projektech, ze nemuzu svoje znalosti case rozsirit o cele C++. V cem je vyhoda? (krome OMG WTF NEMAM RAD C++!!!!111ONE)

    btw, proc je tak tezke z tebe dostat nejakou skutecnou, praktickou vyhodu tveho bastlu? Proc misto abys napsal "bude to lepsi protoze xy bude snazsi/rychlelsi/prehlednejsi" porad jen utocis na jine jazyky a oponenty? Mel bych takovou teorii, ale nechci te jeste vic urazit 8)
    _BENNY
    _BENNY --- ---
    XCHAOS: protoze se mi taky libi efektivni a optimalni reseni problemu, nemam rad bloaty a tak nejak tusim jak se optimalizuje kod. a taky nemam rad vsechny ficury C++ a proto je nepouzivam a pouzivam jen ty, ktere se mi pri tvorbe rychlych a malych programu hodi. a vstavaji mi hruzou vlasy na hlave, kdyz si tady obcas od tebe nejaky ten navod na zrychleni SW prectu. delas to proste blbe. a jak mozna znas z jinych klubu, kdyz vidim blbost, nevaham se ozvat ;-)

    pritom by stacilo vzit z C++ to C uvnitr, vypujcit si nejake konkretni sikovnosti, ktere ti umozni tvuj napad zrealizovat a uz bys mel treba tu svou marusku davno hotovou. a maruska by byla v 99% cisty C kod bez C++ extenzi.
    XCHAOS
    XCHAOS --- ---
    REDGUY: dobře, jestli tě to potěší, tak změním definici: vyvíjím toolkit pro lidi, co s programováním už končí !

    spokojen ?
    XCHAOS
    XCHAOS --- ---
    REDGUY: 100.krát { mám_opakovat to, ti } nebo chcípni.
    XCHAOS
    XCHAOS --- ---
    REDGUY: můj nástroj (až bude hotový) bude mít jedinou výhodu, že se nebudeš muset učit C++ ... pokud to pro tebe není výhoda, tak se na to vykašli a ignoruj ho.
    XCHAOS
    XCHAOS --- ---
    _BENNY: no, víceméně, jakákoliv věc když se použije jinak, než je zamýšleno, tak nefunguje.

    _BENNY: já popravdě určitě nemám tak vysoké cíle, aby je v C nešlo realizovat. ale faktem, že určitě nejsem jediný programátor, kterému C++ přijde zbytečně komplexní: většina ostatních to ale obchází argumentací, že nepotřebují trávit život zbytečným optimalizováním a že ten který jednodušší nástroj, který si místo toho zvolili oni, jim bohatě stačí.

    opět nechápu, proč věnuješ tolik úsilí, abys mi vysvětlil, že se MUSÍM buď prodrat mezi C++ elitu - a nebo se smířit s tím, že budu patřit do davu těch, co používají jednodušší nástroje a jsou si jistí tím, že jejich záměrům bohatě dostačují. Já prostě mám rád různé třetí cesty.
    Kliknutím sem můžete změnit nastavení reklam