Americký výrobce čipů Intel propustí 15 procent zaměstnanců (en), do konce roku by jich v podniku mělo pracovat zhruba 75.000. Firma se potýká s výrobními problémy a opouští také miliardový plán na výstavbu továrny v Německu a Polsku.
MDN (Wikipedie), dnes MDN Web Docs, původně Mozilla Developer Network, slaví 20 let. V říjnu 2004 byl ukončen provoz serveru Netscape DevEdge, který byl hlavním zdrojem dokumentace k webovým prohlížečům Netscape a k webovým technologiím obecně. Mozille se po jednáních s AOL povedlo dokumenty z Netscape DevEdge zachránit a 23. července 2005 byl spuštěn MDC (Mozilla Developer Center). Ten byl v roce 2010 přejmenován na MDN.
Wayback byl vydán ve verzi 0.1. Wayback je "tak akorát Waylandu, aby fungoval Xwayland". Jedná se o kompatibilní vrstvu umožňující běh plnohodnotných X11 desktopových prostředí s využitím komponent z Waylandu. Cílem je nakonec nahradit klasický server X.Org, a tím snížit zátěž údržby aplikací X11.
Byla vydána nová verze 6.18 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Nově se lze k síti Tor připojit pomocí mostu WebTunnel. Tor Browser byl povýšen na verzi 14.5.5. Thunderbird na verzi 128.12.0. Další změny v příslušném seznamu.
Meta představila prototyp náramku, který snímá elektrickou aktivity svalů (povrchová elektromyografie, EMG) a umožňuje jemnými gesty ruky a prstů ovládat počítač nebo různá zařízení. Získané datové sady emg2qwerty a emg2pose jsou open source.
Byla vydána (𝕏) nová verze 25.7 open source firewallové a routovací platformy OPNsense (Wikipedie). Jedná se o fork pfSense postavený na FreeBSD. Kódový název OPNsense 25.7 je Visionary Viper. Přehled novinek v příspěvku na fóru.
Před 40 lety, 23. července 1985, společnost Commodore představila první počítač Amiga. Jednalo se o počítač "Amiga od Commodore", jenž byl později pojmenován Amiga 1000. Mělo se jednat o přímou konkurenci počítače Apple Macintosh uvedeného na trh v lednu 1984.
T‑Mobile USA ve spolupráci se Starlinkem spustil službu T-Satellite. Uživatelé služby mohou v odlehlých oblastech bez mobilního signálu aktuálně využívat satelitní síť s více než 650 satelity pro posílání a příjem zpráv, sdílení polohy, posílání zpráv na 911 a příjem upozornění, posílání obrázků a krátkých hlasových zpráv pomocí aplikace Zprávy Google. V plánu jsou také satelitní data.
Společnost Proxmox Server Solutions stojící za virtualizační platformou Proxmox Virtual Environment věnovala 10 000 eur nadaci The Perl and Raku Foundation (TPRF).
Byla vydána nová verze 2.4.65 svobodného multiplatformního webového serveru Apache (httpd). Řešena je bezpečnostní chyba CVE-2025-54090.
(!R)@&{&/x!/:2_!x}'!R
Ray tracer se vejde na 7 řádků: http://www.nsl.com/k/ray/raya.k.
Wow, taky moc pekne, ale popravde na psani webovych aplikaci bych to asi nepouzival, ackoliv na nejake podulohy by se to hodilo.
O tom jak si napsat vlastní obalení okolo C knihovny bude možná, některý z mých dalších zápisků.O tom už jsem trochu napsal na czwiki4d.
to ja se spis rozepisu o tom jak predelat .h do .d
Z linuxové sekce jsem pochopil, že se k D programu linkuje statická knihovna. To není, po čem by příčetný vývojář toužil. Co dynamické knihovny?
A hlavně, co by se mi líbilo, by byl opačný postup, kdy v D napíšu knihovnu a tu pak linkuji k jiné céčkové aplikaci. To je totiž problém všech (snad až na objective C) vysokoúrovňových jazyků, že co v nich napíšete, zůstává zakleto pro daný jazyk. Například java má tohle standardizované (JNI), ale použití je značně kostrbaté a osobně mám pocit, že efektivita přenosu dat a volání mezi oběma systémy je bídná.
no me tusim zde funguje linkovani i dynamickejch a to jak ldc, gdctak dmd
JJ, me slo spis o to ze to jde jak v dmd tak i ldc, gdc sice jde alejen nekdy a nejak to blbne
To je totiž problém všech (snad až na objective C) vysokoúrovňových jazyků, že co v nich napíšete, zůstává zakleto pro daný jazyk.Například v Haskellu to jde.
Nevíte jak se to chová, když výsledek výpočtu v haskelu se nevejde céčkového intu?Nastane přetečení. Zde je zdrojový kód odkazovaného příkladu (k funkcím
fromIntegral
jsem doplnil typy):
fibonacci :: Int -> Int fibonacci n = fibs !! n where fibs = 0 : 1 : zipWith (+) fibs (tail fibs) fibonacci_hs :: CInt -> CInt -- S typy: -- fibonacci_hs = (fromIntegral :: Int -> CInt) . fibonacci . (fromIntegral :: CInt -> Int) fibonacci_hs = fromIntegral . fibonacci . fromIntegral foreign export ccall fibonacci_hs :: CInt -> CIntV příkladu pravý
fromIntegral
převede hodnotu typu CInt
na Int
a v případě, že by rozsah CInt
byl větší než rozsah Int
(norma Haskellu garantuje minimální rozsah typu Int
30 bitů), tak číslo přeteče. Levý fromIntegral
provádí převod opačným směrem, a opět hodnota může přetéct.
CInt
je typ Haskellu, jenž umí reprezentovat všechny hodnoty typu int
z C.
Ach ta ma cestina, ma tam samozrejme byt tvrde y. jinak tuto vetu jsm nenapal nejstastneji. Chtel jsem proste rict, ze s hlavickovymi soubory je to proste obcas zazitek, protoze narozdil od modulu se jedna o prime vlozeni souboru,kdezto u modulu v jazyce D se jedna jen o exportovani symbolu. Jinak k tomu poradi pokud prvne vlozim soubor kterej ocekava treba nejakej typ a az nasledne soubor kde je danej typ definovan tak se dostanu do potizi.
#ifdef
Ano toto makro samozrejme znam, ale neni to vse spasne a hlavne to resi jen problem ze se nenainkluduje soubor vicekrat a nefunguje to uplne vzdy dobre, uz jsem zazil situace kdy se mi to stejne vlozilo vickrat.
#pragma once
!
Vsak co vim tak python je na tom dost podobne co se typovani tyce jako D, pokud promenou pouziji jako int tak uz je stale int ne? Sice se ta typy neuvadeji ale to je tak vse
auto
jako specifikátoru typu, při kterém si ho kompilátor sám odvodí datový typ podle použití, což ovšem opět neumožňuje použití jedné proměnné na cokoliv. V phobosu je typ variant, který tak použít jde.
Na druhou stranu, mě statické typování v D vyhovuje do té míry, že ho používám často radši než python :)
Opravdu nemusi, aha tak to jsem to nekde spatne cetl :), ja stejne vzdy i v pythonu, PHP atd zachovaval to ze jedna promena vzdy reprezentuje stale ten stejny typ
JJ, ono kdyz pak clovek prepisuje po nekom kod a promena title na zacatku obsahuje nejaky retezec, uprostred je to pole a nakonec kdyz se dostane az k return title, tak zjisti ze to vraci cislo :D
Kód mimo funkcí v IO monádách je s drobnými omezeními verifikovatelný (např. Zeno). No a pak je tu ještě Agda nebo Coq
U silně staticky typovaných jazyků jako např. haskell (98 i 2010) je uvedený příklad (řetězec -> pole/seznam -> číslo) neproveditelný.Technicky vzato mohu napsat
coerce = coercea přetypovat cokoliv na cokoliv. Další nepříjemností Haskellu je, že nemá induktivní typy, takže není možné použít matematickou indukci.
coerce = coerce
lze "přetypovat" jen jednou a to buď explicitním uvedením signatury nebo typovou inferencí, tzn. v celém programu má jedinečný typ. Tedy AFAIK, stále se haskell teprve učím.
Haskell nemá induktivní typy ? Např. Maybe Int nebo String nejsou ?
coerce :: forall a. a
– všimněte si toho kvantifikátoru – za a
mohu dosadit cokoliv.
Hodnoty induktivně definovaného typu vzniknou konečnou aplikací "zobecněných nul" (u seznamu Nil
) a "zobecněných následníků" (u seznamu Cons
). Jenže například repeat 'c'
je hodnota typu String
resp. [Char]
, která vznikla nekonečnou aplikací.
inf = S inf
):
data Peano = O | S Peano
Napisete program, provedete experiment (spustite ho na nejakych datech), a prekladac doplni typy na zaklade vysledku experimentu.Jak se ale zajistí, že odvozené typy budou správné i pro jiné běhy? Podobnou věc mohu udělat abstraktní interpretací.
Základní výhodou je pro mě syntaxe velmi podobná C/C++Tohle moc nechapu, a nechapal jsem to ani u Javy nebo C#, a vlastne retrospektivne ani u C++ (vuci C). Prijde mi to jako takova vejicka na uzivatele - pojdte sem, mame skoro stejnou syntax! Ale ve skutecnosti se v tech jazycich programuje jinak a maji zcela jine zakladni knihovny. Syntax je jen mala cast toho, co musite znat. A ten rozdil se zvetsuje s tim, jak se jazyky vyviji. Jelikoz D je (doufam) jeste stale ve vyvoji, je to trochu podfuk, ne?
Ano Qt ma i port pro D jmenuje se QtD
Ale popravde jsme to nestestoval jak moc je to funkcni a i vyvoj se zda ze je momentalne pomalej, pokud jsme se dival tak 10 mesicu na to nikdo nechytl, ale duvodem muze byt ze proste nebylo treba :)
JJ vala vypada moc pekne, treba se k ni taky nekdy dostanu, ale zatim jsem jenom u D a V je prece jen jeste daleko :D
Tiskni
Sdílej: