871 private links
A nice intro to BCKW and SKI combinator. The most interesting part I found is how dropping some of the combinator gives a different computing world like linear logic. I never thought of that before. Maybe some combinator system reveals a more fundamental picture of computing.
I have the same feeling as the author when I was learning Nix. I always felt there is some gap between what I know and what I should know about Nix. I never know enough Nix to comfortably write any deviation. The articles I read either assume you're a total newbie or a veteran, but none seem to address people like me who are wandering in the limbo.
This article is different. The author talks about his story with Nix and what he learned on the way. It was a very interesting yet informative read. Maybe someday I'll pick Nix up again.
The wayland book - a book on how wayland protocol works. Saved for future reference.
It's similar to OneLook reverse lookup dictionary (https://www.onelook.com/thesaurus/). Supports query in both Chinese and English.
A bunch of nice tricks to use browsers' web debugger console and console.log() faimilies.
More tricks shared in HN comments: https://news.ycombinator.com/item?id=29071700
I wonder if there is man-made machine that's capable of replicating itself from a sequence of instructions that sort of act like DNA. Turns out there is!
John von Neumann's universal constructor is a self-replicating machine in a cellular automata (CA) environment.
This world runs on a cellular automaton system devised by von Neumann. The grid consists of cells where each can be in one of 29 states at any point in time. The state update is local to its environment. Similar to Conway's GoL.
The author advocates the syntax my_func() ( body ... )
over my_func() { body ... }
syntax for its additional scoping benefits. I never knew bash function can be defined this way, and it's certainly a great read.
A compatibility layer of MacOS on Linux.
Run a tournament to choose your favorite font! A brilliant idea. The winner for me is Fira Code.
To summarize: Copy + summarize what you read. If there is something you don't understand, leave a asterisk and check back later.
Do you know it's possible to open a shell with 'apt' command? Do you know you can upload a file just by calling 'tar'?
This website curates list of Unix binaries that can be used to bypass local security restrictions.
An interesting read.
The Cutting Room Floor is a site dedicated to unearthing and researching unused and cut content from video games.
From debug menus, to unused music, graphics, enemies, or levels, many games have content never meant to be seen by anybody but the developers — or even meant for everybody, but cut due to time/budget constraints.
An extensive introduction to IPv6 concepts.
IPv6 has always baffled me on how it works. There are too many unfamiliar terms and mechanisms such that I never felt confident enough to start using IPv6. This article solves much of my confusion.
A clever idea. It uses an unsafe non-existent function to induce link-time error. Normally, if the call to this non-existence function is proven unreachable by the compiler, then the call to this function will be removed and won't catch any errors. Otherwise it raises a link-time error instead of runtime error.
it is not possible to type the y combinator with a higher ranked type--system F is strongly normalizing
It's a hard decision for Amethyst and I am glad to see the transition.
I am bookmarking this article especially for it containing a list of good libraries and reading recommendation towards game development in Rust.
Another enticing list to dig into!
A list of privacy-focused tool suggestions.