Po více než roce vývoje od vydání verze 5.40 byla vydána nová stabilní verze 5.42 programovacího jazyka Perl (Wikipedie). Do vývoje se zapojilo 64 vývojářů. Změněno bylo přibližně 280 tisíc řádků v 1 500 souborech. Přehled novinek a změn v podrobném seznamu.
Byla vydána nová stabilní verze 7.5 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 138. Přehled novinek i s náhledy v příspěvku na blogu.
Sniffnet je multiplatformní aplikace pro sledování internetového provozu. Ke stažení pro Windows, macOS i Linux. Jedná se o open source software. Zdrojové kódy v programovacím jazyce Rust jsou k dispozici na GitHubu. Vývoj je finančně podporován NLnet Foundation.
Byl vydán Debian Installer Trixie RC 2, tj. druhá RC verze instalátoru Debianu 13 s kódovým názvem Trixie.
Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za červen (YouTube).
Libreboot (Wikipedie) – svobodný firmware nahrazující proprietární BIOSy, distribuce Corebootu s pravidly pro proprietární bloby – byl vydán ve verzi 25.06 "Luminous Lemon". Přidána byla podpora desek Acer Q45T-AM a Dell Precision T1700 SFF a MT. Současně byl ve verzi 25.06 "Onerous Olive" vydán také Canoeboot, tj. fork Librebootu s ještě přísnějšími pravidly.
Licence GNU GPLv3 o víkendu oslavila 18 let. Oficiálně vyšla 29. června 2007. Při té příležitosti Richard E. Fontana a Bradley M. Kuhn restartovali, oživili a znovu spustili projekt Copyleft-Next s cílem prodiskutovat a navrhnout novou licenci.
Svobodný nemocniční informační systém GNU Health Hospital Information System (HIS) (Wikipedie) byl vydán ve verzi 5.0 (Mastodon).
Open source mapová a navigační aplikace OsmAnd (OpenStreetMap Automated Navigation Directions, Wikipedie, GitHub) oslavila 15 let.
Vývojář Spytihněv, autor počítačové hry Hrot (Wikipedie, ProtonDB), pracuje na nové hře Brno Transit. Jedná se o příběhový psychologický horor o strojvedoucím v zácviku, uvězněném v nejzatuchlejším metru východně od všeho, na čem záleží. Vydání je plánováno na čtvrté čtvrtletí letošního roku.
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.
Tych prekladov je viac:
eigo wo/o yomenai
eigo wo/o yomemasen
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
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?
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.