1.1--- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2+++ b/tech.org Sun Aug 11 10:09:31 2024 -0400
1.3@@ -0,0 +1,66 @@
1.4+#+title: tech
1.5+#+author: Richard Westhaver
1.6+#+email: ellis@rwest.io
1.7+#+description: The Compiler Company Core Technologies
1.8+#+setupfile: ../../clean.theme
1.9+
1.10+* OS
1.11+We primarily support [[https://unix.org][Unix-based]] Operating Systems. Check
1.12+project-specific docs for officially supported targets.
1.13+
1.14+Development and CI is ran on [[https://archlinux.org/][Arch Linux]] (btw).
1.15+* Core
1.16+** [[https://lisp-lang.org/][Lisp]]
1.17+** [[https://www.rust-lang.org/][Rust]]
1.18+** [[https://www.gnu.org/software/emacs/][Emacs]]
1.19+* Libs
1.20+** [[https://rocksdb.org/][rocksdb]]
1.21+** [[https://archlinux.org/pacman/][pacman]]
1.22+** [[https://docs.kernel.org/filesystems/btrfs.html][btrfs]]
1.23+** [[https://tree-sitter.github.io/tree-sitter/][tree-sitter]]
1.24+** [[https://kernel.dk/io_uring.pdf][uring]]
1.25+** [[https://github.com/BLAKE3-team/BLAKE3-specs/blob/master/blake3.pdf][blake3]]
1.26+* Extras
1.27+** [[https://ngn.codeberg.page/k][k]]
1.28+** [[https://mlochbaum.github.io/BQN/][BQN]]
1.29+
1.30+* Our Software
1.31+The software provided by /The Compiler Company/ is a powerful but
1.32+opinionated programming environment. It consists of a GNU/Linux
1.33+kernel, some vendored programs and libraries, and a suite of custom
1.34+software.
1.35+
1.36+The software is modular by design. You can pick and choose which
1.37+components to embed in your own projects and you are encouraged to
1.38+modify any part of the system to meet your goals.
1.39+
1.40+In general, our software is designed for:
1.41+- early adoption :: integrate research, protocols, libraries, and
1.42+ hardware features from leading research orgs faster than anyone else
1.43+- rapid development :: interaction, code introspection, tooling, and
1.44+ automation built for prototyping at massive scale
1.45+- power :: using our environment should feel like cheating - macros,
1.46+ DSLs, and unmatched hackability
1.47+
1.48+** Langs
1.49+/The Compiler Company/ is above all, a =Lisp Company=. The most
1.50+powerful software requires the most powerful code.
1.51+
1.52+Lisp isn't enough though. =Rust= is our imperative language of choice
1.53+at the time of writing and generally suited for system-level software
1.54+components.
1.55+
1.56+We make use of the Steel Bank Common Lisp compiler (SBCL) and the
1.57+nightly Rust compiler toolchain.
1.58+
1.59+** OS
1.60+/The Compiler Company/ is a =Linux Company=. There may be minimal
1.61+support for Darwin-based systems, but Microsoft Windows systems will
1.62+never be officially supported.
1.63+
1.64+One of the /anti-goals/ of our software is ~portability~. For all of
1.65+the features we optimize for, portability becomes a burden, especially
1.66+with closed-source OS kernels. We are also explicitly driven to reduce
1.67+consumer dependence on these closed-source systems, especially in a
1.68+distributed network. They are simply unfit for use with the software
1.69+we produce and the systems we build.