changelog shortlog graph tags branches changeset files revisions annotate raw help

Mercurial > org > docs / meta/tech.org

changeset 28: a0017112db77
parent: b38886ced111
author: Richard Westhaver <ellis@rwest.io>
date: Thu, 06 Jun 2024 23:15:50 -0400
permissions: -rw-r--r--
description: style update
1 #+title: tech
2 #+author: Richard Westhaver
3 #+email: ellis@rwest.io
4 #+description: The Compiler Company Core Technologies
5 #+setupfile: ../../clean.theme
6 
7 * OS
8 We primarily support [[https://unix.org][Unix-based]] Operating Systems. Check
9 project-specific docs for officially supported targets.
10 
11 Development and CI is ran on [[https://archlinux.org/][Arch Linux]] (btw).
12 * Core
13 ** [[https://lisp-lang.org/][Lisp]]
14 ** [[https://www.rust-lang.org/][Rust]]
15 ** [[https://www.gnu.org/software/emacs/][Emacs]]
16 * Libs
17 ** [[https://rocksdb.org/][rocksdb]]
18 ** [[https://archlinux.org/pacman/][pacman]]
19 ** [[https://docs.kernel.org/filesystems/btrfs.html][btrfs]]
20 ** [[https://tree-sitter.github.io/tree-sitter/][tree-sitter]]
21 ** [[https://kernel.dk/io_uring.pdf][uring]]
22 ** [[https://github.com/BLAKE3-team/BLAKE3-specs/blob/master/blake3.pdf][blake3]]
23 * Extras
24 ** [[https://ngn.codeberg.page/k][k]]
25 ** [[https://mlochbaum.github.io/BQN/][BQN]]
26 
27 * Our Software
28 The software provided by /The Compiler Company/ is a powerful but
29 opinionated programming environment. It consists of a GNU/Linux
30 kernel, some vendored programs and libraries, and a suite of custom
31 software.
32 
33 The software is modular by design. You can pick and choose which
34 components to embed in your own projects and you are encouraged to
35 modify any part of the system to meet your goals.
36 
37 In general, our software is designed for:
38 - early adoption :: integrate research, protocols, libraries, and
39  hardware features from leading research orgs faster than anyone else
40 - rapid development :: interaction, code introspection, tooling, and
41  automation built for prototyping at massive scale
42 - power :: using our environment should feel like cheating - macros,
43  DSLs, and unmatched hackability
44 
45 ** Langs
46 /The Compiler Company/ is above all, a =Lisp Company=. The most
47 powerful software requires the most powerful code.
48 
49 Lisp isn't enough though. =Rust= is our imperative language of choice
50 at the time of writing and generally suited for system-level software
51 components.
52 
53 We make use of the Steel Bank Common Lisp compiler (SBCL) and the
54 nightly Rust compiler toolchain.
55 
56 ** OS
57 /The Compiler Company/ is a =Linux Company=. There may be minimal
58 support for Darwin-based systems, but Microsoft Windows systems will
59 never be officially supported.
60 
61 One of the /anti-goals/ of our software is ~portability~. For all of
62 the features we optimize for, portability becomes a burden, especially
63 with closed-source OS kernels. We are also explicitly driven to reduce
64 consumer dependence on these closed-source systems, especially in a
65 distributed network. They are simply unfit for use with the software
66 we produce and the systems we build.