当前位置:网站首页>My-basic application 1: introduction to my-basic parser
My-basic application 1: introduction to my-basic parser
2022-07-05 08:03:00 【Changjiang houlang blog】
MY-BASIC is a lightweight BASIC interpreter written in standard C in dual files.
//MY-BASIC It's a lightweight BASIC Interpreter , Using standard C Language is written in two files .
It's aimed to be embeddable, extendable and portable.
// Its goal is to be embeddable 、 Scalable and portable .
It is a dynamic typed programming language,reserves structured syntax,
// It's a dynamically typed programming language , Preserve structured syntax
supports a style of prototype-based programming (OOP),
// Support a prototype based programming style (OOP)
also implements a functional paradigm by lambda abstraction.
// And through lambda Abstract realization of function paradigm .
The core is written in a C source file and an associated header file.
// The core is in a C Source file and a related header file .
It's easy to either use it as a standalone interpreter or embed it with existing projects in C, C++, Java, Objective-C, Swift, C#, etc.
and totally customizable by adding your own scripting interfaces.
It can be used as an independent interpreter ,
It can also be embedded into existing C、c++、Java、Objective-C、Swift、c# Etc ,
And it can be completely customized by adding its own script interface .
Main features
Main features
MY-BASIC offers a wide range of features including:
MY-BASIC Provide a wide range of functions , as follows :
Written in standard C, source code is portable to a dozen of platforms
// Using standard C The source code can be ported to more than a dozen platforms
Lightweight (within less than 128KB footprint), fast, and configurable
// Lightweight ( Less than 128KB Memory footprint )、 Fast and configurable
With both retro and modern BASIC syntax
// With retro and modern basic grammar
Case-insensitive tokenization, and many other indelible BASIC flavour
// Case insensitive tags , And many others BASIC Indelible elements
Unicode support
//Unicode Support
Prototype-based programming, with reflection support
// Prototype based programming , Support reflection
Lambda abstraction enhanced functional programming
//Lambda Abstraction enhances functional programming
Customizable referenced/non-referenced usertype
// Customizable references / Non reference usertype
Collection construction and manipulation functions for LIST and DICT
// For lists and DICT Set construction and operation functions of
Automatic releasing for referenced values (prototype, lambda, referenced usertype, list, dictionary, etc.) benefited from reference counting and garbage collection
// For reference value ( Prototype 、lambda、 Refer to the usertype、 list 、 Dictionary, etc ) The automatic release of benefits from reference counting and garbage collection
Common numeric and string functions
// Common numeric and string functions
Structured sub routine definition with the DEF/ENDDEF statements
// Use DEF/ENDDEF Statement defines a structured subroutine
Structured IF/THEN/ELSEIF/ELSE/ENDIF
// structure :IF/THEN/ELSEIF/ELSE/ENDIF
Structured FOR/TO/STEP/NEXT, FOR/IN/NEXT, WHILE/WEND, DO/UNTIL
// structure :FOR/TO/STEP/NEXT, FOR/IN/NEXT, WHILE/WEND, DO/UNTIL
Reserved retro GOTO, GOSUB/RETURN
// Preserved retro GOTO, GOSUB/RETURN
Importing multiple source files with the IMPORT statement
// Use IMPORT Statement to import multiple source files
Debug API
// debugging API
Customizable memory pool
// Customizable memory pool
Easy API, for extending new BASIC functions
// ordinary API, Used to extend new basic functions
Easy interacting BASIC facilities at native side, and vice versa
// Easy to interact with basic facilities on the local side , vice versa
More features under development
// More features are under development
边栏推荐
- VESC Benjamin test motor parameters
- Global and Chinese markets of nano biosensors 2022-2028: Research Report on technology, participants, trends, market size and share
- 找不到实时聊天软件?给你推荐电商企业都在用的!
- How to migrate the device data accessed by the RTSP of the easycvr platform to easynvr?
- Altium designer 19.1.18 - clear information generated by measuring distance
- Measurement fitting based on Halcon learning [II] meaure_ pin. Hdev routine
- Train your dataset with yolov4
- Connection mode - bridge and net
- Some thoughts on extracting perspectives from ealfa and Ebeta
- Global and Chinese market of peeled bourdon tubes 2022-2028: Research Report on technology, participants, trends, market size and share
猜你喜欢

The printer encountered an abnormal configuration problem 0x8007007e (win10)

C, Numerical Recipes in C, solution of linear algebraic equations, LU decomposition source program

MLPerf Training v2.0 榜单发布,在同等GPU配置下百度飞桨性能世界第一

Semiconductor devices (III) FET
![C WinForm [display real-time time in the status bar] - practical exercise 1](/img/9f/d193cbb488542cc4c439efd79c4963.jpg)
C WinForm [display real-time time in the status bar] - practical exercise 1

Beijing Winter Olympics opening ceremony display equipment record 3

Altium designer 19.1.18 - Import frame

导电滑环磨损快的原因

A simple method to prove 1/t Fourier transform

Semiconductor devices (I) PN junction
随机推荐
C WinForm [display real-time time in the status bar] - practical exercise 1
Arduino uses nrf24l01+ communication
Markdown tips
C WinForm [view status bar -- statusstrip] - Practice 2
生产中影响滑环质量的因素
Global and Chinese markets for medical oxygen machines 2022-2028: Research Report on technology, participants, trends, market size and share
Improve lighting C program
Wifi-802.11 negotiation rate table
PMSM dead time compensation
1-stm32 operation environment construction
Create inf module in AMI code
Process communication mode between different hosts -- socket
Cadence learning records
Acwing - the collection of pet elves - (multidimensional 01 Backpack + positive and reverse order + two forms of DP for the answer)
LED display equipment records of the opening ceremony of the Beijing Winter Olympics
Some errors in configuring the environment
Makefile application
Halcon's practice based on shape template matching [2]
Communication standard -- communication protocol
Vofa+ software usage record