
Elixir v1.20.2 is a patch release with one enhancement and multiple bug fixes. The enhancement adds per-module type checking times to compiler profiling output. Bug fixes address binary comprehensions with size options, compiler error messages for quote/unquote in patterns and guards, restoration of a Kernel.put_elem/3 compiler optimization, and numerous type system fixes covering empty function types, bitstring patterns, map/optional key operations, list types, protocol implementations, and struct redefinition errors. Mix also receives fixes for unnecessary umbrella recompilation and dependency recompilation on compile-time environment changes.
Nguồn: https://elixirforum.com/t/elixir-v1-20-2-released/75750. 8sync News chỉ tóm tắt và dẫn link; bản quyền nội dung thuộc tác giả và nguồn gốc.

TypeScript 7.0 RC đã được phát hành với trình biên dịch (compiler) được viết lại bằng Go …
Một nhà phát triển hài hước kể lại hành trình khám phá các ngôn ngữ lập trình — từ LISP, COBOL, Perl, Python, Ruby, Java, JavaScript, Go đến Rust — ghi lại những đặc điểm kỳ quặc và khó chịu của từng ngôn ngữ trước khi tìm thấy sự hài lòng với Elixir và hệ sinh thái BEAM.
Làm việc với nhiều ngôn ngữ lập trình khác nhau giúp bạn hiểu rõ hơn về cách mỗi ngôn ngữ xử lý vấn đề, từ đó có thể chọn lựa và áp dụng hiệu quả hơn trong công việc thực tế.
Phoenix LiveView mounts twice on first page load — once for the static HTTP dead render and again when the WebSocket connects. The common fix of guarding data loads with connected?/1 avoids double queries but breaks SEO, link previews, and no-JS fallback by leaving the dead render empty. This post explains why the double mount exists, what connected?/1 actually costs, and introduces an experimental fork that parks the dead-render socket in a short-lived GenServer and redeems it on WebSocket connect — skipping the second mount entirely. The fork adds an on_connect/1 callback for connection-only side effects (subscriptions, timers, presence) and provides migration patterns for data loads, connect params, and real-time data. The upstream Phoenix team is working on a more complete 'adoptable LiveViews' solution (issue #3551), but this fork serves as an interim stopgap.

Developer Boisy Gene Pitre has created a BASIC09 front-end for LLVM called 'basic09c', capable of lexing and parsing BASIC09 code, building an AST, performing semantic checks, and emitting LLVM IR. BASIC09 is a structured BASIC dialect from the 1980s used on OS-9/6809 and Tandy Color Computer systems. The goal is to preserve and compile existing BASIC09 programs by targeting modern LLVM backends. However, LLVM developers Eli Friedman and Nikita Popov indicated the project won't be merged into the main LLVM codebase, suggesting it live as an independent project that links to LLVM as a library.
TypeScript 7.0 RC introduces a complete compiler rewrite in Go (codenamed 'Corsa'), delivering 5-9x faster build times and ~60-70% lower memory usage. The new compiler ships as a native binary (tsgo) installable via npm. Migration steps include installing @typescript/native, deleting stale .tsbuildinfo files, running tsgo --noEmit alongside tsc to compare diagnostics, updating tsconfig.json (removing preserveConstEnums), and adjusting build pipelines. Key limitations in the RC: no programmatic Compiler API (breaking ts-morph, custom transformers), incomplete --declarationMap support, and gaps in --build mode for complex multi-project setups. Teams with large codebases (500+ files) gain the most, but the RC should not gate production releases without a parallel tsc safety net.