Awesome
Awesome Basic
A curated list of awesome BASIC dialects, IDEs, and tutorials
Contents
Dialects
- AppGameKit - an easy-to-learn game development engine, ideal for Beginners, Hobbyists & Indie developers. Now anyone can quickly code and build apps for multiple platforms using AppGameKit - have your demos and games up and running on mobile devices.
- atinybasic - An Actually Tiny BASIC for Arduino.
- B4X - Simple, powerful, and modern development tools.
- BaCon - a free BASIC to C translator for Unix-based systems, which runs on most Unix/Linux/BSD platforms, including MacOSX. It intends to be a programming aid in creating tools which can be compiled on different platforms (including 64-bit environments) while trying to revive the days of the good old BASIC.
- basgo - compiles BASIC-lang to Golang.
- BASIC Compiler - BASIC Compiler is an open-source BASIC compiler written in Java. It compiles a BASIC program into Java bytecode, which can be executed with any Java Virtual Machine 1.5 and higher.
- BASIC8 - an integrated Fantasy Computer for games and other program development. You can create, share, and play disks in a modern BASIC dialect, with built-in tools for editing sprites, tiles, maps, quantized, etc.
- BASIC-256 - an easy-to-use version of BASIC designed to teach anybody how to program. A built-in graphics mode lets them draw pictures on screen in minutes, and a set of easy-to-follow tutorials introduce programming concepts through fun exercises.
- BBCSDL - an advanced cross-platform implementation of BBC BASIC for Windows, Linux (x86 CPU only), MacOS, Raspberry Pi (Raspbian), Android, iOS or for running in a browser. It combines the simplicity of BASIC with the sophistication of a structured language, allowing you to write utilities and games, use sound and graphics, and perform calculations.
- BCX - BCX converts your BCX BASIC source code into high-performing, efficient C\C++ source code. Use C\C++ libraries and header files without having to first convert them into BASIC.
- BlitzMax DX - a fork of BlitzMax NG.
- BlitzMax NG - a fast cross-platform, open-source, programming language.
- bootBASIC - a BASIC language in 512 bytes of x86 machine code.
- Bywater BASIC Interpreter - implements a large superset of the ANSI Standard for Minimal BASIC (X3.60-1978) and a significant subset of the ANSI Standard for Full BASIC (X3.113-1987) in C.
- Cerberus X - A cross-platform development toolset which serves 2D game development at its core. Cerberus X is a fork of the Monkey X programming language.
- Chipmunk Basic - an interpreter for the BASIC Programming Language. It runs on multiple OS platforms and is reasonably fast for a pure interpreter. Chipmunk Basic presents a traditional (vintage) terminal-command-line programming environment and supports a simple, old-fashioned, and easy-to-learn dialect of the Basic Programming Language. (Line numbers are required when using the built-in command-line console, but are not required in Basic programs written using an external text editor.) The language also supports a few advanced extensions. Free for educational and personal use.
- cbmbasic - a portable version of Commodore's version of Microsoft BASIC 6502 as found on the Commodore 64.
- Dark Basic Pro - an open-source BASIC programming language for creating Windows applications and games.
- endbasic - BASIC environment with a REPL, a web interface, and RPi support written in Rust.
- FreeBASIC - a free/open source (GPL), BASIC compiler for Microsoft Windows, DOS, and Linux.
- FutureBasic - a high-level procedural programming language combined with an "Integrated Development Environment" (IDE) for creating native Intel Macintosh applications. It provides an editor, compiler, project manager, documentation, and code samples.
- Gambas - a free development environment and a full powerful development platform based on a Basic interpreter with object extensions, as easy as Visual Basic.
- GLBasic - an easy-to-learn BASIC language with Editor, Compiler, and Debugger. The generated C++ code compiles to lightning-fast apps for several platforms.
- JADE - AKA "Jade's A Developing Experiment" - This is a proof of concept using a BASIC-like syntax to program C++.
- jScriptBasic - ScriptBasic for Java is a BASIC interpreter that can be embedded into Java programs.
- Just BASIC - a programming language for Windows. It is completely free and it is suitable for creating all kinds of applications for business, industry, education, and entertainment.
- jvmBASIC - A BASIC to JVM bytecode compiler.
- KayaBASIC - Multi-platform BASIC compiler, that supports Windows, Linux, and macOS. easy extends with C++.
- Liberty BASIC - The commercial version of Just BASIC.
- LychenBASIC - anachronistic, Windows-only, BASIC language programming blog post explanation.
- MatrixBrandy - a Fork of Brandy BASIC V for Linux. Brandy implements Basic VI, the the 64-bit floating-point mathematics variant of the dialect of Basic that Acorn Computers supplied with their ranges of desktop computers that use the ARM processor such as the Archimedes and RiscPC. Basic V and VI are an extended version of BBC Basic. This was the Basic used on the BBC Micro that Acorn made during the early 1980s.
- MBC - MBC is a Basic to C/C++ translator, originally based on the BCX Windows translator by Kevin Diggins. It has successfully compiled using Clang++ and G++ on macOS/Linux 64bit OS's, and G++ on RaspberryPi.
- micro(A) - micro(A) is a modern and minimal general purpose programming language. It is Easy to Use BASIC-like Programming Language. micro(A) interpreter comes with a complete IDE in which you can make your programs.
- Monkey 2 - Monkey2 is an easy-to-use, cross-platform, games oriented programming language from Blitz Research.
- my_basic - A lightweight BASIC interpreter written in standard C in dual files. Aims to be embeddable, extendable, and portable.
- NaaLaa - stands for 'Not An Advanced Language At All'. It's a very easy-to-learn programming language for beginners interested in retro-style game development. NaaLaa is free to use and you may do whatever you want with the programs you create with it. NaaLaa runs and compiles on Windows and Linux.
- NSB/AppStudio - A complete, powerful development environment. Create apps for iOS, Android, Windows, MacOS and Linux.
- nuBASIC - nuBASIC is an implementation of a BASIC interpreter and IDE for Windows and Linux.
- nuBScript - nuBScript is a programming language distributed under MIT License.
- Oxygen Basic - a Compact embeddable JIT compiler that reads C headers and compiles to x86 machine code. Executes directly in memory or creates DLLs and EXE files. Supports overloading and OOP. Currently available for MS platforms.
- PC-BASIC - a free, cross-platform interpreter for GW-BASIC, Advanced BASIC (BASICA), PCjr Cartridge Basic and Tandy 1000 GWBASIC.
- PuffinBASIC - BASIC interpreter written in Java.
- PureBasic - a modern BASIC programming language. The key features of PureBasic are portability (Windows, Linux, and OS X supported with the same source code), the production of very fast and optimized native 32-bit or 64-bit executables, and, of course, the very simple BASIC language syntax. PureBasic has been created for the beginner and expert alike. We have put a lot of effort into its conception to produce a fast, reliable system and friendly BASIC compiler.
- PyBasic - Simple interactive BASIC interpreter written in Python
- QB64 - a modern extended BASIC programming language that retains QBasic/QuickBASIC 4.5 compatibility and compiles native binaries for Windows, Linux, and macOS.
- Quite BASIC - a web-based classic BASIC online programming environment.
- RAD Basic - 100% compatible with your Visual Basic 6 projects.
- RCBasic - a simple easy-to-learn programming language with many built-in functions to aid in game and multimedia application development. RCBasic is free software distributed under the Zlib license.
- RemObjects Mercury - Mercury is an implementation of the BASIC programming language that is fully code-compatible with Microsoft Visual Basic.NETâ„¢ but takes it to the next level, and to new horizons.
- sdlBASIC - A easy basic in order to make games in 2d style amos for linux and windows.
- SharpBASIC - SharpBASIC is a new programming language that is currently in development. As the name suggests the language should be considered a sharper BASIC, more powerful, less verbose but with a clear structure.
- SmallBASIC - a fast and easy-to-learn BASIC language interpreter ideal for everyday calculations, scripts, and prototypes. SmallBASIC includes trigonometric, matrices, and algebra functions, a built in IDE, a powerful string library, system, sound, and graphic commands along with structured programming syntax.
- SmallBasic - Small Basic is the only programming language created specially to help students transition from block-based coding to text-based coding.
- SpecBAS - an enhanced Sinclair BASIC interpreter for modern PCs.
- SpiderBasic - A Basic to master the web.
- thinBASIC - a very fast "BASIC-like" programming language useful to Beginners and to Gurus. BASIC interpreter for Windows able to create console and gui applications with most of the user interface controls, automate process, automate data exchange, connect to databases, send mails, connect to FTP sites, rest api, parsing strings, tokenizing, traversing xml, handling files, Windows Registry, OpenGl, graphics, sound, printing ... and much more.
- twinBASIC - twinBASIC is a modern version of the classic BASIC programming language.
- wwwBASIC - an implementation of BASIC that runs on Node.js and the Web.
- X11-Basic - a dialect of the BASIC programming language with graphics and sound.
- XC=BASIC - a dialect of the BASIC programming language for the Commodore-64 and xcbasic64 is a cross compiler that compiles an XC=BASIC program to 6502 machine code trough the DASM macro assembler. It runs on Windows, Linux, and Mac OS. The name XC=BASIC stands for "Cross Compiled BASIC".
- Xojo - Build Native, Cross-Platform Apps. Rapid application development for Desktop, Web, Mobile & Raspberry Pi. Develop on macOS, Windows, or Linux.
- Yabasic - a traditional basic-interpreter. It comes with goto and various loops and allows to define subroutines and libraries. It does simple graphics and printing. Yabasic can call out to libraries written in C and allows to create standalone programs. Yabasic runs under Unix and Windows and has comprehensive documentation; it is small, simple, open-source and free.
- YAB - a complete BASIC programming language for Haiku. Yab allows fast prototyping with simple and clean code. yab contains a large number of BeAPI-specific commands for GUI creation and much, much more. yab-IDE is a powerful development environment, which of course is programmed in yab itself.
IDEs, Editors, Plugins, and Tools
- DavsIDE - an Alternative IDE for the QB64 compiler.
- InForm - a GUI engine and WYSIWYG interface designer for QB64.
- QBASDOWN - a Markdown implementation for FreeDOS. Written for FreeDOS in QuickBASIC 4.5
- mono-basic - Visual Basic Compiler and Runtime.
- VisualFBEditor - an IDE for FreeBasic under active development.
- vscode-vba - Extension that adds rich VBA editor support to Visual Studio Code.
- WinFBE - FreeBASIC Editor for Windows.
Miscellaneous
- Collection of Commodore BASIC programs
- Hoard of GW-BASIC - A collection of GW-BASIC code by various authors.
- MBASIC-Protect - Information on the CP/M MBASIC interpreter's protect mode.
- GW-BASIC source code - The original source code of Microsoft GW-BASIC from 1983.
- Project Cherry - a Chip-8/SCHIP emulator written in FreeBASIC.
- The Basics' page (since 2001)
Tutorials
- A Beginner's Guide To FreeBasic
- A Beginner's Guide to Gambas
- BASIC Gaming - a short-lived ezine that has a wealth of information
- BlitzMax for the Absolute Beginner
- Franktic's FreeBASIC Programming Tutorial
- Programming with yab
- QB64 Game Programming
- QBasic (QB64) Tutorial Video Series by SchoolFreeware