Po 9 týdnech vývoje od vydání Linuxu 7.2 oznámil Linus Torvalds vydání Linuxu 7.3. Podrobný přehled novinek a vylepšení na Linux Kernel Newbies nebo LWN.net: první a druhá polovina začleňovacího okna.
Memtest86+ (Wikipedie), svobodný nástroj pro kontrolu operační paměti, byl vydán ve verzi 9.00. S podporou architektury AArch64 (ARM64).
Společnost Fairphone stojící za stejnojmennými mobilními telefony představila (pdf) bezdrátová špuntová sluchátka Fairbuds 2. Opravitelná, s vyměnitelnými bateriemi a tříletou zárukou. Cena 119 eur.
O víkendu 17. a 18. října lze na brněnském výstavišti navštívit s jednou vstupenkou dvě akce: Maker Faire Brno, festival inovací, kreativity a kutilství, a GameDev Connect, akci určenou pro všechny současné a hlavně budoucí herní vývojáře.
Canonical vydal (email) Ubuntu 26.10 Stonking Stingray. Přehled novinek v poznámkách k vydání. Jedná se o průběžné vydání s podporou 9 měsíců, tj. do července 2027.
České Radiokomunikace (CRA) ve čtvrtek odstřelily rozhlasový vysílač Liblice B, dosud nejvyšší stavbu v Česku. O demolici dvou 355 metrů vysokých stožárů rozhodly z důvodu jejich nevyužívání, už v úterý přitom zhasly a demontovaly jejich osvětlení.
Microsoft Defender nově podporuje linuxové desktopy.
Zrovna kompiluji nejnovější GNOME ze zdrojáků. A trvá to a trvá. Možná je to i tím, že ten instalační skript mi chce ukázat, o kolik se zpomalí Firefox, když bude renderován přes Cairo, a tak ho taky překládá. Ale to je jedno.
Proto se trochu bojím Gentoo - jsem zvyklý, že KDE na svém Debianu nainstaluji ze školního repozitáře za dvě minuty, žádé hodinové kompilace. Ale to je taky jedno, třeba ho někdy risknu.
Hlavní rozdíl mezi C a Pascalem totiž není v kráse a podobných malichernostech. Hlavní rozdíl je v gramatice jazyka. Pascal má gramatiku třídy LL(k) (z hlavy detaily nevím, ale pascaloidní Ada je dokonce LL(1) - pro každý další krok syntaktické analýzy stačí jeden symbol ze zdrojového textu), kdežto Céčko je třídy LR (z hlavy detaily opět neznám, ale pro syntaktickou analýzu se musí dělat celkem složité šaškárny na zásobníku symbolů, rozhodně nestačí jeden symbol). Důsledek je ten, že překladače Pascalu pracují řádově (řádově!) rychleji. Kdo někdy vážněji pracoval s Delphi, ví, že tamějším překladačem Object Pascalu prolítnou miliony řádků zdrojového kódu jako namydlený blesk. Linuxové jádro přeložené za 15 sekund, X.org za 20
. Céčko je ještě zpomalené děsným #include, které Ahoj světe "natáhne" možná na tisíce řádek kódu a které způsobuje, že linker musí být komplikovanější.
Mnozí teď možná namítnou, že v Pascalu přece není možné napsat jádro OS a že by to už nemohl být Unix. Já si ale pamatuji Turbo Pacal, kde šly dělat zcela stejné low-levelové opičárny jako v sesterském Turbo C. Jiní zase namítnou, že pascalské programy jsou pomalé. Co si pamatuji, tak programy v Delphi nebo TP nikdy s rychlostí problémy neměly. Navíc nejrychlejší programy nejsou v Céčku, ale ve Fortranu
Navíc já vůbec netrvám na tom Pascalu, já jen chci, aby tehdy před více než třiceti lety Kernighan a Ritchie zabalili svá "makra do assembleru" do něčeho, co se rychle překládá.
Jak by to asi změnilo softwarový průmysl? Nic by se nemuselo překládat přes noc. Kompilace při instalaci by byla mnohem běžnější. Zrychlilo a zlevnilo by to vývoj.
Tiskni
Sdílej:
Silná typová kontrola psaní věcí jako jádra OS dost kompilkuje.A věcí jako GNOME taky? :)
Můžeš jmenovat nějaký běžně používaný silně a zároveň dynamicky typovaný jazyk?Lisp.
V čem to měli napsat, aby dosáhli: 1. stejné přenositelnosti, 2. stejné snadnosti psát bindingy pro všechny možné jazyky.V čemkoli, k čemu je k disposici překladač, který dovolí splnit obě zmíněné podmínky. To by, troufám si tvrdit, mohly být (skoro) všechny jazyky, k nimž existuje překladač v rámci projektu GCC -- generátor cílového kódu je totiž jeden a týž. Ale to je jenom bohapustá teorie, klidně si ji nechám vyvrátit někým, kdo už něco takového vyzkoušel a nepochodil. Holt věčně zelený strom života... nejhorší na Céčku není to, že je tak strašné, ale že je tak rozšířené :)
).
A má teorie, že překladač jazyka s "náročnější" gramatikou je pomalejší, snad není až tak naivní.
Kdysi jsme o tom mocně diskutovali na konferencích cecko@pandora.cz a os@pandora.cz. Ty rozdíly jsou natolik obludné, že jediné pro mne přijatelné vysvětlení je dáno matematickou podstatou (složitostí).
$ strace -ff fpc z.pas 2>&1 | grep -c execve 3 $ strace -ff gcc -o z z.c 2>&1 | grep -c execve 13
Tak proč je potom C tak pomalé, když je parsování jen malá část?Optimalizátory. Někdo vymyslel, že Céčko bude nejrychlejší jazyk a hordy matematiků a programátorů se předhánějí v počtu optimalizačních průchodů Céčkových překladačů :) A pak pochopitelně #include :)
.
gcc -S. Bez optimalizací obsahuje oproti C dost málo (je nejspíš algoritimicky převeditelný zpět na preprocesovaný zdroják v C), s optimalizacemi obsahuje informaci z kompilátoru, což je aditivní konstanta.
[*] I tak platí, že délka minimálních implementací algoritmů v různých (stejně sliných) jazycích se liší jen multiplikativní konstantou. A u reálných jazyků jsou ty ukecanější kompresibilnější.
Uvede nekdo priklad jak by vypadal zdrojak ?
Jsem dosti zvedavy.