Cyberscript

dtj11232 pts0 comments

Cyber - Fast and concurrent scripting.

v0.3<br>Cyber is a new language for

fast, efficient, and concurrent scripting.

Install<br>Release Notes

At a glance.

Easy to learn.

Dynamic and static types.

Concurrency with fibers.

Memory safe.

FFI and Embeddable.

Fast VM and JIT.

Cross platform.

use math

var worlds = ['World', '世界', 'दुनिया']<br>worlds.append(math.random())<br>for worlds -> w:<br>print "Hello, $(w)!"

-- Optional static typing.<br>func fib(n int) int:<br>coyield<br>if n

Use cases.

Cyber wants to provide fast and delightful scripting.<br>The compiler and VM can be embedded into applications, games, and engines.

The CLI app can run scripts on desktops and servers.

Performance.

Cyber is fast on various benchmarks.<br>The language was designed with performance in mind from the start.<br>See more Benchmarks or read more about Performance.

Recursive Fibonacci (VM) source

This tests how fast function calls are with a growing call stack.

cyber

19ms

2.9 MB

luajit

21ms

1.4 MB

wasm3

31ms

1.4 MB

luau

34ms

2.1 MB

lua

39ms

1.3 MB

quickjs

57ms

1.9 MB

wren

71ms

1.5 MB

java

44ms

31ms

35.2 MB

python3

70ms

15ms

10.2 MB

ruby

54ms

31ms

29.6 MB

node

56ms

39ms

31.9 MB

Recursive Fibonacci (JIT) source

cyber

5ms

2.9 MB

luajit

5ms

1.6 MB

luau

20ms

2.3 MB

java

3ms

31ms

38.3 MB

node

6ms

35ms

34.0 MB

ruby-yjit

13ms

30ms

30.1 MB

Showing script time (orange), load time (gray), and peak memory usage.

Features.

To get a comprehensive overview of the language and its features, see the Documentation.

Interop.

libcyber allows Cyber to be embedded into your applications.<br>Cyber's CLI and core library were built using libcyber.

The FFI API allows your scripts to use any C-ABI compatible library.<br>cbindgen.cy was also created as a tool to automatically generate full bindings from just a C header file. Some example bindings include Raylib and LLVM.

Support us.

Cyber is still evolving so ideas are always welcome! Feel free to file issues on GitHub or hop on over to our Discord.

If you're feeling generous, consider supporting the project via Github Sponsors or Patreon!

cyber fast 31ms scripting language worlds

Related Articles