Apple na své vývojářské konferenci WWDC24 (Worldwide Developers Conference, keynote) představil řadu novinek: svou umělou inteligenci pojmenovanou jednoduše Apple Intelligence, iOS 18, visionOS 2, macOS Sequoia, iPadOS 18, watchOS 11, …
Vyšla nová verze XMPP (Jabber) klienta Gajim, která přidává podporu reakcí pomocí emoji (XEP-0444: Message Reactions) a citace zpráv (XEP-0461: Message Replies). Přehled dalších vylepšení je k dispozici na oficiálních stránkách.
Po po téměř roce vývoje od vydání verze 5.38 byla vydána nová stabilní verze 5.40 programovacího jazyka Perl (Wikipedie). Do vývoje se zapojilo 75 vývojářů. Změněno bylo přibližně 160 tisíc řádků v 1 500 souborech. Přehled novinek a změn v podrobném seznamu.
Uroš Popović popisuje, jak si nastavit Linux na desce jako Raspberry Pi Zero, aby je šlo používat jako USB „flešku“.
Andreas Kling oznámil, že jelikož už se nevěnuje nezávislému operačnímu systému SerenityOS, ale výhradně jeho webovému prohlížeči Ladybird, přičemž vyvíjí primárně na Linuxu, SerenityOS opustí a Ladybird bude nově samostatný projekt (nový web, repozitář na GitHubu).
Po dvou měsících vývoje byla vydána nová verze 0.13.0 programovacího jazyka Zig (GitHub, Wikipedie). Přispělo 73 vývojářů. Přehled novinek v poznámkách k vydání.
Na čem aktuálně pracují vývojáři GNOME a KDE? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE.
Před 70 lety, 7. června 1954, ve věku 41 let, zemřel Alan Turing, britský matematik, logik, kryptoanalytik a zakladatel moderní informatiky.
NiceGUI umožňuje používat webový prohlížeč jako frontend pro kód v Pythonu. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.
Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána ve verzi 2024.6. Z novinek lze vypíchnout lepší integraci LLM (OpenAI, Google AI, Ollama) nebo podporu Matter 1.3.
Andrew Kelley, softwarový vývojář žijící v New Yorku, by se rád naplno věnoval svému koníčku, tj. vývoji open source programovacího jazyka Zig (GitHub). Rozhodl se proto opustit své dobře placené místo v OkCupid a zkusit se živit pouze z příspěvků na Patreonu. Potřeboval by měsíčně 3 tisíc dolarů. Aktuálně má přislíbeno měsíčně 649 dolarů. Vyjde mu to?
Tiskni Sdílej:
hrubá čistá superhrubá 65000 46900 122400 91300 65000 87100 48500 35500 65000(zaokrúhlené na celé stokoruny)
Neni spravne, aby kazdy tricetilety student bydlici u rodicu mel narok na stejnou peci jakou mam jaDoktorandi jsou povětšinou zaměstnanci univerzit a příjem univerzit AFAIK nepochází ryze ze státního rozpočtu, ale třeba i spolupráce se soukromým sektorem (u technických oborů obvzlášť).
Stejne tak, jako ty nechces jiste prispivat na mou peci.Plošná prevence je v důsledku efektivnější. Nejsem příznivcem ani epidemií, (nejen sociálních) důsledků nedostupnosti péče, potažmo bankrotů právě v případě potřeby péče.
Neni spravne, aby kazdy tricetilety student bydlici u rodicu mel narok na stejnou peci jakou mam ja - podnikatel odvadejici jako fyzicka osoba i prostrednictvim firem obrovske dane.Vzheldem k tomu, jak morálně pochybný je zdroj tvých příjmů (např. vyděračství, ke kterému jsi se tady před časem sám přiznal), pak má na tu péči spíš větší nárok Kolibáč než ty. Ty máš nárok na úplně jinou 'péči' Až se začneš živit poctivě, budeš mít možná nárok tady pérovat Kolibáče, ale takhle fakt ne. Nehledě k tomu, že tvé informace o jeho věku a životě jsou afaik nesprávné.
Ze zije v nejakych samotiskach u rodicu v podkroviNení mi jasný, v čem je problém, zejména od člověka, který prosazuje dědictví od předků.
chodi zarostlyTak u tohohle už vůbec nevim, v čem je problém
Hmm už se těším až půjde v rustu napsat kód pro MCU .Já moc nevidím důvod, proč by to nešlo. Rust umí jít hodně lowlevel a je možné v něm psát bez použití dynamické alokace paměti.
unsafe
pro přístup k hardware, otázka ale je, jestli to pak má cenu a o kolik to je lepší oproti C. Typicky ten benefit je až když můžeš používat Rust idiomaticky...
Nicméně ono se to zlepšuje, podpora přibývá...
Já rust osobně neznám, tak se právě ptám. To nemá vyšší overhead než céčko, když poskytuje vyšší ochranu před chybami typu přetečení pointeru?To záleží. Cíl toho jazyka je poskytovat bezpečnost a abstrakce bez většího overheadu (ideálně bez overheadu úplně), rozhodně nemá overhead, jaký mají třeba GC jazyky. Např. borrow-checker je záležitost statické analýzy, ten (sám o sobě) runtime overhead nemá žádný. Ale jinak například bounds-checking u datových struktur samozřejmě nějaký overhead má (nicméně ten bounds checking není povinný). Hlavně ale záleží, jak ten kód napíšeš (koneckonců, podobně jako v C/C++). Borrow-checker je sice bez overheadu sám o sobě, ale může tě nutit psát kód tak, že bude mít nějakou režii. Třeba ti nepovolí sdílet mutabilní referenci mezi vlákny, tak místo toho použiješ například reference-counted pointer + mutex, což má overhead. Typicky s tím overheadem ale můžeš něco udělat, když ti vadí. Např. bys mohl místo té reference použít raw pointer (což je jako pointer v C, reference borrow checker kontroluje, raw pointery ne) a k tomu použít
unsafe
, který je pro dereferenci raw pointeru potřeba a kde si celkově můžeš dělat co chceš. Anebo můžeš ten program navrhnout jinak a vyhnout se problému.
Podobně třeba když člověk píše nějaké zpracování v cyklech nebo iterátorech. Podle toho, jak to napíšeš, kompilátor je/není schopen vyoptimalizovat bounds checking například mimo cyklus.
Ten potenciál dosáhnout efektivity +/- jako C tam je...
Hezké na tom je, že tyto garance jsou bez runtime overheaduAno i ne Např. na úrovni standardní knihovny určitě ne. Viz třeba jak je naimplementován
Vec
- uvnitř používá unsafe
a aby zachoval invarianty safe kódu, vkládá bounds-checking.
Ono v podstatě ani není možné tohle udělat bez overheadu (resp. něco takového je AFAIK možné jen v jazycích, které mají dependent types).
Kompilátor je schopen do značné míry tyhle kontroly optimalizovat, ale dokonalé to není, viz třeba tady.
Další věc je, například, že Rust vždy definuje sémantiku integer overflow, což je důležité i pro paměťovou bezpečnost (pro korektnost pointerové aritmetiky), nicméně toto může znamenat performance overhead už i na úrovni jazyka - kompilátor nemá tolik volné ruce oproti C, kde např. signed overflow je undefined. Viz tohle povídání. (To už jsme ale v kategorii, kde pokud potřebuješ takhle husté optimalizace, stejně si musíš věci pořešit sám, benchmarkovat, koukat do generovaného kódu, etc...)
Při sekvenčním přístupu (např. pomocí iterátorů) bounds checking není potřebné dělat a dá se zcela vyoptimalizovat pryč.No, to opět záleží na okolnostech a na tom, jak je ten iterátor napsaný. Když bude napsaný blbě, bude se muset při každým průchodu smičkou kontrolovat, jestli už seš na konci. Což třeba u toho vektoru není nutný, že, takže je potřeba, aby měl iterátor implementováno
ExactSizeIterator
nebo jak se to jmenuje...
Co se týká integer overflow, tak ten Rust pokud vím kontroluje jen v debug buildu, v release buildu se integer overflow nekontroluje, alespoň to tak donedávna bylo. Ale je možné, že to změnili, až tak moc novinky v Rustu nesleduju.Je to stále tak, ale ono nejde o tu kontrolu, jde tam o to, že i v release mode, i když to nevyhazuje paniku při přetečení, stále má ten signed overflow dobře definované chování (iwe. wrap-around, ie. není to undefined behavior), takže kompilátor například nemůže předpokládat, že to číslo bude vždy kladné nebo větší než nějaká konstanta fň, což může předpokládat kopmilátor C, kde signed overflow je UB. V Rustu se to dá řešit např. použitím unsigned místo signed, pokud to jde...
defer
nebo korutiny (ačkoli syntax mají jinou). Templaty jsou podobné jako v C++/D (ducktyping). Taková trochu všehochuť.
Zajímavý mi přijdou ty metaprogramovací fíčury (comptime
et al.), to vypadá hezky, ale moc jsem na to nekoukal dopodrobna...
Teď koukám na examply a ono to má jakési třídy. Tak to už fakt nevím, co by to mělo být za jazyk.Vidím tam struktury syntakticky dost podobný těm v Rustu. Nevidim žádnou vtable-like abstrakci, tj. interface nebo tak něco...
China has very stringent anti-money-laundering laws that make it difficult to send money into the country.Jinak by stačilo použít bitcoin/paypal/bankovní převody apod.