Zero Dereference
135 subscribers
3 photos
3 files
372 links
Interesting links related to systems programming, hacking, and science.

Contact: @richiefreedom
Download Telegram
Mark 1 is a DIY TTL-based FORTH computer.

http://www.aholme.co.uk/Mk1/Architecture.htm
A simple round-robin preemptive multitasking system written in 6502 assembly language.

http://6502.org/source/kernels/minikernel.txt
Pixilang is an easy to learn and use programming language for small demos with graphics and music written by famous Alex Zolotov. You may think that this language is too simple for serious software, but Alexander has written many useful applications in Pixilang including such cool thigs as PixiTracker.

http://www.warmplace.ru/soft/pixilang/index_ru.php
I'm almost sure, you've heard about Sam - a small text editor written by Rob Pike. Modern, refined version of this editor can be found in Deadpixi's git repo. Many superstars of computer science loved it.

https://github.com/deadpixi/sam
ISO has updated standards of C and Fortran.
Mozart is a programming system based on a multiparadigm programming language Oz.

This language is used in a perfect book of Peter Van Roy and Seif Haridi - Concepts, Techniques and Models of Computer Programming.

http://mozart.github.io/
This awesome page made by Russ Cox gathers lots of materials related to efficient implementation of engines for regular expression search.

https://swtch.com/~rsc/regexp/
This page written by Russ Cox puts together info about verification of Plan9's synchronization primitives with Promela/Spin.

https://swtch.com/spin/
Harvey OS is a modern reincarnation of Plan9. It can be built with GCC, ICC or Clang on any popular operating system, has an updated APE subsystem and supports userspace development in golang. There are plans to add a new GUI, native toolchain and a file server.

https://harvey-os.org/
My colleague sent me a link to the article How to Write Unmaintainable Code — a kind of a best practices list but turned inside out. After reading you will know how to make the lives of your colleagues unbearable!

https://www.se.rit.edu/~tabeec/RIT_441/Resources_files/How%20To%20Write%20Unmaintainable%20Code.pdf
NesC is a programming language similar to C with extensions for component-oriented programming on small platforms.

https://github.com/tinyos/nesc
TinyOS is an operating system for "smart dust" devices. It is written in NesC and provides component-based approach for applications programming. The kernel is linked statically with the developed application's components.

The system actively uses the concept of events and fits well for I/O-intensive areas.

Unfortunately, computing tasks cannot be preempted and run untill their end, so the programmer is responsible for task decomposition and chaining of its parts, just like in oberon systems.

https://github.com/tinyos/tinyos-main
An old but still interesting book — Symbolic Processing in Pascal.

This is difficult to categorize the book, it contains different topics and looks little bit unstructured but the content pleases anyway.

It starts from simple projects on translation and interpretation of propositional logic formulas. The first chapter results to a program that computes truth tables for logic formulas entered by the user. Next, the author describes how to program an interpreter for a model imperative language. The following chapter introduces higher order functions and their implementation in programming languages. The author explains how recursion and continuations can be implemented. He shows a design of a simple functional (and concatenative) language called Joy.

Following chapters focus on internals of a theorem prover for monadic logic, a database language and a verifier for Petri nets.

And all this stuff is written in Pascal!

https://www.latrobe.edu.au/__data/assets/file/0014/240305/Symbolic-Processing-in-Pascal.zip
A blog dedicated to retro computing and low-level programming.

https://www.pagetable.com/
Riot OS is a tiny operating system for small IoT-devices. You don't need any hardware to start development with Riot because it can work in hosted mode with HAL implemented on top of the Linux system calls.

The networking subsystem embedded to Riot kernel supports those trendy IoT stacks, protocols and data formats you've exactly heard about (IPv6, 6LoWPAN, RPL, Constrained Application Protocol and CBOR).

The system tries to be very compact and implements a part of the POSIX standard.

https://github.com/RIOT-OS/RIOT
A microkernel-based hobby OS with some non-standard solutions inside, custom build system written in shell and full-featured graphical interface.

https://ghostkernel.org
One more hobby OS with cute composite window system and a couple of applications.

There is a video with a presentation about this OS where one of the authors shows slides using a viewer under Toaru OS itself.

https://toaruos.org/