Eric Lengyel dobrovolně uvolnil jako volné dílo svůj patentovaný algoritmus Slug. Algoritmus vykresluje text a vektorovou grafiku na GPU přímo z dat Bézierových křivek, aniž by využíval texturové mapy obsahující jakékoli předem vypočítané nebo uložené obrázky a počítá přesné pokrytí pro ostré a škálovatelné zobrazení písma, referenční ukázka implementace v HLSL shaderech je na GitHubu. Slug je volným dílem od 17. března letošního
… více »Sashiko (GitHub) je open source automatizovaný systém pro revizi kódu linuxového jádra. Monitoruje veřejné mailing listy a hodnotí navrhované změny pomocí umělé inteligence. Výpočetní zdroje a LLM tokeny poskytuje Google.
Cambalache, tj. RAD (rapid application development) nástroj pro GTK 4 a GTK 3, dospěl po pěti letech vývoje do verze 1.0. Instalovat jej lze i z Flathubu.
KiCad (Wikipedie), sada svobodných softwarových nástrojů pro počítačový návrh elektronických zařízení (EDA), byl vydán v nové major verzi 10.0.0 (𝕏). Přehled novinek v příspěvku na blogu.
Letošní Turingovou cenu (2025 ACM A.M. Turing Award, Nobelova cena informatiky) získali Charles H. Bennett a Gilles Brassard za základní přínosy do oboru kvantové informatiky, které převrátily pojetí bezpečné neprolomitelné komunikace a výpočetní techniky. Jejich protokol BB84 z roku 1984 umožnil fyzikálně zaručený bezpečný přenos šifrovacích klíčů, zatímco jejich práce o kvantové teleportaci položila teoretické základy pro budoucí kvantový internet. Jejich práce spojila fyziku s informatikou a ovlivnila celou generaci vědců.
Firefox 149 dostupný od 24. března přinese bezplatnou vestavěnou VPN s 50 GB přenesených dat měsíčně (s CZ a SK se zatím nepočítá) a zobrazení dvou webových stránek vedle sebe v jednom panelu (split view). Firefox Labs 149 umožní přidat poznámky k panelům (tab notes, videoukázka).
Byla vydána nová stabilní verze 7.9 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 146. Přehled novinek i s náhledy v příspěvku na blogu.
Dle plánu byla vydána Opera GX pro Linux. Ke stažení je .deb i .rpm. V plánu je flatpak. Opera GX je webový prohlížeč zaměřený na hráče počítačových her.
GNUnet (Wikipedie) byl vydán v nové major verzi 0.27.0. Jedná se o framework pro decentralizované peer-to-peer síťování, na kterém je postavena řada aplikací.
Byly publikovány informace (technické detaily) o bezpečnostním problému Snapu. Jedná se o CVE-2026-3888. Neprivilegovaný lokální uživatel může s využitím snap-confine a systemd-tmpfiles získat práva roota.
void sum(int x, int y, int& z)
{
z = x + y;
}
This is a real example taken from an introductory programming book (!), the code is meant to illustrate passing arguments by reference. In practice one would certainly pass the sum back using the function return value. Passing arguments by reference would be better illustrated by something like this:
bool read_data(int& data)
{
if (everything_goes_fine())
{
data = …;
return true;
}
else
return false;
}
This is also a bit contrived: Would you call a function read_data? Would you signal success by returning true? Shouldn’t this better be solved by using a pointer? I am not a C++ programmer and made this sample up on the spot without context, so that I cannot answer these questions right now. But it would certainly be better if the autor could illustrate passing by reference using some example that can’t be solved simply using the function return value. Do not cheat the readers, do not pretend that a problem is harder than it really is.
Another example of what not to do, again from a real programming book:
#include <iostream>
using namespace std;
int main(void)
{
int x = 0;
while (x++ < 5)
{
int y = 0;
while (y++ < 5)
cout << "X";
cout << "\n";
}
return 0;
}
This is a while loop misused as a for loop. Of course you can reason that the author simply wishes to illustrate a point, like passing arguments or comparing two cycles. I think that contrived, unreal examples are bad in programming books, especially if not explicitly marked as such.
Just as a beginning speaker of a natural language often cannot detect irony, beginning programmer cannot tell “real code” from the “sample code”. Autors sometimes remark that the code sample is only meant as an example and would be written otherwise in practice. This is almost always just an excuse. Of course, writing production-grade code is not always possible in the book, but does it really make sense to write a book full of code that nobody would write in practice?
Tiskni
Sdílej:
olsó í glaub ned, dasse Sinn mocht, hier Beitróg ina Frendspróch zu póste.
Das war Schwäbisch.
Ich auch šprice dojč! :)
je mozne (podle toho šprice) , ze jste se ucil nemcinu od nejakeho polaka?
Nebo od někoho z východní části naší republiky. Jak jsem četl "šprice", znělo mi to jako "piče"...
heh, pri cteni nahlas mi to zni dost jako svycarska nemcina:)
ten dojem je spravny, co vim, tak obyvatele jizniho badenska-wuerttemberska jsou jedini Nemci, kteri svycarum rozumi, neb obe jazykove skupiny hovori stejne hroznou hatmatilkou ...
A co Tirolaci? Podle me mluvi taky dost podobne.
co? a pro oba je to rodna rec? clovek kterej mluvi nemecky nerozumi jinymu cloveku kterej mluvi taky nemecky?! kam jsme se to dostali ...
nerekl bych ze si american s britem/australanem/indem/JARanem nepokecaj ...
slo mi o to jestli ty jazyky jsou od sebe opravdu tak daleko ze si nerozumi ...
v nemecke televizi jsem videl svycarske zpravy, jsou povetsinou z titulky, jinak tomu skutecne vetsina Nemcu nerozumi, znam jednoho Svycara z Basileje a je to tak, ze se musi skutecne silne koncentrovat, kdyz chce mluvit spisovnou nemcinou. Nekteri starsi svycari to pry ale nedokazou vubec. Jina vec je, ze samozrejme nemecky svycar rozumi spisovne nemcine.
英語を読むことができない
presne taky muj nazor.
Je to copy-paste z translatora, takze to moze byt zle.
Malo by to byt spravne:
eigo o yomu koto ga dekinai - nemozem citat Anglictinu
Co tam je gramaticky zle?
Niektore znaky sa prepisuju roznymi sposobmi. Doslovny preklad tej vety je: Nemozem robit citanie Anglictiny.
slusne
+1
]
Zdá se to jenom mně, že v příkladech chybí dereference pointeru? Tedy *z = x + y, případně *data ... .
#include <iostream>
using namespace std;
void change(int& what)
{
what = 42;
}
int main()
{
int foo = 0;
change(foo);
cout << foo << endl; // 42
return 0;
}
Jinak díky za první příspěvek v tématu
Například SICP hloupými příklady netrpí ani v nejmenšímSICP jsem četl a je to úžasná knížka. Klíčový je ovšem použitý jazyk: v C++ by podobné příklady měly několikanásobnou délku, a to bych nechtěl vidět pátou kapitolu. Když jsme ovšem u toho: můžete doporučit nějakou opravdu kvalitní učebnici C++? Český jazyk vítán
V poslední době uvažuju nad takovým cvičením, na které se právě hodí nějaký nižší jazyk. Nejradši bych se u toho aspoň trochu naučil C++, i když D vypadá taky super
Vyborna knizka je www.amazon.com/Modern-Design-Programming-Patterns-Depth/dp/0201704315, jeji ceskej preklad je bohuzel dost tragickej. Vsechny odborny terminy jsou - nekdy i dost nasilne - prelozeny do cestiny, ale na druhou stranu maji vety casto anglicky slovosled.
Českej překlad nasazuje všemu korunu. Origianál je lepší. I když je potřeba používat slovník člověk se alespoň naučí klíčová slova pro google.
int read_data(int& data, int velikost_dat)
{
int readed = 0;
for(; readed < velikost_dat ; readed++)
if ( chyba ) return -2;
else ...
return readed;
}
a máme příklad který se používá a je se smysluplnou návratovou hodnotou (o triku int vs char a EOF bych zatim treba pomlcel). Takže proč vymýšlejí autoři ptákárny a nedávají příklady ze STL?
My grammar is gooder...
Je potřeba z Angličtiny odstranit některé zastaralé výrazy. Mladý brit pohledá v Googlu a bude si myslet že je to správně. Pak bude angličtina jednoduší pro celý svět.