forked from Mirror/wren
Update docs to mention libuv.
This commit is contained in:
@ -19,9 +19,9 @@ var adjectives = Fiber.new {
|
|||||||
while (!adjectives.isDone) IO.print(adjectives.call())
|
while (!adjectives.isDone) IO.print(adjectives.call())
|
||||||
```
|
```
|
||||||
|
|
||||||
* **Wren is small.** The codebase is about [7,000 lines][src]. You can
|
* **Wren is small.** The VM implementation is under [4,000 semicolons][src].
|
||||||
skim the whole thing in an afternoon. It's *small*, but not *dense*. It
|
You can skim the whole thing in an afternoon. It's *small*, but not
|
||||||
is readable and [lovingly-commented][nan].
|
*dense*. It is readable and [lovingly-commented][nan].
|
||||||
|
|
||||||
* **Wren is fast.** A fast single-pass compiler to tight bytecode, and a
|
* **Wren is fast.** A fast single-pass compiler to tight bytecode, and a
|
||||||
compact object representation help Wren [compete with other dynamic
|
compact object representation help Wren [compete with other dynamic
|
||||||
|
|||||||
@ -49,7 +49,7 @@ The basic process is simple:
|
|||||||
If there are no failures, you're good to go.
|
If there are no failures, you're good to go.
|
||||||
|
|
||||||
2. **[Fork the repo][fork] so you can change it locally.** Please make your
|
2. **[Fork the repo][fork] so you can change it locally.** Please make your
|
||||||
changes in a separate [feature branches][] to make things a little easier on
|
changes in separate [feature branches][] to make things a little easier on
|
||||||
me.
|
me.
|
||||||
|
|
||||||
3. **Change the code.** Please follow the style of the surrounding code. That
|
3. **Change the code.** Please follow the style of the surrounding code. That
|
||||||
@ -69,8 +69,9 @@ The basic process is simple:
|
|||||||
fun open source project! I'll take it from here and hopefully we'll get it
|
fun open source project! I'll take it from here and hopefully we'll get it
|
||||||
landed smoothly.
|
landed smoothly.
|
||||||
|
|
||||||
If at any point you have questions, feel free to [file an issue][issue] or
|
If at any point you have questions, feel free to [file an issue][issue] or ask
|
||||||
email me (`robert` at `stuffwithstuff.com`). *Thank you!*
|
on the [mailing list][list]. You can also email me directly (`robert` at
|
||||||
|
`stuffwithstuff.com`) if you want something less public. *Thank you!*
|
||||||
|
|
||||||
[mit]: http://opensource.org/licenses/MIT
|
[mit]: http://opensource.org/licenses/MIT
|
||||||
[github]: https://github.com/munificent/wren
|
[github]: https://github.com/munificent/wren
|
||||||
|
|||||||
@ -1,8 +1,22 @@
|
|||||||
^title Getting Started
|
^title Getting Started
|
||||||
|
|
||||||
Getting Wren up and running on your machine should be pretty straightforward.
|
Getting Wren up and running on your machine should be pretty straightforward.
|
||||||
Tiny C programs with no dependencies are nice that way. If you're on a Unix or
|
Tiny C programs with few dependencies are nice that way. "Wren" encompasses two
|
||||||
Mac and you can rock a command line, it's just:
|
separate artifacts:
|
||||||
|
|
||||||
|
* **The virtual machine.** This is the core chunk of C that executes Wren
|
||||||
|
source code. It is just a library, not a standalone application. It's
|
||||||
|
designed to be [embedded][] in a larger host application. It has no dependencies beyond the C standard library. You can is use as a static library, shared library, or simply compile the source into your app.
|
||||||
|
|
||||||
|
* **The command line executable.** Wren also ships with a CLI wrapper around
|
||||||
|
the VM. This gives you a way to run Wren code from the command-line, and
|
||||||
|
also includes modules for talking to the operating system. It depends on
|
||||||
|
[libuv][] for that.
|
||||||
|
|
||||||
|
[embedded]: embedding-api.html
|
||||||
|
[libuv]: http://libuv.org/
|
||||||
|
|
||||||
|
If you're on a Unix or Mac and you can rock a command line, it's just:
|
||||||
|
|
||||||
:::bash
|
:::bash
|
||||||
$ git clone https://github.com/munificent/wren.git
|
$ git clone https://github.com/munificent/wren.git
|
||||||
@ -10,6 +24,8 @@ Mac and you can rock a command line, it's just:
|
|||||||
$ make
|
$ make
|
||||||
$ ./wren
|
$ ./wren
|
||||||
|
|
||||||
|
This builds both the VM and the CLI. It downloads libuv automatically for you.
|
||||||
|
The release build of the CLI goes right into the repo's top level directory.
|
||||||
Binaries for other configurations are built to `bin/`. Static and shared
|
Binaries for other configurations are built to `bin/`. Static and shared
|
||||||
libraries for embedding Wren get built in `lib/`.
|
libraries for embedding Wren get built in `lib/`.
|
||||||
|
|
||||||
@ -18,6 +34,14 @@ Windows brethren, `project/msvc2013` contains a Visual Studio solution. Note
|
|||||||
that these may not have the exact same build settings as the makefile. The
|
that these may not have the exact same build settings as the makefile. The
|
||||||
makefile is the "official" way to compile Wren.
|
makefile is the "official" way to compile Wren.
|
||||||
|
|
||||||
|
If you only want to build the VM, you can do:
|
||||||
|
|
||||||
|
:::bash
|
||||||
|
$ make vm
|
||||||
|
|
||||||
|
This will compile the VM to static and shared libraries. It will not even
|
||||||
|
download libuv since it isn't needed.
|
||||||
|
|
||||||
## Interactive mode
|
## Interactive mode
|
||||||
|
|
||||||
The above instructions will drop you into Wren's standalone interpreter in
|
The above instructions will drop you into Wren's standalone interpreter in
|
||||||
|
|||||||
@ -20,9 +20,9 @@ a familiar, modern [syntax][].
|
|||||||
|
|
||||||
while (!adjectives.isDone) IO.print(adjectives.call())
|
while (!adjectives.isDone) IO.print(adjectives.call())
|
||||||
|
|
||||||
* **Wren is small.** The codebase is about [7,000 lines][src]. You can
|
* **Wren is small.** The VM implementation is under [4,000 semicolons][src].
|
||||||
skim the whole thing in an afternoon. It's *small*, but not *dense*. It
|
You can skim the whole thing in an afternoon. It's *small*, but not
|
||||||
is readable and [lovingly-commented][nan].
|
*dense*. It is readable and [lovingly-commented][nan].
|
||||||
|
|
||||||
* **Wren is fast.** A fast single-pass compiler to tight bytecode, and a
|
* **Wren is fast.** A fast single-pass compiler to tight bytecode, and a
|
||||||
compact object representation help Wren [compete with other dynamic
|
compact object representation help Wren [compete with other dynamic
|
||||||
|
|||||||
Reference in New Issue
Block a user