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.的基本”。