Blunt Axe Basic: Let's Build a Scripting Engine-Compiler

Blunt Axe Basic: Let's Build a Scripting Engine-Compiler

This book is presented as a programming tutorial, to develop and construct a Console Mode Scripting Engine and Byte Code Compiler for Bxbasic dialect, a subset of the GW-Basic and QBasic programming languages. Complete source code is also available.

Publication date: 31 Dec 2009

ISBN-10: n/a

ISBN-13: n/a

Paperback: n/a

Views: 24,209

Type: N/A

Publisher: n/a

License: n/a

Post time: 19 Jan 2009 06:23:40

Blunt Axe Basic: Let's Build a Scripting Engine-Compiler

Blunt Axe Basic: Let's Build a Scripting Engine-Compiler This book is presented as a programming tutorial, to develop and construct a Console Mode Scripting Engine and Byte Code Compiler for Bxbasic dialect, a subset of the GW-Basic and QBasic programming languages. Complete source code is also available.
Tag(s): Compiler Design and Construction
Publication date: 31 Dec 2009
ISBN-10: n/a
ISBN-13: n/a
Paperback: n/a
Views: 24,209
Document Type: N/A
Publisher: n/a
License: n/a
Post time: 19 Jan 2009 06:23:40
Excerpts from the Book:

Steve Arbayo wrote:What is Bxbasic ?

Bxbasic is presented as a programming tutorial, to develop and construct a Console Mode Scripting Engine and Byte Code Compiler. The Bxbasic dialect, included here, is a subset of the GW-Basic and QBasic programming languages.

Steve Arbayo wrote:Like so many others, I experimented with the various dialects of Basic now available, with mixed results. Some Basics claimed to be nearly QBasic, others claimed to need only minimal rewriting. Some were available for 'free' while others cost quite a hefty chunk. Some of the so-called 'free' ones ended up really being crippled or minimal versions of a commercially available full featured product. Rapid-Q, one that I thought I liked (and so did a lot of other people) ended up requiring a full 50% rewrite before I could get any pre-existing code to run on it. And then, it didn't do all the things I needed it to do.

One day, some one suggested that maybe we should try to develop our own version of QBasic. If we could do that, then we would control what it did, what it didn't do and what it might do. So, after spending a few years learning what you need to know about writing interpreters and compilers, I began writing Bxbasic. From that point forward, in my spare time, I’ve been slogging through it. Writing code and finding out what worked and what didn't and finding out why not. Little by little, I started putting together the beginnings of a QBasic like scripting engine (interpreter). I needed to start with what I considered the most rudimentary aspects of the "Console Mode" GW-Basic and QBasic dialects.

Anyway, I figured I'd start with a "Console Mode" scripting engine-compiler and work up gradually, to bigger and better things. I'd add features a little at a time and eventually build this into something I might actually be able to use. That's where we are now.

Steve Arbayo wrote:Why Basic ?

Just about everyone who programs, knows Basic and how it should behave under most circumstances. Despite the fact that there are dozens of new languages out there these days, Basic is by no means an obsolete language nor is it a language only for beginners. Besides, as I've learned, once you have the basic principles of a given language down, you can easily retarget it to any other language of your choosing by simple redefining the language parameters, which as you will see is not that hard to do.

I coined the term "blunt axe basic" and call this language Bxbasic, (which I refer to here simply as Bxb).




About The Author(s)


No information is available for this author.

Steve Arbayo

No information is available for this author.


Book Categories
Sponsors
Icons8, a free icon pack