• ú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
    /* Toto je klub především pro lidi, pro které je programování jednou z mnoha massive multiplayer online počítačových her, které lze hrát.
        V tomto klubu hrozí sémantická hereze a nezdravě vysoký obsah syntaktického cukru. Nevhodné pro algoritmické diabetiky.
        Od účastníků debaty se předpokládá automaticky přístup k instalovanému GNU C: sudo apt-get install build-essential
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    C (programovací jazyk)#C99 Heslo na české Wikipedii
    Jazyk C - Základy praktického programování V Praze 2oo7 pro SSPŠ Tomáš Harvie Mudruňka a kolektiv - jak si programování v C představuje většina lidí
    http://stevenkobes.com/ctest.html C Programming Puzzlers - nepouštějte se do flamewars v tomhle klubu, pokud neuhodnete aspoň polovinu správně!
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    http://en.wikipedia.org/wiki/C99 C99 is a modern dialect of the C programming language.
    http://cprogramminglanguage.net/ C programming language
    http://cprogramminglanguage.net/c-programming-language-tutorial.aspx C programming language - úvod
    http://en.wikipedia.org/wiki/Criticism_of_the_C_programming_language C makes it easy to shoot yourself in the foot. (ještě že ne do hlavy...)
    http://en.wikipedia.org/wiki/C_preprocessor
    http://gcc.gnu.org/onlinedocs/gcc/Variadic-Macros.html C99 makra s proměnným počtem argumentů - __VA_ARGS__
    http://gcc.gnu.org/onlinedocs/gcc/ GNU C Compiler
    http://gcc.gnu.org/onlinedocs/gcc-4.2.2/gcc/Optimize-Options.html
    http://bellard.org/tcc/ Tiny C Compiler - prý C99 compliant (min. umí __VA_ARGS__) - vhodný pro skriptování v C - umí #!/usr/bin/tcc -run
    http://en.wikipedia.org/wiki/International_Obfuscated_C_Code_Contest - pokud jste neviděli tohle, tak jste ještě neviděli opravdu nečitelný C zdroják
    http://bellard.org/otcc/ Obfuscated Tiny C Compiler - z tohohle vtípku vznikl Tiny C compiler
    http://en.wikipedia.org/wiki/ANSI_C Jak se střelit do nohy standardizovaným způsobem.
    http://eli-project.sourceforge.net/c_html/c.html ANSI C Specification
    http://www.lysator.liu.se/c/ Různý ANSI C bordel
    http://www.cs.rit.edu/~ats/books/ooc.pdf Object Oriented Programming with ANSI-C - a pak že to nejde
    http://en.wikipedia.org/wiki/Longjmp co jsou to setjmp()/longjmp() knihovní funkce (pro všechny, podle kterých to bez C++ try { } catch() ... nejde)
    http://groups.google.com/group/comp.lang.c++.moderated/browse_thread/thread/dcdc710c27f47c72 C neumí správně počítat (?)
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    http://www.fastcgi.com/ FastCGI is simple because it is actually CGI with only a few extensions.
    http://www.metalshell.com/source_code/18/Mysql_Select.html How to do a simple connection and select with mysql
    http://xmlsoft.org/ The XML C parser and toolkit of Gnome
    http://curl.haxx.se/libcurl/ libcurl - the multiprotocol file transfer library
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    https://dev.arachne.cz/svn/cll1h SVN/Trac jazyka C<<1 (user-friendly nadstavba nad ANSI C99 - ve stylu JQuery vs. JavaScript)
    Benchmark iterace a serializace stringů v různých jazycích vs. v C
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        moderátor se velice zhruba řídí zvyklostmi moderace, která kdysi platila v řadě konferencí sítě FidoNet ... C != 0xdead */
    rozbalit záhlaví
    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.
    _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í".
    XCHAOS
    XCHAOS --- ---
    ANT_39: víceméně, já ale od začátku zdůrazňuji svůj "umělecký záměr".

    a odpovědí mi neustále je: "ne, programování musí být k něčemu dobré, musí to být užitečné - není možné to dělat jen jako umění"

    ve skutečnosti - už když dosáhnu nějaké minimální funkčnosti, a SOUČASNĚ tam ještě bude ten "umělecký" level - tak co jako ? je to podle mě stejně dobré jako JAKÉKOLIV jiné programování (proč by mělo být ok bastlit stránky v PHP a ne zkoušet to, co dělám já ?)
    ANT_39
    ANT_39 --- ---
    XCHAOS: Ten clovek nicmene netvrdi, ze ty jazyky budou k necemu dobre, neni to asi cilem, a nazor ostatnich je mu, rekl bych, celkem sumak, protoze charakteristiky toho jazyka jsou podrizene jen _jeho_ _umeleckemu_ zameru. Nema to nic spolecneho s inzenyrstvim nebo designem.

    Ono kdyz predkladas inzenyrum a desigenrum RFC, nediv se, ze dostanes inzeryrske a designerske odpovedi.
    XCHAOS
    XCHAOS --- ---
    REDGUY: proboha, mrkni se znovu na toho týpka, na kterého odkazoval [ ANT_39 @ ANSI C/C99 (specifikace), GNU C (gcc, glibc), Tiny C (tcc) a POSIX - ne nutně C++,g++,libstdc++ nebo Win32 API ] - vymyslel asi 10 umělých jazyků, každý s jinou ortografií, jeden z těch jazyků má 57 pádů podstatných jmen. a ještě o tom (prý) učí na vysoký a tvrdí o sobě, že je Francouz.
    http://dedalvs.conlang.org/zhyler/main.html

    to je můj člověk. ty by si ale pravděpodobě řekl, že nemá ani trochu rozmyšlený, proč něco takovéhodělá :-)

    víceméně - vymýšlet umělé lidské jazyky vyžaduje hodně zvláštní osobnost, protože pravděpodobnost, že si s tebou v tom jazyce skutečně někdo popovídá, se limitně blíží nule (s čestnou vyjímkou Klingonštiny - leda bys to někomu zadal jako semestrální práci, jako asi tenhle týpek

    na druhou stranu, vymýšlet umělé počítačové jazyky je především normální, protože každý tento jazyk je, ehm... umělý. navíc si skvěle popovídáš s počítačem, což pořád ještě může být zábavnější, než co já vím - povídat si s lidmi na Facebooku ? prostě ty mě nutíš hledat důvody proč se pokouším o co se pokouším, ale to je podle mě zbytečné. Proč lést na Mt.Everest ? No prsotě proto, že tam ta hora je, sakra ! (Na co potřebuješ nějaký další důvod ve světě a v životě, který je jako celek absurdní a nesmyslný ?)

    Spíš tebe se ptám, zda jsou nějaké důvody, proč bych nový dialekt Céčka NEMĚL vymýšlet: jsou to důvody mravní a etické snad ? nějak tě urážím, asi jako Hájka uráží naolejované hýždě homosexuálů, nebo tak něco ? :-)
    REDGUY
    REDGUY --- ---
    XCHAOS: já ale nevím, jestli to bude výhodnější. jak to mám vědět, dokud to nemám (aspoň trochu) hotové - no, cekal bych ze nez neco takoveho zacnes delat, budes to mit aspon trochu rozmyslene a mit nejakou predstavu, proc by to co delas melo byt lepsi nez to co existuje. Zatim to vypada ze delas neco, nevis co, nevis jak a nevis proc (krome toho ze se nechces ucit C++) a doufas, ze to "nejak" bude lepsi nez existujici veci - ale netusis ani v cem to bude lepsi. To je opravdu velmi tezke pochopit.
    DAVIDOWITCH
    DAVIDOWITCH --- ---
    XCHAOS: Errr.. to byl priklad debaty, ktera vedla k tomu ze to nekdo muze vnimat jinak nez jak sem to nize popsal. Konkretni predmet debaty je offtopic a je mi uplne sumak (svoje uz sem k tomu rekl kdyz byla on topic)
    XCHAOS
    XCHAOS --- ---
    DAVIDOWITCH: šmarjá, to taky byl úplně offtopic flejm, tohleto...

    z jakékoliv C konstrukce nemůžeš vyskočit, pokud ručně ne-deinicializuješ všechno, co si tam inicializoval (myěleno všechno, kromě místa na stacku): musíš ručně pozavírat soubory, ručně dealokovat paměť, apod.

    pokud přijdu s několika dalšími konstrukcemi, ze kterých není bezpečné kdykoliv udělat return, nebude to z hlediska programování v C prsotě nic nového.
    XCHAOS
    XCHAOS --- ---
    REDGUY: já ale nevím, jestli to bude výhodnější. jak to mám vědět, dokud to nemám (aspoň trochu) hotové ?

    prostě něco zkouším, a až to bude hotové, tak má cenu hledat pro-příklady a proti-příklady a srovnávat. až bude aspoň nějaký pre-release. je to tak těžké pochopit ?

    mimochodem - k jakékoliv nové datové struktuře, kterou bych nedej bože vymyslel, by měla jít vymyslet deklarace v C++ ... stejně tak k jakémukoliv preprocesorovému makru, by mělo jít napsat čistší a efektivnější C++ template... takže kde je problém ? pokud někdo předvede, že stejnou cestou se dá jít i v C++ akorát tam všechno pak bude hezčí a bezpečnější a tak, tak mu držím palce.
    DAVIDOWITCH
    DAVIDOWITCH --- ---
    XCHAOS: Noo.. tak treba nejaky kontexty a nemoznost returnu ze smycky a forget/remember s tim co sem popsal nemaj (v mem svete) zadnou spojitost. Tak omluv zmateni.
    XCHAOS
    XCHAOS --- ---
    DAVIDOWITCH: v podstatě mě nikdy nenapadlo, že to co dělám, by někdo mohl vnímat nějak jinak
    DAVIDOWITCH
    DAVIDOWITCH --- ---
    XCHAOS: Ano, a vetsinou za tim jinym pristupem a jinou syntaxi stoji nejaky duvody.

    Takze chces Cckovy wrappery tehle typu, nejaky kolekce nad nima a iterator/for_each nad tim?
    REDGUY
    REDGUY --- ---
    XCHAOS: Ja ti uz fakt nevim. Polozim jednoduchou otazku, ktera je ovsem klicova jako motivace proc to vlastne delas. Primo napisu ze "bude to rychlejsi" neni spravna odpoved. A co odpovis? V podstate "Bude to rychlejsi (az na specialni pripady)". Ach jo. Tak znovu: proc bude _vyhodnejsi_ psat v tvem bastlu? Opravdu musim podrobne vysvetlovat ze rychlost behu vysledneho systemu neni zdaleka jedinou a dokonce ani nejdulezitejsi metrikou pro posuzovani nejakeho frameworku?
    XCHAOS
    XCHAOS --- ---
    DAVIDOWITCH: no tak pro začátek: existují sice rozumné systémové knihovny pro psaní webových aplikací - ale každá má úplně jiný přístup, jinou syntax...

    i kdybych v tom svém frameworku nakonec neudělal nic jiného, než to for_each() makro pro různé primitivní iterovatelné datové typy (SQL dotaz, soubor, CURL request, string, pole, apod.), tak je to obrovský krok dopředu. (a troufám si říct... zejména pro začátečníky...)
    Kliknutím sem můžete změnit nastavení reklam