Blíží se prázdniny a než se rozutečete k moři, je na čase se opět sejít na Virtuální Bastlírně - pravidelném setkání elektroniků, ajťáků, bastlířů a obecně nadšenců do techniky. Co si pro vás strahovští bastlíři připravili tentokrát? Určitě proberou blížící se Linux Days i další události. U softwaru se chvíli zdrží a poví si kupříkladu o tom, jak se zbavit Bambu Cloudu, ale nepřijít o možnost ovládat tiskárnu na dálku. Řeč dojde i na AI,
… více »Vývojáři postmarketOS vydali verzi 26.06 tohoto operačního systému pro chytré telefony vycházejícího z optimalizovaného a nakonfigurovaného Alpine Linuxu s vlastními balíčky. Přehled novinek v příspěvku na blogu. Na výběr jsou 4 uživatelská rozhraní: GNOME, KDE Plasma Mobile, Phosh a Sxmo.
Byla vydána nová verze 2.55.0 distribuovaného systému správy verzí Git. Přispělo 100 vývojářů, z toho 33 nových. Přehled novinek v příspěvku na blogu GitHubu a v poznámkách k vydání.
Craig Loewen na blogu Microsoftu oznámil veřejnou preview verzi WSL kontejnerů, tj. linuxových kontejnerů ve Windows Subsystem for Linux (WSL). Spouští se příkazem wslc.exe.
Byla vydána (𝕏, Bluesky) nová verze 2026.2 linuxové distribuce navržené pro digitální forenzní analýzu a penetrační testování Kali Linux (Wikipedie). Přehled novinek se seznamem 9 nových nástrojů v oficiálním oznámení na blogu.
Grafická aplikace Krokiet/Czkawka pro vyhledávání a odstraňovaní nepotřebných souborů (duplicitní soubory, prázdné složky, podobné obrázky, podobná videa, poškozené soubory a další) byla vydána ve verzi 12.0.0. Podrobný přehled novinek v příspěvku na Medium. Jedná se o poslední verzi frontendu Czkawka GTK nad Czkawka Core. Uživatelům se doporučuje migrovat na frontend Krokiet postavený nad frameworkem Slint. Představena byla aplikace Cedinia pro Android využívající Czkawka Core. Dostupná je jako APK pro ruční instalaci.
Po téměř třech letech od vydání verze 9 byla vydána nová verze 10 linuxové distribuce Mageia (Wikipedie). Přehled novinek v poznámkách k vydání.
Nourish (GitHub) je nový správce oken pro Linux. Tradiční plochy nahrazuje nekonečným plátnem a posouváním a přibližováním. Využívá vlastní kompozitor pro Wayland s názvem y5. Videoukázka.
Po 20 letech a 17 otevřených (open source) krátkých filmech Blender Studio oznámilo plán na svůj první celovečerní film. Cílem samozřejmě není jenom nový otevřený film, ale především vývoj a vylepšení otevřených nástrojů pro spolupráci napříč celým procesem a vytvoření otevřené příručky (playbook) pro filmovou produkci ve velkém měřítku s informacemi, které jsou obvykle dostupné pouze uvnitř komerčních studií, a pomoci tak nezávislým tvůrcům překonat technické a organizační bariéry.
Byla vydána nová verze 26.6.25 svobodného multiplatformního video editoru Shotcut (Wikipedie) postaveného nad multimediálním frameworkem MLT. Shotcut je vedle zdrojových kódů k dispozici také ve formátech AppImage, Flatpak a Snap.
int x(char *c) {} a int x(char c[]) {}?
gcc -S soubor.c. Tam by mělo být vidět, že je to stejné.
$ diff -u test1.s test2.s
--- test1.s 2010-10-23 20:01:04.090000164 +0200
+++ test2.s 2010-10-23 20:01:08.480000156 +0200
@@ -1,4 +1,4 @@
- .file "test1.c"
+ .file "test2.c"
.text
.globl main
.type main, @function
@@ -10,9 +10,7 @@
movq %rsp, %rbp
.cfi_offset 6, -16
.cfi_def_cfa_register 6
- leaq -16(%rbp), %rax
- addq $4, %rax
- movl $1, (%rax)
+ movl $1, -12(%rbp)
movl $0, %eax
leave
.cfi_def_cfa 7, 8
test1 používá *(pole+1)=1 a test2 používá pole[1]=1.
Ovšem jakmile povolím optimalizaci, alespoň -O1, tak to stejné je.
i[pole]=1.
pole[i] je ítý prvek pole, ne? Tak by měla znít definice. Že je to interně v implementaci převedeno na *(pole+i) by mělo být každému putna respektive do toho by nikomu nemělo být nic. A nezávisle na tom na co se to interně převede by němělo jít napsat i[pole] protože to je prostě sémantický nesmysl...
hranaté závorky jsou jen a pouze syntaktická zkratkaS tím souhlasím, i když je to zkratka jen pro indexování, nikoliv definice což je matoucí věc č.1 (
int[2][3] a int** není totéž; nelze napsat int 3[foo] místo int foo[3])
A matoucí věc č.2 je že syntaktická zkratka foo[3] nemusí a nemá mít za následek syntaktickou zkratku 3[foo].
Pan Occam by vědělCimrman taky... "spočítali jste padlé". V podstatě by se dalo říct, že škoda na uživatelích toho jazyka je neomezeně velká, protože tuhle pitomost se musí každý učit. Na druhou stranu je jen malé množství překladačů, kde by bylo třeba řešit aby to nebyla pitomost.
Naprostá většina uživatelů Céčka o tom nikdy nepřemýšlela a hranaté závorky nepoužila jiným než intuitivním způsobem.Což je docela dobrý důvod proč by tam ta další "feature" *neměla* být.
Kde jste vzal nějakou škodu?Já nikde... to byl Váš dotaz. Abychom nemluvili o dvou různých věcech - pro mne je zrovna *tahle* feature dost nezajímavá, respektive chápu důvody jejího vzniku. Spíš mě to štve jako instance neustále opakujícího se principu který jsem naznačil v 1. příspěvku.
Což je docela dobrý důvod proč by tam ta další "feature" *neměla* být.Ona to ale není další featura, nýbrž prostý důsledek definice.
Ty důsledky jsou triviální, pouze pohled, který jste si na ně zvolil Vy, je zbytečně složitý.Já si nemyslím, že by to bylo o složitosti, ale souhlasím, že máme dva různé úhly pohledu.
Mimochodem, definice libovolného turingovsky úplného programovacího jazyka má nepředstavitelně složité důsledky, počínaje třeba prostou existencí nevyčíslitelných problémů. Proti tomu jsou nějaké syntaktické a sémantické detaily naprosto irelevantní.Nemyslím si, že by míra složitosti měla být záminkou pro "držet hubu a krok"
Tiskni
Sdílej: