Getting Started

Version 3 (Brian Ford, 05/13/2008 09:00 AM)

1 1
h1. Getting Started
2 2 Brian Ford
3 2 Brian Ford
The RubySpec project aims to write a complete executable specification for the "Ruby":http://ruby-lang.org programming language that is syntax-compatible with "RSpec":http://rspec.info. RSpec is essentially a DSL (domain-specific language) for describing the behavior of code. This project contains specs that describe language syntax, "core library":http://ruby-doc.org/core classes, and "standard library":http://ruby-doc.org/stdlib classes.
4 2 Brian Ford
5 3 Brian Ford
The specs generally serve two purposes: 1) to drive development, and 2) as a verification mechanism. These goal can sometimes be at odds. During development, the code and specs evolve together. For verification, it is desirable to have a highly stable set of specs that ideally have been audited for correctness. The specs have been extensively used and developed "BDD":http://behaviour-driven.org/ style in the "Rubinius":http://rubini.us project for almost 1.5 years with numerous contributions by other projects like "JRuby":http://jruby.codehaus.org/. Consequently, the specs have attained a high degree of stability. However, there are still