Endbasic是一种基本语言的解释器,灵感来自Amstrad的机车基本1.1和Microsoft的QuickBasic 4.5。与前者一样,端信打算提供一个交互式环境,该环境无缝将编码与立即视觉反馈合并。像后者一样,Endbasic提供了更高级别的编程结构和强大的打字。
Endbasic提供了一个简化且受限制的环境,以了解编程的基础,并专注于可以快速奖励程序员的功能。这些功能包括诸如内置文本编辑器,渲染图形的命令以及与Raspberry Pi的硬件进行交互的命令。实施这种功能比其他其他功能(例如表演或更丰富的语言)优先。
Endbasic用Rust编写,并在网络上和本地运行在各种操作系统和平台上,包括MacOS,Windows和Linux。
Endbasic是Apache 2.0许可下的免费软件。
最新版本的Endbasic为0.11.1,于2024-09-14发布。
通过访问在浏览器中打开端信:
https://repl.endbasic.dev/
或在项目的网站上访问:
https://www.endbasic.dev/
Web解释器应在所有主要的桌面浏览器和移动设备上使用(Android上有一些已知问题)。
Web解释器在本地运行:默认情况下,您编写的任何程序都持续存在于浏览器的本地存储中。也就是说,您可以选择注册云服务并上传您的程序以与世界共享。
访问发布页面以下载预制的二进制文件。下载后,解开档案包装并运行endbasic二进制文件以开始。
请注意,二进制文件目前尚未签名,因此很难在Windows和MacOS上运行它们。
二进制版本是由建议的设置构建的:它们都包括图形支持,Raspberry Pi的构建包括对其硬件的支持。要使用图形控制台,您将需要使用以下形式之一启动二进制文件:
endbasic --console=graphics # Default console size, windowed.
endbasic --console=graphics:800x600 # Custom resolution.
endbasic --console=graphics:800x600fs # Custom resolution, full screen.
endbasic --console=graphics:fs # Desktop resolution, full screen. 当然,您还可以通过运行以下命令来从源构建和安装endbasic(假设您已安装了Rust Toolchain):
cargo install endbasic以上将从https://crates.io/获取Endbasic,使用默认设置构建它,然后在~/.cargo/bin/下安装所得的二进制。
如果要启用图形支持(建议),则首先必须安装SDL2和SDL2_ttf库。根据您所使用的平台,请按照以下步骤操作:
# On Debian-based systems:
sudo apt install libsdl2-dev libsdl2-ttf-dev
cargo install --features=sdl endbasic
# On FreeBSD systems:
sudo pkg install sdl2 sdl2_ttf
cargo install --features=sdl endbasic
# On macOS systems with Homebrew:
brew install sdl2 sdl2_ttf
cargo install --features=sdl endbasic
# On Windows systems, this is tricky. The easiest way is to clone this
# repository and then do the following from PowerShell:
. . github w orkflows s etup-sdl.ps1
cargo build --release --features=sdl endbasic如果您想支持Raspberry Pi硬件(以及推荐的图形功能),请在Raspberry Pi本身上执行此操作:
sudo apt install libsdl2-dev libsdl2-ttf-dev
cargo install --features=rpi,sdl endbasic请参阅用户手册,以获取有关如何开始使用Endbasic的信息。
在解释器中输入HELP以访问参考手册。
以下文档提供了有关此存储库结构的更多信息:
core/README.md 。std/README.md 。cli/README.md 。repl/README.md 。terminal/README.md 。sdl/README.md 。rpi/README.md 。web/README.md 。NEWS.md Endbasic始于我向自己的孩子教授编程的愿望的一部分。我记得在旧的AMSTRAD CPC 6128上学习编程:从每个命令都具有立即效果的意义上讲,体验是独一无二的。在启动计算机后,更改颜色,在屏幕上绘制或播放声音只是几个键击,而无需与单独的编辑器和终端打交道。当我通过模拟器向他们展示这一点时,我注意到我的孩子也有类似的兴奋,所以我认为我会以更现代的方式复制它。我们在这里。
由于这个灵感,Endbasic的名字代表了我孩子的名字名称的“ E.和D.的基本”。