Topics /
Programming Languages
The most popular blog posts about programming languages on Hacker News. 1,929 posts.
Interoperability: Swift’s Super Power
Open sourcing our learnings around Windows APIs, COM, C++ and their delightful integration into Swift - while building Arc.
Typed Python: new Mypy release
I just uploaded version 0.4 of mypy-lang to PyPI ! This release focuses on performance improvements, usability improvements and bug fixes....
Evolving the Go Standard Library with math/rand/v2
Go 1.22 adds math/rand/v2 and charts a course for the evolution of the Go standard library.
Grappling with Go
In a previous blog post, I observed that one of the medium-termpossibilities we’re seriously considering for NTPsec is moving theentire codebase out of...
Motoko, a programming language for building directly on the internet
To offer a seamless developer experience, we wanted to create a specialized programming language, called Motoko, that is designed to directly support the programming model of the Internet Computer, making it easier to efficiently build applications and take advantage of some of the more unusual features of this…
Futures for C++11 at Facebook
Visit the post for more.
Static Typing for Ruby: Adopting Sorbet at Scale
A look at how Shopify adopted static typing in it's core Ruby monolith by treating type checking like a product.
A Proposal for Type Syntax in JavaScript
Today we're excited to announce our support and collaboration on a new Stage 0 proposal to bring optional and erasable type syntax to JavaScript. Because
Zig 0.3.0 Released
Zig is an open-source programming language designed for robustness , optimality , and clarity . Zig is aggressively pursuing its goal of overthrowing C as the de facto language for system programming. Zig intends to be so practical that people find themselves using it even if they dislike it.
NimConf 2022 – Nim Online Conference
NimConf 2022 will take place on October 22nd.
Factor 0.100 Now Available
“Life can only be understood backwards; but it must be lived forwards.” — Kierkegaard
What Every C Programmer Should Know About Undefined Behavior #1/3
People occasionally ask why LLVM-compiled code sometimes generates SIGTRAP signals when the optimizer is turned on. After digging in, they find that Clang generated a "ud2" instruction (assuming X86 code) - the same as is generated by __builtin_trap().
Greedy Register Allocation in LLVM 3.0
LLVM has two new register allocators: Basic and Greedy. When LLVM 3.0 is released, the default optimizing register allocator will no longer be linear scan, but the new greedy register allocator.
Porting to GCC 14: C language issues
The GCC 14 release series differs from previous GCC releases in a number of ways . Some of these are a result of bug fixing, and some old behaviors have been intentionally changed to support new standards, or relaxed in standards-conforming ways to facilitate compilation or run-time performance.
Ruby in Twenty Minutes (2006)
## IntroductionThis is a small Ruby tutorial that should take no more than 20 minutesto complete. It makes the assumption that you already have Ruby installe...
HipHop VM: now at 98.5% PHP framework parity, 16% faster
On November 4th, the HHVM team went on a 3-week performance and parity lockdown. The lockdown officially ended on November 22nd. Overall, this lockdown was a...
Compiling Java into native binaries with Graal and Mill
One recent development is the ability to compile Java programs into self-contained native binaries. This provides more convenient single-file distributions, faster startup time, and lower memory footprint, at a cost of slower creation time and limitations around reflection and dynamic classloading. This article…
Clojure: Transducers
Transducers are composable algorithmic transformations. They are independent from the context of their input and output sources and specify only the essence of the transformation in terms of an individual element. Because transducers are decoupled from input or output sources, they can be used in many different…
Racket v8.3
_posted by John Clements_ Racket version 8.3 is now available from https://download.racket-lang.org. Racket removes syntax arming and disarming in favor of a simpler system of protected syntax operations, along with other updates to the syntax sys...
New GitHub Organization for the Swift Project
Today, we are announcing an exciting development for the Swift programming language: its migration to a dedicated GitHub organization at GitHub.com/swiftlang.
Racket v6.11
_posted by Vincent St-Amour_ Racket version 6.11 is now available from http://racket-lang.org/ A bug preventing OneDrive users on Windows 10 Fall Creators update from opening files has been fixed. Typed Racket supports refinement types and depe...
Rust programming for web developers, by a web developer
Learn to code with AI-powered tutorials from Codeamigo.
Gleam 0.16 compiles to JavaScript
News post: Gleam v0.16 released
Half My Life with Perl
I had never met Randal Schwartz before, but when I reached out to him about contributing to year 25 of the Perl Advent Calendar, he immediately agreed. This year I wanted to try some new things and Randal suggested giving a Perl-specific talk which he had given once before, but which was lacking in recording quality…