5 days agoMember-onlyWill Starship or Neutron Replace the Falcon 9 Rocket?A discussion of differences in rocket design philosophies and strategies of SpaceX and Rocket Lab — Falcon 9 is currently dominating the rocket launch industry. No rocket is launched as frequently as the Falcon 9 rocket. A key part of this success comes from the ability to reuse part of the rocket. Allow me to clarify how: A modern rocket launched into space is composed of…Rockets14 min readRockets14 min read
Published in ITNEXT·Jan 23Member-onlyWriting Code Without Plain Text FilesThe Unison programming language doesn’t store code in files, but in a database. What is that like? — For about a week, I have had the unusual experience of writing code without the usual hierarchy of folders and plain text files that us programmers are accustomed to. Instead, my code has been living inside an SQLite database, stored as abstract syntax trees (ASTs). If you don’t know what…Unison15 min readUnison15 min read
Published in ITNEXT·Jan 22Member-onlyReading Files in UnisonHow do you do I/O in a pure functional language using Algebraic Effects? — I have covered how to deal with side effects in Unison previously, but I could not make space for discussing I/O in earlier articles. It is time to remedy that omission. Reading and writing to files, sockets, processes, or console requires you to tag your functions with the IO ability…Functional Programming13 min readFunctional Programming13 min read
Jan 19Member-onlyHandling Side Effects in UnisonHow to separate pure functions from functions with side effects — In the world of pure functional programming, the big bogeyman is functions with side effects. What exactly do we mean by side effects? A pure function works like functions in mathematics. The output of the function is defined exclusively by its input arguments. However, in programming, some functions are sneaky…Functional Programming18 min readFunctional Programming18 min read
Published in ITNEXT·Jan 17Member-onlyProcessing DNA Strings With UnisonUse the Unison functional programming language to process DNA text strings — Whenever I learn a new programming language, I like to do simple exercises which doesn’t require knowing a large API but which expose you to the basics of the language. …Unison6 min readUnison6 min read
Published in ITNEXT·Jan 16Member-onlyRecursion and Data Structures in UnisonA look at how to solve programming problems through recursion — When your programming language does not support loops, you need to use recursion or higher-order functions. In my previous article, I covered higher-order functions such as map, filter and fold in Unison. …Unison10 min readUnison10 min read
Published in ITNEXT·Jan 15Member-onlyHigher-Order Functions in UnisonWhy you must use map, reduce and filter instead of loops in the Unison programming language — Because Unison is a functional language, and you don’t have regular loops, you will have to get used to higher-order functions. Many of us are accustomed to functions such as map, reduce and filter. …Programming9 min readProgramming9 min read
Jan 10Member-onlyCapitalism and The Prisoner’s DilemmaHow a simple thought experiment demonstrates the problem with free market capitalism — Upon first introduction, the prisoners’ dilemma can come across as dry theory detached from everyday life. It is a thought experiment from the field of game theory, which is a branch of mathematics. Yet, the reason I am choosing to discuss the prisoner’s dilemma is because it helps explains why…Socialism14 min readSocialism14 min read
Published in ITNEXT·Jan 5Member-onlyGrokking RISC-V Vector ProcessingA friendly introduction to the core concepts in the RISC-V “V” Vector Extension, version 1.0 — While the basic idea of vector processing is simple, the details can get complex. The purpose of this story is to explain the fundamental idea of vector processing and how that has been implemented in the RISC-V instruction-set architecture. …Risc V12 min readRisc V12 min read
Jan 4Member-onlyFrom The Spinning Jenny to ChatGPTPutting the rise of modern AI into a historical perspective — I have had a passion for artificial intelligence since the 1980s. It was one of the reasons why I studied machine learning and robotics over 20 years ago. My final project for undergrad, for instance, was a system for analyzing whether fish had parasites using numerous sensors connected to a…Chatbots15 min readChatbots15 min read