wren

C/C++ 2025-08-11

wren是一种小型,快速,基于班级的并发脚本语言

在Lua大小的包装中思考Smalltalk,上面有一点点Erlang,并包裹在熟悉的现代语法中。

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())">
 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很小。 VM实施不到4,000分钟。您可以在下午浏览整个事情。它很小,但不密集。它是可读和精心挑选的。

  • wren很快。一个快速的单通信编译器以紧密的字体模式,紧凑的对象表示wren与其他动态语言竞争。

  • wren是基于班级的。那里有很多脚本语言,但是许多语言具有不寻常或不存在的对象模型。 wren将课程放置在前面和中心。

  • wren是并发的。轻量级纤维是执行模型的核心,让您将程序组织成一支交流的Coroutines大军。

  • wren是一种脚本语言。 wren旨在嵌入应用程序中。它没有依赖关系,一个小标准库和易于使用的C API。它以C99,C ++ 98或以后的任何内容而干净地编译为C99。

如果您喜欢这样的声音,让我们开始。您甚至可以在浏览器中尝试!兴奋的?好吧,快来参与进来!

下载源码

通过命令行克隆项目:

git clone https://github.com/wren-lang/wren.git