Skip to content
jonsterling edited this page Apr 7, 2012 · 2 revisions

Build Instructions


Core Visi language test suite

The core Visi language interpreter is OS independent. The test suite is a combination of tests that are hard-coded and the second half of the tests are defined in the wiki pages (yes, the language definition pages) are also used as test pages.

You must have GHC 7.x and Cabal installed. Download Haskell. You must also have Git installed to get the source code.

Clone the Visi language (https://github.com/visi-lang/visi.git) and Visi Wiki (https://github.com/visi-lang/visi.wiki.git) repositories:

raptor:tmp dpp$ git clone https://github.com/visi-lang/visi.git
Cloning into visi...
remote: Counting objects: 661, done.
remote: Compressing objects: 100% (331/331), done.
remote: Total 661 (delta 319), reused 572 (delta 232)
Receiving objects: 100% (661/661), 1.78 MiB | 333 KiB/s, done.
Resolving deltas: 100% (319/319), done.
raptor:tmp dpp$ git clone https://github.com/visi-lang/visi.wiki.git
Cloning into visi.wiki...
remote: Counting objects: 96, done.
remote: Compressing objects: 100% (83/83), done.
remote: Total 96 (delta 36), reused 56 (delta 9)
Unpacking objects: 100% (96/96), done.

Install the Haskell library dependencies:

raptor:tmp dpp$ cd visi/core/src/    
raptor:src dpp$ cabal install containers pretty parsec  mtl HUnit text uuid
Resolving dependencies...
[cabal output]

and then run the tests like so:

raptor:src dpp$ ./run_test ../../../visi.wiki/tests/
Ran 56 tests, 0 errors

real	0m2.864s
user	0m2.268s
sys	    0m0.110s

Build OS X UI

To build the OS X UI (the code is not complete, but will be soon), you'll need to install Xcode 4.2 or 4.3 (4.3 tends to crash a lot, so I use 4.2.1). With Haskell 7.4.1 installed, you should be able to open the Xcode project and click "Run".


Build iPad UI

The iPad UI front end to Visi requires Xcode 3.2.5, GHC-iPhone, and some other Gnarly things. I have a special partition on my Mac that boots into 10.6 just to run the iPad build code. Once the GHC-iPhone is integrated into the main Haskell distribution, I'll circle back and update the iOS code.