@@ -7,7 +7,7 @@ This is an experimental native compiler/backend for [PureScript](https://github.
7#### Performance
7#### Performance
9* No runtime system (beyond some support classes and the standard C++11 runtime library)
9* No runtime system (beyond some support classes and the standard C++11 runtime library)
10−* For automatic memory management, uses either the [Boehm-Demers-Weiser Garbage Collector](http://hboehm.info/gc/) (the default), or C++11's standard library reference counting (`std::shared_ptr`) -- **selectable when building** (see instructions below)
10+* For automatic memory management, uses either native C++11 reference counting (`std::shared_ptr`), or the [Boehm-Demers-Weiser Garbage Collector](http://hboehm.info/gc/) -- **selectable when building** (see instructions below)
11* Uses PureScript's normal tail call optimizations for generated C++11 code
11* Uses PureScript's normal tail call optimizations for generated C++11 code
13#### Differences from PureScript:
13#### Differences from PureScript:
@@ -95,7 +95,7 @@ This assumes you are running OS X or a Unix-like system (Linux, *BSD, etc.), and
961. Make sure you have developer tools for your system installed. For OS X, you'll need a recent version of Xcode. For Linux, etc., you need gcc 4.9.2 or later, including g++ support. You can also use clang 3.5 or later, but it still requires gcc for its C++ standard libraries.
961. Make sure you have developer tools for your system installed. For OS X, you'll need a recent version of Xcode. For Linux, etc., you need gcc 4.9.2 or later, including g++ support. You can also use clang 3.5 or later, but it still requires gcc for its C++ standard libraries.
98−2. If you wish to use the Boehm garbage collector (better runtime performance, in general), install it for your system. For OS X, [brew](http://brew.sh/) is an easy method and recommended (package `bdw-gc`). For linux, it's available under package names such as `libgc-dev` (for Debian/Ubuntu).
98+2. If you wish to use the Boehm garbage collector (better runtime performance, in general, but less tested), install it for your system. For OS X, [brew](http://brew.sh/) is an easy method and recommended (package `bdw-gc`). For linux, it's available under package names such as `libgc-dev` (for Debian/Ubuntu).
1003. Create a working directory wherever you like, and a `src` subdirectory under it, which will be where you will place your own PureScript source files.
1003. Create a working directory wherever you like, and a `src` subdirectory under it, which will be where you will place your own PureScript source files.
@@ -106,7 +106,7 @@ This assumes you are running OS X or a Unix-like system (Linux, *BSD, etc.), and
1066. You should now be ready to build a PureScript program.
1066. You should now be ready to build a PureScript program.
107 * As stated above, place your source file(s) in the working directory's `src` subdirectory and execute `make`. If your machine has multiple cores, you might want to use `make -jN`, where `N` is the number of cores.
107 * As stated above, place your source file(s) in the working directory's `src` subdirectory and execute `make`. If your machine has multiple cores, you might want to use `make -jN`, where `N` is the number of cores.
109− * To use reference counting (`std::shared_ptr`) instead of the garbage collector, add `GC=no` to the `make` command line (or you can modify the `Makefile` that you generated in step 4).
109+ * To use the garbage collector, add `GC=yes` to the `make` command line (or you can modify the `Makefile` that you generated in step 4).
111 * This will generate the C++ source tree for your program and then build an executable binary. The resulting executable will be in the `bin` subdirectory under the output directory and called `main` (so `output/bin/main`, by default).
111 * This will generate the C++ source tree for your program and then build an executable binary. The resulting executable will be in the `bin` subdirectory under the output directory and called `main` (so `output/bin/main`, by default).