The weird of function-local types in Rust
Next-gen compile-time-checked builder generator, named function's arguments, and more!
Topics /
The most popular blog posts about programming languages on Hacker News. 1,929 posts.
Next-gen compile-time-checked builder generator, named function's arguments, and more!
The official home of the Erlang Programming Language
We are delivering a new release with several bugfixes and improvements. Below we list the most important or interesting changes, without mentioning several bugfixes and smaller enhancements. For more details, visit the changelog. Breaking changes are marked with ⚠️.
Software Innovation Lab
Research in programming languages offers powerful tools, but our systems of notation stymie outsiders. Can we change our notational approach and broaden our audience—without compromising on c…
Not doing anything with it is exactly the point.
The Swift 5 release enables runtime checking of “Exclusive Access to Memory” by default in Release builds, further enhancing Swift’s capabilities as a safe language. In Swift 4, these runtime checks were only enabled in Debug builds. In this post, I’ll first explain what this change means for Swift developers before…
If you already know lots about JIT in general and Ruby’s MJIT in particular… you may not learn much new in this post. But in case you wonder “what is JIT?” or “what is MJIT?” or “what’s different about Ruby’s JIT?” or perhaps “why in the world did they decide to do THAT?”… Well then, perhaps I can
_posted by Eli Barzilay_ Racket version 5.3 is now available from http://racket-lang.org/ Release Highlights:: Submodules are nested module declarations that can be loaded and run independently from the enclosing module. See also the overview of su...
We are pleased to announce the release of Ruby 2.1.3.This is a patchlevel release of the stable 2.1 series.
Firefly is an alternative compiler to BEAM, introducing new levels of efficiency and speed for compiling Elixir applications.
Nim is in an excellent position to “get married” with static analysis, and it doesn’t have to be based on some intermediate representation but can achieve a solution more similar to Spark.
This article provides a hands-on guide to integrating Rust and Java through the Java Native Interface (JNI).
We use nginx throughout our network for front-line web serving, proxying and traffic filtering. In some cases, we've augmented the core C code of nginx with our own modules, but recently we've made a major move to using Lua in conjunction with nginx. One project that's now almost entirely written in Lua is the new…
In this article, we will show you how to implement simple parser combinators from scratch and how to use the Megaparsec library to implement a parser for S-expressions.
IBM Developer is the source for hands-on training and in-demand learning on relevant technologies such as generative AI, data science, Java, and more.
A guide to learning COBOL for the modern programmer.
1995 was the year AOL floppy disks arrived in the mail, Netscape Navigator was born and the first public version of Java was released. Over the next two...
Many Rust beginners with a background in systems programming tend to use bool (or even u8 – an 8-bit unsigned integer type) to represent “state”. For example, how about a bool to indicate whether a user is active or not? struct User { // ... …
The next HHVM release, 3.6, is on the horizon. We expect it to be released at the very end of February or in early March. It’s going to be a big release. Not...
I wrote my first line of Rust in June 2015, a month after Rust 1.0 landed. Coming from C, Python, and JavaScript, I never looked back. Two Rust-based startups and 500k lines of Rust later, here are some reflections on the milestone.
For the first time, AdaCore’s GNAT Pro subscribers will be able to develop safety- and security-certifiable embedded applications using Rust while…
Abstract Syntax errors are generally easy to fix for humans, but not for parsers in general nor LR parsers in particular. Traditional ‘panic mode’ error recovery, though easy to implement and applicable to any grammar, often leads to a cascading chain of errors that drown out the original. More advanced error recovery…