Skip to content
Wang Renxin edited this page Jul 7, 2018 · 20 revisions

Get started

Q: What is MY-BASIC?

A: MY-BASIC is a lightweight cross-platform easy extendable interpreted BASIC implementation; It's cleanly implemented in standard C. It is aimed to be either an embeddable scripting language or a standalone interpreter.

Q: Why use MY-BASIC?

A: MY-BASIC is tiny, easy to embed and use, its grammar is friendly to newcomers, its features are flexible to experienced users, its C API is elaborately designed. You could play with it for a minute, it won't take you much time to tell whether MY-BASIC fits your requirements.

Q: Where can I learn some basic syntax about MY-BASIC?

A: Necessary introductions are available in the MY-BASIC Quick Reference. MY-BASIC is a dynamic typed programming language. It supports structured syntax, and implements a style of OOP called prototype-based programming paradigm, furthermore it offers a functional programming ability with lambda abstraction. It supports common modern programming concepts. Experiences on any other BASIC dialects or other programming languages would be helpful to understand and think in MY-BASIC.

Q: Where can I get some sample code?

A: There are some samples come along with the repository, it's available in the sample folder.

Q: How is MY-BASIC documented?

A: You can download a latest MY-BASIC Quick Reference, it's a reference handbook for quick lookup. Some other principles, patterns and practices are documented on the Wiki.

History

Q: Where did MY-BASIC come from?

A: I created MY-BASIC for my own need; I'm a video game developer, before making MY-BASIC, I had been working with some other scripting libraries painfully. Then I decided to make my own scripting language in a clear way. The syntax of MY-BASIC refers to the famous BASIC family because it was the primer language when I taught myself programming. I tend to make it easy to use, to embed, to maintain and to read, and keeps the source open, free to use.

Programming

Q: What platforms does MY-BASIC support?

A: Since MY-BASIC is written in C, I can almost say MY-BASIC supports all platforms with a C compiler. Except some really old compilers which cannot even load the source code completely. MY-BASIC has been successfully compiled and tested with some common compilers, such as GCC, Clang, TCC, PellesC, BCB, VC++, etc. It won't be difficult to resolve compiling errors with other compilers which I haven't tested with, changing the including of header files and substituting with equivalent library functions will solve some platform depended problems most of the time.

Q: How can I use MY-BASIC as a standalone interpreter?

A: The compiled binaries for Windows and macOS are available in the output folder. It is also easy to build executable for your own platforms from source code.

Q: How can I use MY-BASIC as an embedded scripting language?

A: MY-BASIC is implemented in a header file and a C source file, the easiest way to integrate MY-BASIC to your program is to copy these files to your project and compile it; or you may link MY-BASIC as a static/dynamic library.

Q: How about programming libraries?

A: MY-BASIC supplies a small set of frequently used functions as a standard library which offers some fundamental numeric, string and collection functions. You can see the "Core and Standard Libraries" and "Collection Libraries" section in the MY-BASIC Quick Reference for details. See also the Wiki page.

Others

Q: How can I get technical support?

A: Feel free to email me directly.

Q: How can I support MY-BASIC development?

A: Even though you can use MY-BASIC free under the MIT license, you could support MY-BASIC development with a donation. your kindness is appreciated.

Clone this wiki locally