git.iko.soy/rowtype-yoga/purescript-native
on golang help sign in
C++: consolidate READMEs
commit925900f44bc075668e1a832a7c2fc0781ce85e0d authorAndy Arvanitis <andyarvanitis@gmail.com> dateTue 15 Nov 2016, 19:54 (10 years ago) parent9fce636
1 file changed+5−7
README.markdown+5−7
README.markdown+5−7
@@ -1,10 +1,10 @@
11[![PureScript](https://raw.githubusercontent.com/purescript/purescript/master/logo.png)](http://purescript.org)
22
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.
44
55---
66
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**
88
99---
1010
@@ -19,7 +19,7 @@ This is an experimental native compiler/backend for [PureScript](https://github.
1919* Foreign imports are C++11 (or C) instead of JavaScript ([FFI examples](https://github.com/pure11/pure11/wiki/FFI_Examples))
2020* Foreign functions are not written as curried functions (any necessary currying is done implicitly by the compiler)
2121* Compiler is `pcc` instead of `psc`, `make` is recommended for building
22−* No purescript-native-specific REPL
22+* No native/pure11-specific REPL
2323
2424#### Other notes:
2525
@@ -30,7 +30,7 @@ This is an experimental native compiler/backend for [PureScript](https://github.
3030
3131#### TO-DO:
3232
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)
3434* Unicode (UTF-8) support for `String` (possibly use code from my Idris backend)
3535* Lots of testing!
3636
@@ -38,7 +38,6 @@ This is an experimental native compiler/backend for [PureScript](https://github.
3838
3939* Nice facilities (modules) for concurrency/parallelism, using `std::thread`, `std::async`, etc. under the hood
4040* `BigInt` via GNU GMP (or an alternative)
41−* Stricter exports in C++ code
4241
4342#### Requirements
4443
@@ -75,7 +74,6 @@ namespace Main {
7574 using namespace Control_Bind;
7675 using namespace Control_Monad_Eff;
7776 using namespace Data_Show;
78−
7977
8078 auto fib(int v) -> int {
8179 switch (cast<int>(v)) {
@@ -101,7 +99,7 @@ auto main(int, char *[]) -> int {
10199#### [FFI examples](https://github.com/pure11/pure11/wiki/FFI_Examples)
102100---
103101#### 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.
105103
1061041. 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.
107105