HN Digest
Briefing personnel.

Edition quotidienne

Lire vite. Garder l'essentiel.

Les meilleurs longs formats de Hacker News, relus plus calmement.

6614 articles Page 249/662 Sans filtre

06:02

The first microcomputer: The transfluxor-powered Arma Micro Computer from 1962

L'ordinateur Arma, développé au début des années 1960 pour des applications spatiales, était un système compact d'environ 20 livres destiné à la navigation inertielle, au pilotage et au contrôle d'engins. Il utilisait une architecture série inhabituelle de 22 bits basée sur des composants discrets montés sur de petites plaquettes, ce qui réduisait le matériel mais limitait la vitesse malgré une horloge à 1 MHz. Sa mémoire employait des transfluxors à lecture non destructive pour éviter la corruption des programmes, et son jeu d'instructions comprenait des opérations avancées comme la multiplication, la division et la racine carrée. Conçu pour résister aux contraintes des missiles et des avions, il a évolué en une famille d'ordinateurs embarqués utilisés sur des navires, des avions tels que l'E-2C et le Concorde, et dans des systèmes d'inertie commerciaux comme le Litton LTN-51. L'histoire de ce système illustre que la notion de « microordinateur » dépend des définitions et témoigne de l'existence d'une industrie aérospatiale de petits ordinateurs souvent oubliée aujourd'hui.

06:02

Show HN: I made a Clojure-like language in Go, boots in 7ms

Il s'agit d'un compilateur bytecode et d'une machine virtuelle pour un dialecte de Clojure écrit en Go, conçus pour produire de petits exécutables autonomes et des applications WebAssembly. Le projet produit des binaires uniques (~10 Mo) et des pages HTML self-contained pour WASM, offre un démarrage rapide (~7 ms avec bytecode précompilé), une empreinte mémoire réduite et des bibliothèques intégrées comme core.async, HTTP, JSON, transit et pods Babashka. Il prend en charge l'interopérabilité avec Go (enregistrement de structs, conversions zéro-coût, canaux Go), l'exécution de pods Babashka pour accéder à l'écosystème existant, et peut être embarqué comme couche de scripting dans des applications Go. La compatibilité Clojure est étendue (95 % des assertions du clojure-test-suite passent), mais certaines fonctionnalités manquent ou divergent — pas de refs/STM, pas d'agents complets, pas de BigDecimal, littéraux taggés du reader non implémentés, et différences sur le comportement numérique, les regex et core.async. Les objectifs incluent une compatibilité idiomatique, la compilation AOT et WASM, un nREPL fonctionnel en WASM, et des outils pour REPL, compilation en bytecode, création de binaires autonomes et génération d'apps WASM.

06:02

Show HN: Rust but Lisp

Ce projet propose un frontend en s-expressions qui transpile du code Lisp-like directement en Rust sans runtime ni GC, en conservant la sémantique de Rust (ownership, emprunts, lifetimes, génériques, traits, etc.). L'objectif est d'explorer l'ajout des macros Lisp aux sémantiques de Rust plutôt que de fournir un compilateur de production, avec des limitations notées et des fonctionnalités manquantes prévues. Les macros sont des transformateurs d'expressions s-expression exécutés à la compilation et utilisent quasiquote, unquote et unquote-splicing pour faciliter les macros variadiques sans recourir à proc_macro. La syntaxe couvre structures, enums, impl, traits, closures, boucles, pattern matching, modules, visibilité, lifetimes et turbofish, et permet d'injecter du Rust brut pour les cas non couverts par le frontend. Le dépôt s'obtient sur GitHub et s'installe via cargo install --path ., avec des commandes fournies pour transpiler, compiler et exécuter des fichiers (.lisp → .rs → binaire).

06:02

The Serial TTL connector we deserve

De nombreux appareils embarqués exposent des broches UART (RX, TX, GND) accessibles via un adaptateur USB‑TTL pour le débogage bas niveau et la récupération. Laisser des fils Dupont branchés en permanence est peu fiable et dangereux car ils sont fragiles et peuvent réinjecter du courant dans les adaptateurs USB. L'auteur propose d'utiliser des connecteurs Julet (utilisés sur les vélos électriques) étanches M6/M8 comme solution robuste et disponible, avec un indice IP68 et une capacité de courant modeste. Il détaille une mise en œuvre pratique avec des pigtails pré‑câblés, des outils de sertissage, des colliers de serrage pour l'allégement de contrainte et une convention de couleurs/repères pour mapper RX/TX/GND et simplifier l'insertion des câbles. La solution est rétrocompatible grâce aux prises 3/5/6 broches et suppose des niveaux logiques à 3,3 V tout en recommandant d'utiliser des connecteurs distincts ou des adaptateurs de niveau pour d'autres tensions.

06:01

Zed Editor Theme-Builder

Le texte présente un composant React en TypeScript destiné à gérer la création et l'affichage de réunions, avec un formulaire, une liste et plusieurs états locaux. Le code définit des interfaces et types ainsi que des props et utilise des hooks comme useState, useRef, useEffect et useCallback pour orchestrer la logique métier. Des chaînes d'excuses prédéfinies sont utilisées pour l'interface et une logique simule la dégradation d'une jauge de "sanity" et la rotation d'excuses lors de la création de réunions. Le fichier contient plusieurs erreurs de syntaxe et de typage, notamment des noms de propriétés incohérents, des types mal assignés et des déclarations incomplètes qui empêchent la compilation. La routine de création de réunion construit un objet meeting et invoque des callbacks mais nécessite des corrections de noms, de types et de valeurs par défaut pour fonctionner correctement.

06:01

I'm writing a history of Visual Basic, Chapter 1 is up

L'auteur annonce une histoire longue de Visual Basic publiée sur son site, avec le chapitre 1 en ligne couvrant les origines de 1964 à 1992. Il explique qu'il privilégie la filiation et les personnes derrière le langage plutôt que les récits centrés sur Bill Gates ou l'analyse strictement technique. Le chapitre 1 comprend six articles traitant de Dartmouth BASIC, de la dynastie Microsoft BASIC, d'Alan Cooper et Tripod, du projet Thunder, de la communication de Microsoft et de la scission VB/Windows–VB/DOS. L'auteur précise qu'il n'entendra pas revenir en détail sur la direction de Microsoft sauf si nécessaire et qu'il souhaite mettre en lumière des acteurs moins connus comme Scott Ferguson et Greg Whitten. Le projet est structuré comme un "Book" sur le site avec des billets de blog complémentaires, un chapitre 2 sur les versions à venir, et l'initiative est motivée par l'expérience personnelle de l'auteur avec VB1.

06:01

I’ve banned query strings

L'auteur exprime son mécontentement envers l'ajout de paramètres de suivi aux URLs, en particulier lorsqu'ils modifient ses propres liens. Il préfère utiliser l'en-tête Referer pour obtenir des informations de provenance et estime que l'absence de cet en-tête est souvent volontaire. Il considère que les paramètres UTM et autres paramètres de suivi doivent être réservés au propriétaire du site et demande qu'on n'altère pas ses URLs. Il annonce une interdiction générale des chaînes de requête non autorisées sur son site et prévoit d'autoriser à l'avenir uniquement des paramètres connus si nécessaire. La règle est appliquée via sa configuration Caddyfile et il accepte de laisser échouer d'anciens usages éventuels de paramètres de cache-busting.

06:00

Internet Archive Switzerland

La fondation Internet Archive Switzerland a été créée à Saint-Gall comme organisation à but non lucratif indépendante pour poursuivre la mission d'accès universel à la connaissance. Ses premiers objectifs sont la préservation d'archives menacées à l'échelle mondiale et la collecte liée à la vague des intelligences artificielles génératives. Elle collabore avec l'École d'informatique de l'Université de Saint-Gall sur le projet Gen AI Archive dirigé par le Prof. Dr. Damian Borth afin de commencer à archiver des modèles d'IA. Le choix de Saint-Gall repose sur sa longue tradition d'archivage et son environnement académique, jugés propices à la création d'une organisation mémorielle du XXIe siècle. Internet Archive Switzerland rejoint d'autres entités similaires (Internet Archive, Internet Archive Canada et Internet Archive Europe) pour renforcer une bibliothèque numérique distribuée et résiliente et envisage des actions en lien avec une conférence de l'UNESCO prévue en novembre 2026 à Paris.