boxer
Go packages helping to win by K.O. when fighting cross-cutting concerns.
Goals
- Apply low allocation coding practices;
- use data oriented programming whenever appropriate;
- introduce as little runtime dependencies as possible;
- provide a productive, pleasant and low churn developer experience,
- have predictable performance;
- provide production grade error reporting.
Installation
go get github.com/stergiotis/boxer
Maturity
Unstable, alpha, API may still change heavily.
Glossary
- curlier
- Go code mimicking cUrl.
- e2e
- End-to-end.
- ea
- Means input-output (german abbreviation to distinguish from core packages).
- eb
- Error building.
- eh
- Error handling.
- fec
- Forward error correction.
- inst
- Instance (similar to self, this).
- fffi
- Frame oriented Foreign Function Interface
- imzero
- A CGO-free immediate mode GUI library based on DearImGui. Client applications are available in imzero_client_cpp.
Style Conventions
File Extensions
Boxer uses chained file extension (e.g. file.docx.pdf.txt
):
- `.out.<ext>.`
- Generated source code checked in repository e.g. `myfile.out.go`
- `.gen.<ext>.`
- Source code generated in regular build process (i.e. part of binary distribution but not source distribution): e.g. `myfile.gen.go`
- `.idl.go`
- A (Framed) Foreign Function Interface (FFI) Interface Defintion Language (IDL) file. A subset of go language.
Contributing
Currently, no third-party contributions are accepted.
License
The MIT License (MIT) 2023-2024 - Panos Stergiotis. See LICENSE for the full license text.