Description
Think Smalltalk in a Lua-sized package with a dash of Erlang and wrapped up in a familiar, modern syntax.
Wren alternatives and similar libraries
Based on the "Scripting" category.
Alternatively, view Wren alternatives based on common mentions on social networks and blogs.
-
ChakraCore
ChakraCore is an open source Javascript engine with a C API. [Moved to: https://github.com/chakra-core/ChakraCore] -
SWIG
SWIG is a software development tool that connects programs written in C and C++ with a variety of high-level programming languages. -
Duktape
Duktape - embeddable Javascript engine with a focus on portability and compact footprint -
sol2
Sol3 (sol2 v3.0) - a C++ <-> Lua API wrapper with advanced features and top notch performance - is here, and it's great! Documentation: -
djinni
A tool for generating cross-language type declarations and interface bindings. [Apache2] -
Lua
Lua is a powerful, efficient, lightweight, embeddable scripting language. It supports procedural programming, object-oriented programming, functional programming, data-driven programming, and data description. -
nbind
:sparkles: Magical headers that make your C++ library accessible from JavaScript :rocket: -
shpp
Call c++ functions from a shell with any arguments of any types parsed automatically -
Boost.Python
A C++ library which enables seamless interoperability between C++ and the Python programming language. [Boost]
InfluxDB - Power Real-Time Data Analytics at Scale
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of Wren or a related project?
Popular Comparisons
README
Wren is a small, fast, class-based concurrent scripting language
Think Smalltalk in a Lua-sized package with a dash of Erlang and wrapped up in a familiar, modern syntax.
System.print("Hello, world!")
class Wren {
flyTo(city) {
System.print("Flying to %(city)")
}
}
var adjectives = Fiber.new {
["small", "clean", "fast"].each {|word| Fiber.yield(word) }
}
while (!adjectives.isDone) System.print(adjectives.call())
Wren is small. The VM implementation is under 4,000 semicolons. You can skim the whole thing in an afternoon. It's small, but not dense. It is readable and lovingly-commented.
Wren is fast. A fast single-pass compiler to tight bytecode, and a compact object representation help Wren compete with other dynamic languages.
Wren is class-based. There are lots of scripting languages out there, but many have unusual or non-existent object models. Wren places classes front and center.
Wren is concurrent. Lightweight fibers are core to the execution model and let you organize your program into an army of communicating coroutines.
Wren is a scripting language. Wren is intended for embedding in applications. It has no dependencies, a small standard library, and an easy-to-use C API. It compiles cleanly as C99, C++98 or anything later.
If you like the sound of this, let's get started. You can even try it in your browser! Excited? Well, come on and get involved!