Topics /
Programming Languages
The most popular blog posts about programming languages on Hacker News. 1,929 posts.
Boeing Flies on 99% Ada
A discussion of how Boeing used Ada in its new 777 jet to run a complete fly-by-wire system that technicians backup and monitor with on-board floppy disks. The Ada Information Clearinghouse is the Ada Resource Association's official Web site on the Ada programming language and on software engineering.
Ruby Is Still a Diamond
Matz is nice and so we are nice. — Ruby Community Motto
C++20 coroutines: “The bug is in the C++ standard, not GCC.” (2020)
Anubis could not load its JavaScript. The server may be overloaded. Please reload the page to try again.
Final features of C++17
With last weeks C++ committee meeting in Oulu, C++17 is feature complete and on its way to become an international standard. After the last meeting in Jacksonville I had little hope to see big surprises, but Oulu managed to add a few important and interesting features to the new standard. There is a very good overview…
An introduction to metaprogramming in Ruby
Learn Ruby metaprogramming: call methods dynamically with send, define them at runtime with define_method, and handle missing calls with method_missing.
Sigils are underappreciated (2022)
Sigils have a bit of a bad reputation. According to their detractors, sigils are “just a way of encoding type information” in variable names – basically a glorified version of apps Hungarian notati…
Kotlin 1.1: What’s coming in the standard library
Java 9 preparations Java 9 is coming and brings Project Jigsaw to the table — the Java platform module system. One of the constraints it imposes is that no two modules can declare public API in the s
Microsoft Edge supports ES6 modules
Chakra, the recently open-sourced JavaScript engine that powers Microsoft Edge and Universal Windows applications, has been pushing the leading edge of ECMAScript language support. Most of ES2015 (aka ES6) language support is already available in Edge, and last week’s Windows Insider Preview build 14342 brings more…
Optimizing Ruby lazy initialization in TruffleRuby with deoptimization
Shopify's involvement with TruffleRuby began half a year ago, with the goal of furthering the success of the project and Ruby community. TruffleRuby is an alternative implementation of the Ruby language (where the reference implementation is CRuby, or MRI) developed by Oracle Labs. TruffleRuby has high potential in…
Tools for Learning LLVM TableGen
TableGen is a language used within the LLVM project for generating a variety of files, when manual maintenance would be very difficult. For example, it is used to define all of the instructions that can be used on a particular architecture.
Implementing Algebraic Effects in C
We describe a full implementation of algebraic effects and handlers as a library in standard and portable C99, where effect operations can be used just like regular C functions. We use a formal operational semantics to guide the C implementation at every step where an evaluation context corresponds directly to a…
The language of choice
Propositional logic was discovered by Stoics around 300 B.C., only to be abandoned in later antiquity and rebuilt in the 19th century by George Boole’s successors. One of them, Charles Peirce, saw its significance for what we now call logic circuits, yet that discovery too was forgotten until the 1930s. In the ’50s…
SLING: A Natural Language Frame Semantic Parser
Posted by Michael Ringgaard, Software Engineer and Rahul Gupta, Research ScientistUntil recently, most practical natural language understanding (NL...
Deconstructing K&R C (2010)
Learn C The Hard Way (LCTHW) is a practical book teaching real world useful C using the same proven Learn The Hard Way method. LCTHW teaches real robust C coding and defensive programming tactics on real hardware rather than abstract machines and pedantic theory. The book emphasizes breaking your code on purpose, and…
Object Oriented Programming is Inherently Harmful
“ Object-oriented programming is an exceptionally bad idea which could only have originated in California. ” – Edsger Dijkstra
C++ says “We have try... finally at home”
The destructor serves as the "finally".
Rust without the async (hard) part
A comparison between async Rust's and lunatic's approach to massive concurrency.
JEP 286: Local-Variable Type Inference
Enhance the Java Language to extend type inference to declarations of local variables with initializers.
.NET Standard 2.1
Since we shipped .NET Standard 2.0 about a year ago, we’ve shipped two updates to .NET Core 2.1 and are about to release .NET Core 2.2. It’s time to update the standard to include some of the new concepts as well as a number of small improvements that make your life easier across the various implementations […]
Russ Cox: Go, Open Source, Community
Why is Go open source, and how can we strengthen our open-source community?
Gleam 1.2.0 release – Fault tolerant Gleam
News post: Gleam v1.2.0 released
Larry Wall announces that Perl6 is ready for production
Hello. Ting, ting, ting. Attention! … ATTENTION! Thank you. Hi, I’m Camelia, if you don’t know me. (Or even if you do.) They told me I had to give a speech at Perl 6’s offic…
Differences Between `Foldl` and `Foldr`
`foldl` and `foldr` can be confusing, so let's work out what's up
Steel Bank Common Lisp 2.3.8 released: “a mark-region parallel GC is available”
New SBCL versions are usually released at the end of each month: check the Sourceforge File List to see the current version. The new features of the two most recent SBCL releases are listed below.
Creating a Non-Trivial Lisp Game in 2018
Jalur masuk yang cepat menghemat waktu pengguna untuk langsung bermain. Hadiah yang melimpah dan simbol khusus yang mudah muncul tersedia secara berkala. Penawaran istimewa terus diperbarui agar pengalaman bermain selalu segar.
Crystal 0.25.1 released
Crystal 0.25.1 has been released!