This post introduces timecond, a TypeScript library I created to represent, evaluate, and describe complex conditions on time ranges. The support for time ranges is what makes it different from many other popular time scheduling libraries that focus on events (points in time). Note In contrast to all my prior …| dr knz @ work
In any comparative discussion about programming languages, the probability that the conversation will mention Brainfuck or INTERCAL approaches 1 over time. (Based on years of empirical evidence as a scientist, programmer and unix hacker.)| dr knz @ work
On November 17th, 2012, a link to a Brainfuck interpreter written using the C preprocessor language was posted to Hacker News. In the necessary flurry of HN comments that followed, the question of CPP’s Turing Completeness came up, to be answered negatively: the proposed interpreter needs to be extended …| dr knz @ work
Two days ago I started to investigate whether C was Turing Complete. With help from two serious people also interested in the topic, I came to the preliminary conclusion that it is probably not. Here is a summary of the arguments so far. Turing Completeness is a property of languages …| dr knz @ work
Ivan Godard from Out-of-the-Box Computing is currently touring the US talking about his Mill CPU architecture, based on a new machine model called the “Belt”. I just finished watching the 2nd talk on the machine model and its realization in the processor’s micro-architecture. OotB’s contribution is a machine …| dr knz @ work
1 Lab notes Day 1. got a de0 nano. installed Lubuntu 13.04 in VirtualBox, 32-bit, 6GB space. tried to install the Altera Quartus II suite. Not enough space. bigger HD image: 10GB. installed the tools. Fits. tried to download/install OpenRISC tools. Not enough space. ordered external SSD drive …| dr knz @ work
I need to pick a programming language to prototype some initial ideas for my next research project, an interactive shell to program and control lightweight process networks. I initially started with Python, but I stumbled into the need for efficient and concise pattern matching on tree-like data structures, which Python …| dr knz @ work
This post mirrors OCaml for Haskellers from Edward Z. Yang (2010). Note The latest version of this document can be found online at https://dr-knz.net/haskell-for-ocaml-programmers.html. Alternate formats: Source, PDF. Prologue Why write a new post when a clever reader could simply “read Edward’s post backwards”? It …| dr knz @ work
This post follows up on OCaml for Haskellers from Edward Z. Yang (2010) and my own Haskell for OCaml programmers from earlier this year. Note The latest version of this document can be found online at https://dr-knz.net/rust-for-functional-programmers.html. Alternate formats: Source, PDF. Prologue Rust for C programmers …| dr knz @ work
Note The latest version of this document can be found online at https://dr-knz.net/on-the-future.html. Alternate formats: Source, PDF. Prologue A famous researcher once said that a scientist should not work more than 5-6 years in the same research area. The argument had something to do with losing …| dr knz @ work
Hillel proposed on Twitter today: “Expressiveness” is how easily we can ‘do’ things in a system. “Tractability” is how easily we can assert properties on things we ‘do’. F.ex DFAs are tractable, Turing machines are expressive. The expressiveness vs tractability tradeoff is one of the most fundamental in CS …| dr knz @ work