2015-09-08 13:38:09 +08:00
2014-11-20 00:51:18 +08:00
2015-09-07 09:41:15 +08:00
2015-09-08 13:27:49 +08:00
2015-09-07 09:41:15 +08:00
2014-11-20 00:51:18 +08:00
2015-09-08 13:38:09 +08:00
2014-11-20 00:51:18 +08:00

Copyright (C) 2011 - 2015 Wang Renxin

LinkedIn

Why are existing script interpreters so complex? Why is it so difficult to integrate with them? Why not try MY-BASIC today!

Introduction

MY-BASIC is a tiny cross-platform easy extendable BASIC interpreter written in pure C with about 7000 lines of source code. Its grammar is similar to structured BASIC. It is aimed to be either an embeddable scripting language or a standalone interpreter. The core is pretty light; all in a C source file and an associated header file. You can combine MY-BASIC with an existing C, C++, Objective-C, etc. project easily, scripting driven can make your projects more powerful, elegant and neat.

Main features

  • It is free
  • Written in clean ANSI C, source code portable
  • With most common BASIC syntax
  • Small (within memory usage less than 128KB) and fast
  • Case-insensitive tokenization
  • Integer, float point, string, boolean, user defined data types with array support, etc.
  • Structured IF-THEN-ELSEIF-ELSE-ENDIF support
  • Structured FOR-TO-STEP-NEXT/WHILE-WEND/DO-UNTIL support
  • Structured user costomized sub routine definition by DEF/ENDDEF support
  • GOTO/GOSUB-RETURN support
  • Standard numeric functions
  • Standard string functions
  • Debug APIs
  • High expansibility, easy to use APIs, easy to write customized scripting interfaces
  • It's able to use it as a standalone interpreter, or integrate it with existing C, C++, Objective-C, etc. projects
  • It's able to learn how to build an interpreter from scratch from MY-BASIC
  • It's able to build your own dialect based on MY-BASIC
  • More features/modules under developing

Interpreter workflow diagram

Installation

Use standalone interpreter binary

This repository contains precompiled binaries for Windows and OS X, it's efficient to download it and have a first impressive playground.

To compile an interpreter binary for your own platform, please follow the steps.

  • Retrieve at least core and shell folders for minimum build
  • Setup your compile toolchain configuration
  • Use your compiler to compile core/my_basic.c and shell/main.c, including core/my_basic.h is required for both source files, then link up your own executable

Combine with exist projects

MY-BASIC is cleanly written in a single C source file and an associated header file. Just copy my_basic.c and my_basic.h to your project folder and add them to a build configuration.

You can definitely link with MY-BASIC as a lib as well.

For more details about using MY-BASIC when it's already integrated with exist projects, please see MY-BASIC Quick Reference.

WIKI

References


You can support MY-BASIC development with a donation:
paypal

Description
No description provided
Readme MIT 32 MiB
Languages
C 99%
HTML 0.8%