Boriel BASIC is a modern, open-source BASIC compiler SDK designed primarily for the ZX Spectrum, offering enhanced features, integer types, and inline assembly support for retro game development.
# Boriel BASIC
Source: [https://zxbasic.readthedocs.io/en/docs/](https://zxbasic.readthedocs.io/en/docs/)
## General
- [About](https://zxbasic.readthedocs.io/en/docs/about/) About Boriel BASIC SDK
- [ChangeLog](https://github.com/boriel-basic/zxbasic/blob/master/CHANGELOG.md) A reduced list of changes/bugfixes
- [Installation](https://zxbasic.readthedocs.io/en/docs/installation/) How to install Boriel BASIC SDK in your system, and prerequisites for doing so\.
- [SDK tools](https://zxbasic.readthedocs.io/en/docs/tools/) Tools available in the SDK\.
- [Command line options](https://zxbasic.readthedocs.io/en/docs/zxb/#Command-Line-Options) Command line options table for the compiler \(zxb\)
## Download
Get the latest version of Boriel BASIC from the[archive](https://zxbasic.readthedocs.io/en/docs/archive/)\.
## Released programs
- [Released programs](https://zxbasic.readthedocs.io/en/docs/released_programs/) A list of third\-party released programs \(mostly games\) for the ZX\-Spectrum developed with Boriel BASIC\.
## Learning Boriel BASIC
### Language Reference
- [Language syntax](https://zxbasic.readthedocs.io/en/docs/syntax/) Language Syntax is very close to the original Sinclair BASIC, but it's expanded and enhanced\.
- [Data types](https://zxbasic.readthedocs.io/en/docs/types/) Language data types: Instead of working always with Floating Point numbers \(also available\), there are also some integer types which are faster an take less memory\.
- [Reserved words](https://zxbasic.readthedocs.io/en/docs/identifier/) Comprehensive list \(alphabetically ordered\) of identifiers you shouldn't use as a ''variable name''\. E\.g\.`FOR`,`PRINT`\. If you want usage instructions on a statement, also look here\.
- [Standard libraries](https://zxbasic.readthedocs.io/en/docs/library/stdlib/) Standard libraries that comes bundled with Boriel BASIC compiler\.
### Tutorials
- [Programming tutorials](https://zxbasic.readthedocs.io/en/docs/tutorials/) A collection of third\-party tutorials about development with Boriel BASIC\.
- [Sample Programs](https://zxbasic.readthedocs.io/en/docs/sample_programs/) Sample programs you can try to see what Boriel BASIC looks like and how fast it runs\.
- [Sample Games](https://zxbasic.readthedocs.io/en/docs/sample_programs/#Game%20Examples) Some little games examples\.
## Help and Support
- [Community Forum](https://forum.boriel.com/) Have a question? Need help or comment a report a bug? Go to the[Boriel BASIC forum](https://forum.boriel.com/)
## External resources
- Here you are[external resources](https://zxbasic.readthedocs.io/en/docs/external_resources/): other tools, IDEs, graphic designers and projects related to Boriel BASIC\. Have a look\!
### External libraries
- [Library](https://zxbasic.readthedocs.io/en/docs/library/) Library of functions and subroutines you can use in your programs\. You might find them really useful\.
## Inline assembler
Embedding inline assembler in your code is pretty easy\. There's a[tutorial](https://zxbasic.readthedocs.io/en/docs/tutorials/#how-to-use-inline-assembly)on it\.
## Compiler internals
Only for true hackers: This explains how the compiler does its job, how to expand it, etc\. This is`work in progress`\.
## Other Architectures
Boriel BASIC was designed from the base as a Retargeable Compiler, so it should be not hard to extend it to other architectures\. This is`work in progress`\. See[other architectures](https://zxbasic.readthedocs.io/en/docs/other_architectures/)for more info\.
## Contributing
You can issue a Pull Request to the[GitHub repository](https://github.com/boriel-basic/zxbasic), report bugs in the forum when using the compiler, suggest new features\.\.\.
[](https://ko-fi.com/H2H81J0OU)
Julio Merino discusses the future of EndBASIC, exploring whether to remove the BASIC language layer to repurpose the underlying Rust VM and graphics engine for more modern or versatile development needs.
Blaise is a modern, self-hosting Object Pascal compiler designed to eliminate legacy baggage by offering a single language mode, unified memory model, and native code generation via QBE.
QBE is a compact, hobby-scale compiler backend that provides 70% of the performance of industrial optimizing compilers in 10% of the code, supporting amd64, arm64, and riscv64 with a simple SSA-based intermediate language.
The author details the third iteration of the bx library's cross-platform SIMD abstraction, advocating for a typeless approach and SSA-style coding to simplify low-level performance optimization across different CPU architectures.