Git Product home page Git Product logo

gam4er / boo Goto Github PK

View Code? Open in Web Editor NEW

This project forked from boo-lang/boo

0.0 1.0 0.0 22.23 MB

The Boo Programming Language.

Home Page: http://boo-lang.org/

License: BSD 3-Clause "New" or "Revised" License

Boo 14.34% Shell 1.31% C# 45.63% Java 18.27% Python 1.37% GAP 6.74% HTML 3.62% C++ 2.41% C 0.02% Pascal 1.57% Visual Basic 0.01% Emacs Lisp 0.93% Batchfile 0.02% Lex 0.04% ANTLR 0.03% Makefile 3.53% PHP 0.01% Vim Script 0.08% Roff 0.05% PowerShell 0.03%

boo's Introduction

Build Status

The Boo Programming Language (c) 2009 Rodrigo B. de Oliveira ([email protected])

Prerequisites

Windows

* Boo is built with NAnt, which must be built from sources, which requires NMake, which comes with the Visual C++ Build Tools.

Mac/Linux

  • Mono 4.2.x (4.2.4 is the latest and recommended)
  • Bash

Build Tools

You can install compatible versions of the required tools into the build-tools directory, where the build scripts will execute them from, by running the bootstrap script.

Windows

The bootstrap script is a PowerShell script; however, it must be run from a x86 Native Tools Command Prompt:

# FROM A x86 NATIVE TOOLS COMMAND PROMPT
powershell .\build-tools\bootstrap

Mac/Linux

./build-tools/bootstrap

Mac

Building Boo requires Mono 4.2.x, which is not likely to be your "Current" version of Mono. To avoid having to switch your current version every time you want to work on Boo, you can specify the version to use when you run the bootstrap script. The build scripts will then use that version of Mono, regardless of your current version.

./build-tools/bootstrap [<mono version>]

Building

To build the repository, run the nant script:

# Windows (PowerShell)
.\nant [<target>]
# Mac/Linux
./nant [<target>]

With no target specified, this will build the repository (code and tests) incrementally. To clean and build the repository from scratch, run the "rebuild" target. This will also cause the ast classes and parser to be regenerated (needs a java vm)

To run the unit tests that have already been built with nant, run the nunit script:

# Windows (PowerShell)
.\nunit
# Mac/Linux
./nunit

To build and test the entire repository, the same way the CI build does, run the ci script:

# Windows (PowerShell)
.\ci
# Mac/Linux
./ci

How to Start

For a brief description of the project and its goals take a look at docs/BooManifesto.sxw.

extras/boox contains a sweet little tool you can use to get yourself acquainted with the language.

src/ contains all the source code for the runtime and compiler components.

tests/ contains all the unit tests.

testcases/integration is a good source of information on the language features.

lib/ contains project dependencies such as antlr.

bin/ contains the latest version that passed all the tests and could be successfully used to rebuild the system.

Running and compiling code

To execute a boo script run:

booi <script> [args]

For instance:

booi examples/hw.boo	

You can also have booi to read from stdin by typing:

booi -

You can generate .net assemblies by using booc (either the booc.exe utility or the booc nant task):

booc -output:build/hello.exe examples/hw.boo	

If you want to simply see the transformations applied to your code by the compiler use the boo pipeline, run:

booc -p:boo examples/replace.boo	

More Information

http://boo-lang.org/ https://groups.google.com/forum/#!forum/boolang

Contributors

See: https://github.com/boo-lang/boo/graphs/contributors

boo's People

Contributors

aaronlerch avatar adrianoc avatar bamboo avatar bitpuffin avatar dgrunwald avatar drslump avatar eatdrinksleepcode avatar gbenatti avatar ironmagma avatar jbevain avatar kevgo avatar kidfashion avatar kot-behemoth avatar lafar6502 avatar lucasmeijer avatar masonwheeler avatar mausch avatar maximtrushin avatar neoeinstein avatar neonux avatar nsf avatar petejohanson avatar radicaled avatar radiy avatar rmboggs avatar scottstephens avatar turugina avatar visheshnayak avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.