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

Contact: @richiefreedom
Download Telegram
Factor is a modern concatenative programming language with FORTH-like syntax and a rich standard library.

http://factorcode.org

#forth #plt #programming #retro #compiler
Kore.io is a convenient framework for making WEB-applications in the C programming language.

https://kore.io
Many programmers know CPAN - an archive of libraries and code snippets for the Perl language. CCAN is an analogue for C. It has a good package base and a dependency tracking tool.

https://ccodearchive.net
I was surprised when I first saw how many applications in commerce the Pharo language had. Before, it seemed to me that Smalltalk was almost dead.

Pharo is a modern Smalltalk dialect with a convenient IDE including very powerfull interactive debugger. It is both the object-oriented development environment and a language-based operating system.

https://pharo.org
Chicken Scheme is a modern compiler for the R5RS Scheme programming language. It compiles Scheme code to C and allows easy FFI through foreign lambda interface.

The compiler supports many extensions to the base language and has a rich code library.

https://www.call-cc.org
C is a perfect translation target for many high-level programming languages. It can be easily used as a flexible intermediate language which is perfectly optimized, it can be built for almost any existing platform.

The following article shows a simple example of a FORTH to C translator. The author describes how to feed gdb with proper info about source language lines locations to simplity debugging and provide pretty backtraces in known IDEs.

https://yosefk.com/blog/c-as-an-intermediate-language.html
A perfect article about compilation of tail-recursive functions with the C language in the role of a target.

http://home.pipeline.com/~hbaker1/CheneyMTA.html
An enlightening article about linear type systems with a simple Lisp machine as an example.

http://home.pipeline.com/~hbaker1/LinearLisp.html
Полiт ОС - графическая оболочка для DOS с приятным глазу современным оконным интерфейсом. В полiт есть блокнот, плеер, двухпанельный менеджер файлов, менеджер контактов, игры и справочная система. Ввод в этой оболочке поддерживает английскую, русскую и украинскую раскладки.

Это компактное чудо написано на TurboPascal 7.0, а в коде может разобраться каждый - он открыт под GPL-совместимой лицензией.

http://bespin.org/~polit/
Updated and refactored Programming Language Zoo by Andrej Bauer.

Many examples of compilers and interpreters for various types of simplified programming languages: functional and imperative, lazy and eager, procedural and object oriented.

http://plzoo.andrej.com
A simple introduction to the type theory by Andrej Bauer.

http://math.andrej.com/2017/12/11/spartan-type-theory/
A video with the lecture mentioned in the previous post on the spartan type theory.

https://vimeo.com/286652934
Visopsys is an old but still alive OSdev project performed generally by only one author.

https://visopsys.org
A good introduction to the internals of Prolog.

https://www.amzi.com/articles/prolog_under_the_hood.htm
A perfect book on the art of solving problems by Sanjoy Mahajan. You can download the PDF version for free (see the "Open Access" tab).

https://mitpress.mit.edu/books/street-fighting-mathematics
I used many TUI-based TODO lists, there are plenty of them in GNU/Linux: todolist, ikog, todo.txt, yokadi and others. All of them are too simple for serious use, I think. But it looks like I've eventually found the golden middle - powerfull enough but still terminal friendly utility. Its name is Calcurse.

https://calcurse.org

One more tool looks very similar to Calcurse and definitely deserves your attention. This is Taskwarrior.

https://taskwarrior.org
Judy array is an effective sparse data structure implementing an interface of associative arrays.

http://judy.sourceforge.net