Thoughts on porting NumPy to PyPy
Last weekend, I attended GitHub's PyCodeConf in Miami Florida and had the opportunity to give a talk on array-oriented computing and Python....
Topics /
The most popular blog posts about programming languages on Hacker News. 3,709 posts.
Last weekend, I attended GitHub's PyCodeConf in Miami Florida and had the opportunity to give a talk on array-oriented computing and Python....
Sorry, this post will read like a “dear diary” entry rather than some life-changing HN-worthy guidance. Back in November 2020, almost on a whim I started work on a new parser for the Ruby programming language. It was almost exactly a year after I had started working on my compiler project (I hope to write a longer…
If you've ever hit the tab key while typing commands in the shell, you are familiar with the value of shell completions. Bash has some default completion behavior, which is why you can type hel<TAB> and end up with help . It is also possible to add additional completion scripts which define the completion behavior for…
Last week, I gave a talk about Go at the Boston Google Developers Group meeting. There were some problems with the recording, so I have rerecorded the talk as a screencast and posted it on YouTube.
Bluesky: @simonmar.bsky.social Github: simonmar Email: marlowsd@gmail.com LinkedIn: Simon Marlow
I’ve been using Go for a few years now, mostly in my open source project Lazygit. In my day job I use Ruby and Typescript, and I’ve also spent some time with Rust. Each of those languages have design quirks that can grind a developer’s gears, and although my own precious gears have been ground by every language I’ve…
Recently, I’ve seen popular articles on macros and metaprogramming in Nimrod and Elixir . Both of these are wonderful metaprogramming systems, to be sure, but I couldn’t help but imagine some in the audience smirking inwardly – and occasionally less inwardly. What odd syntax! How out-of-place they are! If only there…
When your software team needs to pick a language today, you typically weigh two factors: language performance and developer velocity.
Peter Bourgon has a web site, and this is that web site.
ASDF , the de facto standard build system for Common Lisp, has been vastly improved between 2009 and 2014. These and other improvements finally bring Common Lisp up to par with "scripting languages" in terms of ease of writing and deploying portable code that can access and "glue" together functionality from the…
Evaluating code at compile time is a capability that most, if not all, compiled programming languages possess, even if it can't be directly used by the programmer, but rather applied as an optimization. In this post, we'll explore a bit how to execute code at compile time in Nim, Zig, Rust and C++.
My Python code was too slow, so I made it faster with Python. For some definition of “Python”.
In this blogpost we'll see how Erlang's Syntax already appeared on TAOCP years before the language was even created.
I discovered a profound outcome of Go's support for static type checking and duck typing: It is ridiculously easy to refactor Go.
This post covers essentially the same material as a 5-minute presentation I gave at RC .
Is there still research to be done in Programming Languages? This essay touches both on the topic of programming languages and on the nature of research work. I am mostly concerned in analyzing this question in the context of Academia, i.e. within the expectations of academic programs and research funding agencies…
Supervisor trees are one of the core ingredients in Erlang's reliability and let it crash philosophy . A well-structured Erlang program is broken into multiple independent pieces that communicate via messages, and when a piece crashes, the supervisor of that piece automatically restarts it.
Mostly software: Rust, machine learning, and P2P systems. Previously, games and cocktails.
Coding in Rust and others; making coding videos.
C++20 added minimal support for coroutines. I think they’re done in a way that really doesn’t fit into C++, mostly because they don’t follow the zero-overhead principle. Calling a…
PHP 8.2 has a new randomizer engine, readonly classes, disjunctive normal form types, redacted parameters, performance improvements, and more.