Skip to content

liufeigit/Van-lang

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Van

Embeddable and extend script language in C.

A functional-programming and object-oriented-programming script language.

A simple and efficient script language.

Overview


Van is a script language, implement in ANSI C.

Van as a script language, it can be used as glue to decoupling complex business logic.

Van language features include A concise type system,Object-oriented,Function Closure,Coroutine,etc.

Van language design purpose is to facilitate embedding and extend, to facilitate interaction with C, and to decouple complex business.

Notice

Currently in the state of development and testing,documentation and functionality are still being refined and the release version will be released in the near future.

Test Use

If you are interested, you can now test and use,submit suggestions and bugs.

usage

$ cd Van
$ chmod +x ./build.sh 
$ ./build.sh

now genrate van and libvan.so file.

you can use van interpreter .van file in vanTest directory, for example

$ ./van ./vanTest/van_assign.van
$ ./van ./vanTest/van_class.van
$ ./van ./vanTest/van_exp.van
$ ./van ./vanTest/van_function.van
$ ./van ./vanTest/van_if.van
...

you can use libvan.so write language extend, if you interpreter van_extend.van,for example

$ clang -g -fPIC -shared  -L. -lvan ./External/extendTest1.c -o ./External/libextendTest1.so
$ clang -g -fPIC -shared  -L. -lvan ./External/extendTest2.c -o ./External/libextendTest2.so

now you can use extend sub and sub2 in .van file

Welcome to join

I look forward to your participation in Van language design and development.

____    ____  ___      .__   __. 
\   \  /   / /   \     |  \ |  | 
 \   \/   / /  ^  \    |   \|  | 
  \      / /  /_\  \   |  . `  | 
   \    / /  _____  \  |  |\   | 
    \__/ /__/     \__\ |__| \__| 
    
   Welcome to join Van project                                                  

If you have good ideas and suggestions,contact me , welcome to improve and transform Van language.

Contributing

License


Van project is available MIT License.

Releases

No releases published

Packages

No packages published

Languages