@@ -1,10 +1,10 @@
1[](http://purescript.org)
1[](http://purescript.org)
3−This is an experimental native compiler/backend for [PureScript](https://github.com/purescript/purescript). It attempts to generate "sane", performant, and portable C++11 code as an intermediate language, which is then compiled to a native executable binary. This enables easy interoperability with existing C/C++ frameworks and libraries on a number of platforms.
3+This is an experimental C++11/native compiler backend for [PureScript](https://github.com/purescript/purescript). It attempts to generate "sane", performant, and portable C++11 code as an intermediate language, which is then compiled to a native executable binary. This enables easy interoperability with existing C/C++ frameworks and libraries on a number of platforms.
7−### **Please note that this project and [pure11](https://github.com/pure11/pure11) are now the same**
7+### **Please note that projects [purescript-native](https://github.com/andyarvanitis/purescript-native) and [pure11](https://github.com/pure11/pure11) are now the same**
@@ -19,7 +19,7 @@ This is an experimental native compiler/backend for [PureScript](https://github.
19* Foreign imports are C++11 (or C) instead of JavaScript ([FFI examples](https://github.com/pure11/pure11/wiki/FFI_Examples))
19* Foreign imports are C++11 (or C) instead of JavaScript ([FFI examples](https://github.com/pure11/pure11/wiki/FFI_Examples))
20* Foreign functions are not written as curried functions (any necessary currying is done implicitly by the compiler)
20* Foreign functions are not written as curried functions (any necessary currying is done implicitly by the compiler)
21* Compiler is `pcc` instead of `psc`, `make` is recommended for building
21* Compiler is `pcc` instead of `psc`, `make` is recommended for building
22−* No purescript-native-specific REPL
22+* No native/pure11-specific REPL
24#### Other notes:
24#### Other notes:
@@ -30,7 +30,7 @@ This is an experimental native compiler/backend for [PureScript](https://github.
31#### TO-DO:
31#### TO-DO:
33−* Get all automated builds/tests fully up and running [(some work already done)](https://github.com/pure11/purescript-native/blob/native/pcc/TestMain.hs)
33+* Get automated builds/tests fully up and running [(some work already done)](https://github.com/pure11/purescript/blob/pure11/pcc/TestMain.hs)
34* Unicode (UTF-8) support for `String` (possibly use code from my Idris backend)
34* Unicode (UTF-8) support for `String` (possibly use code from my Idris backend)
35* Lots of testing!
35* Lots of testing!
@@ -38,7 +38,6 @@ This is an experimental native compiler/backend for [PureScript](https://github.
39* Nice facilities (modules) for concurrency/parallelism, using `std::thread`, `std::async`, etc. under the hood
39* Nice facilities (modules) for concurrency/parallelism, using `std::thread`, `std::async`, etc. under the hood
40* `BigInt` via GNU GMP (or an alternative)
40* `BigInt` via GNU GMP (or an alternative)
41−* Stricter exports in C++ code
43#### Requirements
42#### Requirements
@@ -75,7 +74,6 @@ namespace Main {
75 using namespace Control_Bind;
74 using namespace Control_Bind;
76 using namespace Control_Monad_Eff;
75 using namespace Control_Monad_Eff;
77 using namespace Data_Show;
76 using namespace Data_Show;
80 auto fib(int v) -> int {
78 auto fib(int v) -> int {
81 switch (cast<int>(v)) {
79 switch (cast<int>(v)) {
@@ -101,7 +99,7 @@ auto main(int, char *[]) -> int {
101#### [FFI examples](https://github.com/pure11/pure11/wiki/FFI_Examples)
99#### [FFI examples](https://github.com/pure11/pure11/wiki/FFI_Examples)
103#### Getting Started
101#### Getting Started
104−This assumes you are running OS X or a Unix-like system (Linux, *BSD, etc.), and already have the ability to [build PureScript from source] (http://www.purescript.org/download/) (bottom of the page) -- but instead of cloning and building the repository in the instructions, make sure to use [this project's repo](https://github.com/pure11/purescript-native).
102+This assumes you are running OS X or a Unix-like system (Linux, *BSD, etc.), and already have the ability to [build PureScript from source] (http://www.purescript.org/download/) (bottom of the page) -- but instead of cloning and building the repository in the instructions, make sure to use this project's repo.
1061. 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.
1041. 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.