• ú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
    XCHAOS
    XCHAOS --- ---
    REDGUY: když jsme u toho dělení nulou... to je mimochodem odchytitelný signál, ne ? abychom konečně opustili tuhle arénu, která mě už vůbec nebaví... co takhle popřemýšlet, jestli by standardní proces odchytávání signálů v C šlo nabindovat na setjmp/longjmp standardní POSIX libc error handling ? pokud bude adresa získaná pomocí setjmp uložena v globální proměnné, tak snad nic nebrání tomu, aby handler ošetřující signál provedl longjmp, ne ?

    (napadlo mi, že takhle by šlo odchytit vlastně i Ctrl+C .... jednoduše, Ctrl+C by se pak dalo odchytit na konci try { } bloku jako cokoliv jiného... a pokud se to neodchytilo, tak by ovšem program skončil... vlastně není jasné, jestli je to "očekávané" chování, ale každopádně by to bylo elegantní chování)
    XCHAOS
    XCHAOS --- ---
    DAVIDOWITCH: víceméně ... z debaty vyplynulo, že bude muset mít :-) a je fakt, že jsem to zvlášť neřešil, to se přiznám.

    prostě ve všech mých flow-control makrech budeš muset místo "break" psát "escape". ("continue" naproti tomu bude použitelné beze zeměny... BTW, pro vyskočení z kontextu bude bohatě stačit "continue" místo "break", a bude to ještě čitelnější...)
    DAVIDOWITCH
    DAVIDOWITCH --- ---
    XCHAOS: Ma ten remember/forget mit explicitni "terminate context now!" makro? Ja uz si to z ty debaty nepamatuju.
    REDGUY
    REDGUY --- ---
    XCHAOS: No a? Stejne tai budu v prdeli kdyz budu delit nulou, pristupovat na neinicializovanou pamet nebo zapisovat do RO souboru. No a? To ze existuji jine, nesouvisejici druhy chyb znamena, ze rozbitost kontextu je nejak v poradku?

    Problem tvych kontextu je v tom, ze je vydavas za zpusob reseni problemu s alokaci pameti pres malloc v C. Jenomze (a) nejsou kompletni nahradou, v rade situaci _porad_ musim pouzivat malloc a _porad_ bojovat s jeho problemy a zaroven (b) prinasi celou radu omezeni, ktera jen komplikuji praci a zpusobuji dalsi problem. To proste je rozbity a spatny design.
    _BENNY
    _BENNY --- ---
    XCHAOS: a to cele jen kvuli tomu ze nemas rad C++. feature jak vrata od chliva.
    XCHAOS
    XCHAOS --- ---
    REDGUY: pokud budeš používat return zprostředka funkce, která na konci něco de-incializuje, tak jsi v prdeli úplně stejně, jako když takhle použiješ můj hypotetický forget { }.
    XCHAOS
    XCHAOS --- ---
    Manifesto for Software Craftsmanship
    http://manifesto.softwarecraftsmanship.org/
    DAVIDOWITCH
    DAVIDOWITCH --- ---
    XCHAOS: V IT branzi veci kde je navod counterintivni pomerne rychle koncej v propadlisti dejin. U kolika toolu a knihoven sis predem prostudoval navod, nez si je zacal pouzivat? (Ja za sebe presne 0)
    REDGUY
    REDGUY --- ---
    XCHAOS: LOL!!! "To neni bug, to je feature!" Takhle ted pracuji umelecti kovari, er, chci rict, umelecti programatori? Haha 8) Nicmene, i tahle vymluva je mimo: pokud je rozbity uz zakladni design, tak zadna noticka v manualu "ehm, nepouzivejte return uprostred funkce" te nezachrani.
    XCHAOS
    XCHAOS --- ---
    REDGUY: tak až budu mít něco vysloveně nefunkčního, tak mi dej vědět. takovéto "když se to použije jinak, než se píše v návodu, tak to udělá něco co nečekám" - to není nefunkčnost, to je obecná vlastnost čehokoliv v IT (nejen v naší branži)
    XCHAOS
    XCHAOS --- ---
    _BENNY: s tím já nesouhlasím. od každé profese/specializace může existovat "umělecká" verze. jen musí být uživatelé varováni - a pro mě je dostatečným varováním třeba GPL licence.
    REDGUY
    REDGUY --- ---
    XCHAOS: tak ti vadí, že nemám jasný plán. a co má být ? To ze plany, ne nutne "jasne" ale PROBOHAASPONNEJAKE, jsou super a projekt, ktery ma PROBOHAASPONNEJAKY plan ma o nekolik radu vyssi sanci na uspech nez projekty ktery ho nema. Vidis? Zase se snazim pomoct.

    ale o těch kontextech se nedá předem říct, že _nefungujou_ - z ciste formalniho hlediska je samozrejme mozne ze se stane zazrak a za zvuku nebeskych harf, zpevu andelu pod dvojitou, ne, trojitou duhou prijdes a predvedes super duper implementaci ktera fungovat bude. Vzhledem k tomu ze takova implementace tady zatim neni a dokonce tady neni ani naznak problemu ktere jsme ti ukazali, sazim spis na "_nefungujou_".

    jinak umění má smysl samo o sobě, - dost mozna - na rozdil ale od programovani, kde je primarni funkcnost.
    _BENNY
    _BENNY --- ---
    Programátor není umělecký kovář! - Zdroják
    http://zdrojak.root.cz/clanky/programator-neni-umelecky-kovar/
    XCHAOS
    XCHAOS --- ---
    REDGUY: (...ve skutečnosti, reálně mi ta extra data před alokovanou oblastí dávají smysl jen u polí, a to ještě váhám, zda to stojí za tu práci...). ok, tak ti vadí, že nemám jasný plán. a co má být ?

    s tou funkčností souhlasím, ale o těch kontextech se nedá předem říct, že _nefungujou_ (kromě toho, že bych je implementoval špatně, což je zatím otevřená možnost). je třeba říct, že pokud se budou používat bez znalosti jejich fungování, tak tam může dojít k problémů. ale budou zdokumentované.

    jinak umění má smysl samo o sobě, a nejde o to, aby to byl laciný kýč, který si někdo koupí a dá si ho na zahrádku: dle tvé definice jsou uměním sádroví trpaslíci, protože si je lidi kupují.
    REDGUY
    REDGUY --- ---
    XCHAOS: Spíš tebe se ptám, zda jsou nějaké důvody, proč bych nový dialekt Céčka NEMĚL vymýšlet - chapu ze to asi obcas neni videt, ale jednim z duvodu, proc tady travim tolik casu je ze se ti snazim pomoct (a pravda, krome toho mam duvodu jeste par dalsich, zdaleka ne tak altruistickych. Ale tenhle tady skutecne je.) A co se ti snazim poslednich par zprav vysvetlit je, ze pokud nemas rozumne formulovane zadani, tj. ceho _konkretne_ chces dosahnout a plan jak to zhruba udelat, tak je sance na uspech miziva. A bohuzel, nejake povidani "eee, nechci se ucit C++ a pred kazdou alokovanou oblasti budou nejaka extra data a bude to superrychla nahrada fastcgi ktera natrhne php prdel", to takove zadani a plan neni.

    a odpovědí mi neustále je: "ne, programování musí být k něčemu dobré, musí to být užitečné protoze to tak je. V modernim umeni se asi muzes vysrat na talir a kdyz presvedcis dostatecne mnozstvi snobu ze to je umeni, tak to umeni bude. Diky bohu, v programovani to tak neni. Aby se o necem dalo rict ze to je povedene programatorske umeni, _musi_ to byt funkcni. Coz ocividne nechapes - viz to co jsi psal o svych kontextech, ze ti prijdou krasne a elegantni. Dost mozna jsou - ale NEFUNGUJOU, jsou ROZBITY a tudiz jsou k nicemu. Chces-li se dat cestou modernich umelcu a vydavat sracku za umeni, budiz. Jdi ale do umeleckeho klubu a presvedcuj umelce o tom jakej jsi machr a nevydavej to za programatorske, inzenyrske dilo.


    XCHAOS: "Umelecke kovarstvi"? Delas si srandu nebo si opravdu tolik fandis? Kdyz umeleckej kovar vykova peknou branu, lidi si ji radi zasadej do plotu protoze je hezka a zaroven funkcni. Co z toho co jsi vytvoril je podobne uspesne? Hezke, funkcni a pouzivane? A co te vede k tomu, ze tvoje dalsi bastl nadstavba nad C bude lepsi?
    XCHAOS
    XCHAOS --- ---
    ANT_39: no já fakt nevím, ale nepřestává mě fascinovat, kolika lidem stojím za ty flejmy, teda...
    ANT_39
    ANT_39 --- ---
    XCHAOS: Tedy jako vtip dobry, ale vazne, jestli to cele delas je proto, abys to delal, k cemu ti je nazor ostatnich? Ptas se jen proto, aby ses ptal?
    XCHAOS
    XCHAOS --- ---
    ANT_39: tak už nedebatuj :-)

    (a ano, dialekty Basicu jsem sledoval a zajímaly mě... akorát od té doby uplynulo moře vody, a více mě zajímá třeba JQuery jako nářečí JavaScriptu... to je úplně jiný level)

    V podstatě málokdo, kdo s tím toolkitem pracoval, se mnou asi bude polemizovat o tom, zda JQuery je nebo není geniální nápad. Ale zajímavé - představit si, že by mohlo existovat něco podobného i na nižším levelu, to mají lidi problém.
    ANT_39
    ANT_39 --- ---
    XCHAOS: V tom pripade o tom ale nema smysl moc debatovat.

    XCHAOS: Tak basic mel nareci vic nez dost, ne? A treba takove G++ neimplementuje cele C++, zato k nemu pridava mrak rozsireni...
    XCHAOS
    XCHAOS --- ---
    uvědomte si, že třeba otázka, jestli i v počítačových jazycích můžou být nářečí (dialekty) nebo jestli může vznikat počítačová "kreolština" je nesmírně zajímavá...

    třeba Perl byl v podstatě jeden z první pokusů po "počítačovou kreolštinu", protože si jako první bezostyšně půjčoval koncepty z jiných jazyků (aniž by přišel s nějakým dominantním vlastním konceptem - proto taky např. nemá důsledné odchytávání vyjímek, protože s tou koncepcí vlastně přišel dávno před tím, než se stala běžná jinde - a místo toho má obecnější feature, která současně umožňuje i interpretaci programem vygenerovaného zdrojového kódu, apod.

    nebo jinak: jestliže C je vnímáno spíše jako řemeslo nebo dokonce "těžký průmysl" IT oboru, tak já se snažím o cosi, jako "umělecké kovářství".
    Kliknutím sem můžete změnit nastavení reklam