abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 17:11 | Nová verze

    Byl vydán Nextcloud Hub 8. Představení novinek tohoto open source cloudového řešení také na YouTube. Vypíchnout lze Nextcloud AI Assistant 2.0.

    Ladislav Hagara | Komentářů: 10
    včera 13:33 | Nová verze

    Vyšlo Pharo 12.0, programovací jazyk a vývojové prostředí s řadou pokročilých vlastností. Krom tradiční nadílky oprav přináší nový systém správy ladících bodů, nový způsob definice tříd, prostor pro objekty, které nemusí procházet GC a mnoho dalšího.

    Pavel Křivánek | Komentářů: 9
    včera 04:55 | Zajímavý software

    Microsoft zveřejnil na GitHubu zdrojové kódy MS-DOSu 4.0 pod licencí MIT. Ve stejném repozitáři se nacházejí i před lety zveřejněné zdrojové k kódy MS-DOSu 1.25 a 2.0.

    Ladislav Hagara | Komentářů: 37
    25.4. 17:33 | Nová verze

    Canonical vydal (email, blog, YouTube) Ubuntu 24.04 LTS Noble Numbat. Přehled novinek v poznámkách k vydání a také příspěvcích na blogu: novinky v desktopu a novinky v bezpečnosti. Vydány byly také oficiální deriváty Edubuntu, Kubuntu, Lubuntu, Ubuntu Budgie, Ubuntu Cinnamon, Ubuntu Kylin, Ubuntu MATE, Ubuntu Studio, Ubuntu Unity a Xubuntu. Jedná se o 10. LTS verzi.

    Ladislav Hagara | Komentářů: 14
    25.4. 14:22 | Komunita

    Na YouTube je k dispozici videozáznam z včerejšího Czech Open Source Policy Forum 2024.

    Ladislav Hagara | Komentářů: 3
    25.4. 13:22 | Nová verze

    Fossil (Wikipedie) byl vydán ve verzi 2.24. Jedná se o distribuovaný systém správy verzí propojený se správou chyb, wiki stránek a blogů s integrovaným webovým rozhraním. Vše běží z jednoho jediného spustitelného souboru a uloženo je v SQLite databázi.

    Ladislav Hagara | Komentářů: 0
    25.4. 12:44 | Nová verze

    Byla vydána nová stabilní verze 6.7 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 124. Přehled novinek i s náhledy v příspěvku na blogu. Vypíchnout lze Spořič paměti (Memory Saver) automaticky hibernující karty, které nebyly nějakou dobu používány nebo vylepšené Odběry (Feed Reader).

    Ladislav Hagara | Komentářů: 0
    25.4. 04:55 | Nová verze

    OpenJS Foundation, oficiální projekt konsorcia Linux Foundation, oznámila vydání verze 22 otevřeného multiplatformního prostředí pro vývoj a běh síťových aplikací napsaných v JavaScriptu Node.js (Wikipedie). V říjnu se verze 22 stane novou aktivní LTS verzí. Podpora je plánována do dubna 2027.

    Ladislav Hagara | Komentářů: 0
    25.4. 04:22 | Nová verze

    Byla vydána verze 8.2 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a v informačním videu. Zdůrazněn je průvodce migrací hostů z VMware ESXi do Proxmoxu.

    Ladislav Hagara | Komentářů: 0
    25.4. 04:11 | Nová verze

    R (Wikipedie), programovací jazyk a prostředí určené pro statistickou analýzu dat a jejich grafické zobrazení, bylo vydáno ve verzi 4.4.0. Její kódové jméno je Puppy Cup.

    Ladislav Hagara | Komentářů: 0
    KDE Plasma 6
     (74%)
     (8%)
     (2%)
     (16%)
    Celkem 825 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník
    Štítky: není přiřazen žádný štítek


    Vložit další komentář
    Bystroushaak avatar 6.6.2015 20:45 Bystroushaak | skóre: 36 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Yapgen - parser generator
    Pěkné, dal jsem tučňáka.
    6.6.2015 23:43 Radek Miček | skóre: 23 | blog: radekm_blog
    Rozbalit Rozbalit vše Re: Yapgen - parser generator
    Samotný jazyk je popsán SLR(1) gramatikou, která je dostatečně silná pro popis obecného programovacího jazyka.
    To znamená odstranit konflikty z gramatiky? To není příliš pohodlné, ne?
    7.6.2015 02:47 Ivorne | blog: Ivorne
    Rozbalit Rozbalit vše Re: Yapgen - parser generator
    Já si ani nemyslím, že by LALR gramatiky byly z praktického hlediska o tolik silnější.
    7.6.2015 07:01 zuzanak | skóre: 10 | blog: zuzanak
    Rozbalit Rozbalit vše Re: Yapgen - parser generator

    Ano to je pravda je nutné vyřešit SLR(1) konflikty vznikající v rozkladové tabulce. SLR(1) gramatika byla zvolena jako dostačující pro řešení původní úlohy v rámci které program yapgen vznikl.

    Bedňa avatar 6.6.2015 23:49 Bedňa | skóre: 34 | blog: Žumpa | Horňany
    Rozbalit Rozbalit vše Re: Yapgen - parser generator
    Fajn len by potešil príklad z praxe.
    Od té doby jsem jej párkrát využil při implementaci úkolů se kterými jsem se setkal v praxi.
    KERNEL ULTRAS video channel >>>
    7.6.2015 09:21 zuzanak | skóre: 10 | blog: zuzanak
    Rozbalit Rozbalit vše Re: Yapgen - parser generator

    Rozšířil jsem zápisek o pár příkladů z praxe.

    Bedňa avatar 8.6.2015 23:13 Bedňa | skóre: 34 | blog: Žumpa | Horňany
    Rozbalit Rozbalit vše Re: Yapgen - parser generator
    Dík moc.
    KERNEL ULTRAS video channel >>>
    xkucf03 avatar 7.6.2015 12:18 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše C vs. C/C++

    BTW: když píšeš „C/C++“, co to znamená? Umí to generovat zdroják v obou jazycích nebo to generuje C, které se dá přeložit i kompilátorem pro C++?

    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    7.6.2015 15:14 zuzanak | skóre: 10 | blog: zuzanak
    Rozbalit Rozbalit vše Re: C vs. C/C++

    Třetí možnost je správně: generuje to zdrojový soubor pro kompilátor C++, kde z C++ jsou používány následující funkce, které nebyly součástí jazyka C: metody ve strukturách (třídách), reference, datový typ bool, výčtový typ, a možná některé další.

    Ale to není tak důležité, protože v případě potřeby je možné vygenerovat výsledný zdrojový soubor v libovolném jazyce (dostatečně silném). Tvrdá práce: generování DFA (Deterministický Konečný Automat) a LALR tabulky je již hotová a generování C/C++ souboru je v podstatě jen export algoritmů na těmito dvěma strukturami.

    Příklady vygenerovaných .cc souborů odpovídajících překladačům popsaným v kapitolce "Příklad tvorby překladače" je uveden na: 1, 2, 3.

    Uvedené soubory obsahují dvě základní funkce recognize_terminal a parser_parse_source_string, které dělají všechnu práci.

    7.6.2015 13:28 Odin1918 | skóre: 6 | blog: Valhalla
    Rozbalit Rozbalit vše Re: Yapgen - parser generator
    Je to OT, ale proc zmizel posledni Leosuv blog? Cenzura?
    xkucf03 avatar 7.6.2015 13:32 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Leošův zápisek

    To je mi dost divné. Sice nebyl nijak moc kvalitní, v podstatě o ničem, ale zápisky Miriam tu taky zůstávají (byť třeba ne na titulní stránce). A protože pod ním byly komentáře, nemohl ho běžný uživatel (jako autor) smazat. Leoš asi není běžný uživatel…

    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    Luboš Doležel (Doli) avatar 8.6.2015 16:48 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
    Rozbalit Rozbalit vše Re: Leošův zápisek
    Tuhle operaci může udělat jen uživatel root. Pokusím se zjistit, co se stalo.
    Luboš Doležel (Doli) avatar 8.6.2015 17:05 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
    Rozbalit Rozbalit vše Re: Leošův zápisek
    Bohužel jsem neviděl tu cache, ale podle logu mazání provedu uživatel číslo 1. Takže autor.
    7.6.2015 14:18 manasekp | skóre: 29 | blog: manasekp | Brno
    Rozbalit Rozbalit vše Re: Yapgen - parser generator
    Taky jsem si toho vsiml. V google cache to jeste je.
    BIOKOMP | Cas od casu se pokousim nekoho srazit k zemi abych se tam nevalel sam.
    Bystroushaak avatar 7.6.2015 14:43 Bystroushaak | skóre: 36 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Yapgen - parser generator
    xkucf03 avatar 7.6.2015 15:40 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše A sklep máte?

    Ad patička:

    Výhodná nabídka; Romantická kvelbená kóje v Kyjově (se záchodem!)

    To je včetně toho pozemku nad tím nebo to je cena jen za díru v zemi a ty cihly? Kupuješ? Podle kabelů to vypadá, že elektřina tam je. Šlo by tam udělat datacentrum a menší kancelář. Na zahradě by se postavil stožár a bylo by :-)

    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    Bystroushaak avatar 7.6.2015 18:01 Bystroushaak | skóre: 36 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: A sklep máte?
    Kupuješ?
    Spíš jsem chtěl morálně podpořit majitele v jeho originálně snaze prodat kvelbenou kóji.
    Petr Tomášek avatar 9.6.2015 10:54 Petr Tomášek | skóre: 39 | blog: Vejšplechty
    Rozbalit Rozbalit vše Re: Yapgen - parser generator
    ani to už ne...
    multicult.fm | monokultura je zlo | welcome refugees!
    8.6.2015 13:09 Jardík
    Rozbalit Rozbalit vše Re: Yapgen - parser generator
    Já bych dal nedostatečou, protože používáš "unsigned" tam, kde se hodí a je více správné použít "size_t". Např. na platformě, kde je numeric_limit<unsigned>::max() 0xffff a numeric_limit<size_t>::max() 0xffffffffffffffff, tak příliš omezuješ. Na platformě, kde je to zase naopak, zase "lžeš", protože tvrdíš, že dokážeš pracovat s něčím, co nejde naalokovat. (to, že takovou platformu neznáš, nebo že není, nikoho neomlouvá). Třeba na ČVUT v různých předmětech programování dávají nedostatečnou za jednu chybu běžně. A tohle chyba je. Ale nic si z toho nedělej, i často používané knihovny, jako je Qt, jsou plné chyb. Např. Qt tvrdí, že dokáže ze souboru do paměti načíst numeric_limit<int64_t>::max() bytů i na x86-32, přitom to neumí.
    Bystroushaak avatar 8.6.2015 13:26 Bystroushaak | skóre: 36 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Yapgen - parser generator
    A poslal jsi patch?

    Jak jde jinak život?
    8.6.2015 16:10 zuzanak | skóre: 10 | blog: zuzanak
    Rozbalit Rozbalit vše Re: Yapgen - parser generator

    Nepochybně máš pravdu, bohužel jsem si zvykl používat základní datové typy tak, že počítám s platností následujících tvrzení:

    sizeof(void *)        == sizeof(long unsigned)
    sizeof(int)           == 4
    sizeof(unsigned)      == 4
    sizeof(char)          == 1
    sizeof(long long int) == 8
    sizeof(float)         == 4
    sizeof(double)        == 8

    A až narazím na platformu, na které to nebude platit, tak si budu trhat vlasy a vzpomenu si na tebe.

    8.6.2015 23:38 Jardík
    Rozbalit Rozbalit vše Re: Yapgen - parser generator
    sizeof(void *) == sizeof(long unsigned)
    Tohle třeba neplatí na Windows, teda né že mi Windows není ukradenej, ale stejně. Pro nějaké takové prasárničky typu pointer na číslo existuje (u)intptr_t.
    sizeof(unsigned) == 4
    S tímhle nepochodíš na různých mikroprocesorech. Na těch "hloupých" typu atmega, to je např. 2.
    sizeof(char) == 1
    Tohle platí vždycky. Ať už má char 8 nebo 256 bitů, pořád to 1 byte, protože byte je totéž co char.
    vlastikroot avatar 8.6.2015 18:44 vlastikroot | skóre: 24 | blog: vlastikovo | Milevsko
    Rozbalit Rozbalit vše Re: Yapgen - parser generator

    Je neco spatnyho na tom, ze vubec nepouzivam size_t a vsechny velikosti mam pevne omezene napr. uint8_t nebo int64_t a naprosto ignoruju architekturu? Mam porad trochu problem s endianness, ale jinak se muzu spolehnout, ze bude kod fungovat vsude stejne (hlavne na 8bit AVR).

    Uplne jsem ale prestal pouzivat packed struktury, to je zlo.

    We will destroys the Christian's legion ... and the cross, will be inverted
    8.6.2015 23:46 Jardík
    Rozbalit Rozbalit vše Re: Yapgen - parser generator
    Pokud program běží na ne-POSIX systému či nějaké té zvláštní architektuře, tak tvé číselné typy nemusí existovat. Chceš-li zaručit kompatibilitu, měl bys použít (u)int_leastN_t typ (kde N je těch 8, 16, 32, 64), které musí existovat a zároveň jsou to nejmenší typy, které mohou nabývat požadovaných hodnot, mohou ale nabývat i více, takže je třeba maskovat některé bitové operace. Popř. jejich fast verze, které jsou "rychlé", ale nejsou nejmenší. Na platformách, kde např. existuje uint8_t bude uint_least8_t stejný typ jako uint8_t. Na POSIX systémech uint8_t existovat bude (protože ty vyžadují 8bit char).

    Ano, packed struktury jsou zlo. Proto je lepší rozvrhnout prvky od největšího po nejmenší, tak aby nevznikaly zbytečné paddingy. Taky je ale dobré u větších struktur uvažovat cacheline procesoru a nerozhazovat často používané prvky na různá místa a dělat kompromisy.
    Bedňa avatar 8.6.2015 23:54 Bedňa | skóre: 34 | blog: Žumpa | Horňany
    Rozbalit Rozbalit vše Re: Yapgen - parser generator
    Takže navrhuješ overovanie typov podľa architektúry, alebo pretekanie premenných podľa architektúry?
    KERNEL ULTRAS video channel >>>
    9.6.2015 00:24 Jardík
    Rozbalit Rozbalit vše Re: Yapgen - parser generator
    Proč? Potřebuju-li velikost něčeho co rvu do paměti, vím, že size_t pro to stačí. Potřebuju-li něco s nějakou minimální velikostí, použiju jeden z (u)int_leastN_t typů, pro ukládání bytů použiju char/unsigned char (popř. uint_least8_t, nebo dokonce uint8_t pokud jsem si 100% pokuď vyžaduju 8bit char a tento požadavek uvedu někde třeba v dokumentaci). A nebo použiju i ty základní typy, unsigned má garanci (2^16-1) a více, size_t taky, unsigned long long má garanci (2^64-1), atd, stačí si najít minimální rozsahy a použít typ, co se hodí nejvíce k danému účelu. Konstanty v limits.h (popř climits) lze použít i pro podmíněnou kompilaci, nevidím problém v tom je použít, k tomu přeci jsou.
    vlastikroot avatar 9.6.2015 18:26 vlastikroot | skóre: 24 | blog: vlastikovo | Milevsko
    Rozbalit Rozbalit vše Re: Yapgen - parser generator

    A co kdyz nemam vubec problem s minimalni velikosti, ale potrebuju presne urcite nasobky 8bitu? Napr. kdyz zpracovavam HW udaje a potrebuju 1:1 bitovou reprezentaci. Nebo treba kdyz rozebiram a skladam sitove pakety.

    Taky moc se mi nelibi, ze bych vsude psal uint_least32_t misto uint32_t, je to delsi zapis a neprinasi funkcionalitu ani prehlednost.

    We will destroys the Christian's legion ... and the cross, will be inverted
    10.6.2015 21:11 Jardík
    Rozbalit Rozbalit vše Re: Yapgen - parser generator
    A co kdyz nemam vubec problem s minimalni velikosti, ale potrebuju presne urcite nasobky 8bitu? Napr. kdyz zpracovavam HW udaje a potrebuju 1:1 bitovou reprezentaci. Nebo treba kdyz rozebiram a skladam sitove pakety.
    Na platformě, kde neexistuje 8bit typ toho nedocílíte a musíte použít typ větší (a třeba z něho použít jen 8 bitů, to je na vás) a na platformě, kde existuje, tak ho použijete. A když ho vyžadujete, tak není problém otestovat, jestli je nadefinováno nějaké UINTN_MAX makro a kydnout tam #error s vysvětlením proč a co, než nechat kompilaci selhat na nějaké chybě, která třeba nic neřekne potenciálnímu "kompilovači" vašeho kódu. A jestli se vám zdají jména dlouhé, tak použijte kratší, jazyk k tomu poskytuje prostředky (typedef, using).
    vlastikroot avatar 10.6.2015 21:42 vlastikroot | skóre: 24 | blog: vlastikovo | Milevsko
    Rozbalit Rozbalit vše Re: Yapgen - parser generator
    Na jake platforme neexistuje 8bit? Da se k takove realne dostat jako obycejny smrtelnik?
    We will destroys the Christian's legion ... and the cross, will be inverted
    Luboš Doležel (Doli) avatar 11.6.2015 13:31 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
    Rozbalit Rozbalit vše Re: Yapgen - parser generator
    Mám pocit, že tohle má jen 16bitový datový typ (je v tom nějaký Analog Devices DSP), takže i ASCII stringy mají 16 bitů na znak. Portoval jsem z toho kód na Android a bylo to někdy docela peklo.
    vlastikroot avatar 11.6.2015 17:45 vlastikroot | skóre: 24 | blog: vlastikovo | Milevsko
    Rozbalit Rozbalit vše Re: Yapgen - parser generator
    DSP bych do toho nepocital, to by me nikdy nenapadlo, ze by muj kod mohl bezet na DSP. Je urcen pouze pro MCU a CPU.
    We will destroys the Christian's legion ... and the cross, will be inverted
    11.6.2015 15:15 deda.jabko | skóre: 23 | blog: blog co se jmenuje "každý den jinak" | za new york city dvakrát doleva a pak už se doptáte
    Rozbalit Rozbalit vše Re: Yapgen - parser generator
    Na platformě, kde neexistuje 8bit typ toho nedocílíte a musíte použít typ větší (a třeba z něho použít jen 8 bitů, to je na vás) a na platformě, kde existuje, tak ho použijete.

    Toto je naprosto absurdni situace, ktera by mohla nastat v drevnich dobach pocitacu typu PDP-XY, kdy jeste nebyl byte obecne prijatou jednotkou pro ulozeni informace a velikost slova byla definovana moznostmi hardwaru.

    Napr. architektura SPARC nebo treba JVM pracuji interne s 32bitovyma hodnotama a jen pri praci s pameti vyuzivaji typy s mensim rozsahem... a nikomu to vetsi problemy necini, protoze prekladac se o to postara sam.
    Asi před rokem se dostali hackeři na servry Debianu a ukradli jim zdrojové kódy.
    11.6.2015 16:32 Jardík
    Rozbalit Rozbalit vše Re: Yapgen - parser generator
    Jde hlavně o překladač, ano. Klidně bych teď mohl napsat C kompilátor (kdybych měl čas), který na x86 bude mít 16bit char a váš kód tam pak klekne na obskurní chybě, protože je tu váš předpoklad, že máte 8bit char, který však nikde neuvedete a nikde ho nevynucujete, popř. neuvede jiný předpoklad, který ho implikuje (třeba POSIX).
    vlastikroot avatar 11.6.2015 17:38 vlastikroot | skóre: 24 | blog: vlastikovo | Milevsko
    Rozbalit Rozbalit vše Re: Yapgen - parser generator
    Na takovej kompilator se muzu vykaslat. U nekterych projektu kaslu i na ten microsofti.
    We will destroys the Christian's legion ... and the cross, will be inverted
    xkucf03 avatar 11.6.2015 20:50 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Yapgen - parser generator
    kdybych měl čas

    Čemu se teď vlastně věnuješ? Nechceš se někdy rozepsat v blogu?

    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    11.6.2015 22:08 Jardík
    Rozbalit Rozbalit vše Re: Yapgen - parser generator
    Věnuju se úvaze o důvodu mého bytí. Věnuju se opakováním, že nemám na nic čas, přitom vůbec nic nedělám. Momentálně to mám disassemblerovanou binárku jedný hry, skládám z toho zdrojový kód v C++. Pak tu překládám bytecode z lua skriptů zpět na skripty, který musí dát opět schodný bytecode. No a tímhle trávím celý den, a proto nemám na nic čas. Taky jsem potřeboval jít k doktorovi, protože mám zánět předkožky (asi mi to tam začíná hnít, protože neprovozuji pohlavní styk), ale nemám na něj. Takže si dvacetkrát denně omývám bimbase a doufám, že to zmizí. A když ne, tak mi asi upadne.
    11.6.2015 22:12 Jardík
    Rozbalit Rozbalit vše Re: Yapgen - parser generator
    A pořád uvažuji, co mám jít dělat. Pořád si nevím rady jak a kde si najít práci. Já se ani nemám jít kam podívat, na cestu daleko nemám a do tří hodin pěšky toho tu moc není (3+3 hodiny cesta, 8 hodin práce a 8 hodin spánek, 1 hodina snídaně a výprava do práce, 1 hodina mytí a příprava na spánek = 24hod).
    11.6.2015 22:14 Jardík
    Rozbalit Rozbalit vše Re: Yapgen - parser generator
    Jó a ještě mám pořád problém s tím varletem, to taky zlobí. A pak ještě začíná bolet ten zub, jak mám 2 roky vypadlou plombu.

    Založit nové vláknoNahoru

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

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.