The EndBASIC programming language - standard library

Build and test Health checks Deploy to staging Deploy to release Crates.io Docs.rs

EndBASIC is an interpreter for a BASIC-like language and is inspired by Amstrad's Locomotive BASIC 1.1 and Microsoft's QuickBASIC 4.5. Like the former, EndBASIC intends to provide an interactive environment that seamlessly merges coding with immediate visual feedback. Like the latter, EndBASIC offers higher-level programming constructs and strong typing.

EndBASIC offers a simplified and restricted environment to learn the foundations of programming and focuses on features that can quickly reward the programmer. These features include things like a built-in text editor, commands to render graphics, and commands to interact with the hardware of a Raspberry Pi. Implementing this kind of features has priority over others such as performance or a much richer language.

EndBASIC is written in Rust and runs both on the web and locally on a variety of operating systems and platforms, including macOS, Windows, and Linux.

EndBASIC is free software under the Apache 2.0 License.

What's in this crate?

endbasic-std provides the language standard library, which is composed of various commands and functions. Each of these can be exposed to the interpreter individually.

Standard library features

EndBASIC's standard library is inspired by other BASIC interpreters but does not intend to be fully compatible with them. The library currently contains:

Design principles

Some highlights about the EndBASIC implementation are:

Examples

The examples directory contains sample code to show how to embed the EndBASIC interpreter and standard library into your own programs.