Topics /

Programming Languages

The most popular blog posts about programming languages on Hacker News. 5,634 posts.

Any year
5251

LLVM OpenMP Support

OpenMP support in Clang compiler is completed! Every pragma and clause from 3.1 version of the standard is supported in full, including combined directives (like ‘#pragma omp parallel for’ and ‘#pragma omp parallel sections’).

5255

Homegrown Closures for Uxn

For a week or so now, I've been writing niënor , a "lispy environment for uxn" . I did not want it to become a full-blown lisp but just another way of writing uxntal . Uxntal is a bit too dense for my liking, and I prefer lisp/scheme s-expression syntax. Niënor is just a compiler and a macroexpander that takes in…

5257

This Week in Rust 499

Hello and welcome to another issue of This Week in Rust ! Rust is a programming language empowering everyone to build reliable and efficient software. This is a weekly summary of its progress and community. Want something mentioned? Tag us at @ThisWeekInRust on Twitter or @ThisWeekinRust on mastodon.social, or send us…

5258

JEP 515: Ahead-of-Time Method Profiling

Improve warmup time by making method-execution profiles from a previous run of an application instantly available, when the HotSpot Java Virtual Machine starts. This will enable the JIT compiler to generate native code immediately upon application startup, rather than having to wait for profiles to be collected.

5260

Subclassing in Python Redux

The conflict between subclassing and composition is as old as object-oriented programming. The latest crop of languages like Go or Rust prove that you don’t need subclassing to successfully write code. But what’s a pragmatic approach to subclassing in Python, specifically?

5262

Data Parallelism in Rust

Rust currently has very strong support for concurrency in the form of actors which exchange messages and do not share memory. However, there are many tasks for which actors are not a good fit. The unbounded lifetime of actors means that they cannot safely access stack-allocated memory from another task, even if it is…

5263

F*dging up a Racket

Source code can be found at: https://github.com/dyoo/brainfudge . The latest version of this document lives in http://hashcollision.org/brainfudge .

5266

In the Shadow of John McCarthy

John McCarthy was a genius of the highest order. Much is known about his contribution to Lisp as its inventor, but he was also the mind behind much of early AI research, the progenitor of much of computer chess, and the initiator of time-sharing. As a Lisp advocate I have many thanks due to John McCarthy and it…

5279

Rust: Enums to Wrap Multiple Errors

This is a follow-up to Error handling in Rust from a couple of days ago. The moment we want to use error propagation for different error types, we have to rely on trait objects with Box<dyn Error>, which means we defer a lot of information from compile-time to runtime, for the sake of convenient error handling.