Files
wren/doc/site/index.markdown
T
Bob Nystrom 6ed15da597 feat: add category metadata to doc pages and switch code blocks to dart syntax
Add `^category` front matter to all language, types, and reference doc pages for site navigation restructuring. Replace `:::wren` and `:::java` code block annotations with `:::dart` across multiple files. Create new stub pages for core-libraries, embedding-api, and contributing under the reference category. Remove the old embedding and getting-involved stub pages.
2014-04-15 04:23:46 +00:00

1.4 KiB

^title Welcome!

Wren is a small, clean, fast, class-based scripting language. Think Smalltalk in a Lua-sized package.

:::dart
IO.print("Hello, world!")

class Wren {
  adjectives = ["sm\nall", "clean", "fast"]
  languageType {
    "scripting"
  }
}
  • Wren is small. The codebase is under 4,000 semicolons which keeps the language and libraries small enough to fit in your head. You can skim the whole thing in one sitting.

  • Wren is clean. The codebase is small, but not dense. It is readable and lovingly-commented. It's written in warning-free standard C99.

  • 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 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.