PuffinBASIC – A cross-platform modern BASIC interpreter written in Java
GitHub: https://github.com/mayuropensource/PuffinBASIC BASIC (Beginners' All-purpose Symbolic Instruction Code) is a general-purpose high-level language from the 1960s. PuffinBASIC is an implementation of the BASIC language specification. PuffinBASIC conforms most closely to GWBASIC. The purpose of this implementation is to learn how to write interpreters and resurrect an old programming language to work in modern ecosystem. The interpreter is evolving fast and in near future, I wish to apply modern interpreter building techniques to it. How it works? 1. PuffinBASIC's…
What it does
In the maker’s words, at launch
GitHub: https://github.com/mayuropensource/PuffinBASIC BASIC (Beginners' All-purpose Symbolic Instruction Code) is a general-purpose high-level language from the 1960s. PuffinBASIC is an implementation of the BASIC language specification. PuffinBASIC conforms most closely to GWBASIC. The purpose of this implementation is to learn how to write interpreters and resurrect an old programming language to work in modern ecosystem. The interpreter is evolving fast and in near future, I wish to apply modern interpreter building techniques to it. How it works? 1. PuffinBASIC's grammar is defined using antlr4. 2. At runtime, the user source code is parsed using antlr4 lexer+parser. 3. After parsing, an intermediate representation (IR) of the source code is generated. A symbol table keeps track of variables, scalars, arrays, etc. objects. 4. A runtime, processes the IR instructions and executes them. Performance PuffinBASIC is an interpreter, and it should not be expected to have very good performance characteristics. Certain operations such as PRINT USING, INPUT, etc. are not optimized for performance. I have not benchmarked PuffinBASIC primitives. That being said, we have written games with graphics in PuffinBASIC is work very well. TESSEL - A 2D Tile Game written in PuffinBASIC Source: https://github.com/mayuropensource/PuffinBASIC/blob/master/s... Link to YouTube video demo: https://youtu.be/L8xkM-g3Zms Memory PuffinBASIC runs within a JVM and can use as much memory as available for the JVM process. Compatibility PuffinBASIC is mostly compatible with Microsoft's GWBASIC. Graphics is supported using Java 2D graphics. PuffinBASIC will not support assembly instructions. Data Types PuffinBASIC has extended BASIC types and supports Int32, Int4, Float32, Float64, and String. Reference: https://github.com/mayuropensource/PuffinBASIC
Does the same job
all alternatives →- IVI've built a BASIC interpreter with DOS-like features for the web2021 · ▲8
Hi everyone, When the pandemic started, I put QuickBASIC in front of my kids and could see them enjoy toying with writing some simple programs. Since then, I've been working on a side project to build a similar experience using modern technologies, with the goal of having a tool to teach the foundations of programming to (my own) kids. This is what EndBASIC is: is a retro-looking, BASIC interpreter with DOS-like features -- built for the web. The environment is designed to be minimalist in an attempt to reproduce the computing experience of the 1980s where the computers were simpler to…
- SASilk, a simple systems programming language2020 · ajaymt.github.io · ▲79
Hi HN! Silk is a project I began working on approximately six months ago without any prior experience or knowledge of compiler design, and it's been a frustrating but fun learning experience. It is very much a work in progress, but I would love to hear feedback of any kind!
- LILisp implementation in modern Java, Go, C#, TypeScript, Python2021 · github.com · ▲128

- SBSpaCy – Build tomorrow's language technology products with Python2015 · spacy.io · ▲93
LunarBasic, a BASIC that compiles 2D games to native executables12d ago · lunarbasic.com · ▲6I built LunarBasic because I wanted a modern recreation of BlitzBasic from back in the day. I wanted it to have good step debugging features, and I wanted it to compile down to a native binary with no external dependencies. I do know there's an open source BlitzBasic out there but I wanted something simpler and more concise. It does have a "pro" feature set, but for the foreseeable future, anyone joining up will have the pro version in perpetuity (eg I'm not trying to sell anything here). It's early (v0.8.0). Would love feedback on the language design and compiler output, especially from…
More dev tools this month
the category →



Open-source GTM skills for technical founders
Dev tools · 29d ago · gtmcofounder.com

OpenTrailPaper is open-source bike computer firmware for the LilyGO T5S3 4.7" E-Paper PRO. It supports offline maps, GPX routes, FIT recording and Bluetooth sensors.
Dev tools · 1d ago · opentrailpaper.com

Launched alongside, August 2020
the whole month →
- IB
Life & fun · 2020 · storycreatorapp.com



