Ruby Temporal Expressions.
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
examples First commit to my edited version of runt. Dec 11, 2008
.gitignore Duh, don't ignore gemspec :P Dec 11, 2008
History.txt - Renamed some files to make Hoe happy Dec 11, 2008
LICENSE.txt First commit to my edited version of runt. Dec 11, 2008
Manifest.txt This will probably work better without an empty manifest. Dec 11, 2008
Rakefile - Renamed some files to make Hoe happy Dec 11, 2008


= RUNT -- Ruby Temporal Expressions

* Runt is a Ruby[] implementation of select Martin Fowler  patterns[].

* <em>TemporalExpression</em>s allow a developer to define patterns of date recurrence using set expressions.


* gem install runt


* Unpack the Runt distribution.

   $ tar -xzvf runt-<version>.tar.gz

* cd $UNPACK_DIR/runt/

* execute:

   $ ruby setup.rb config
   $ ruby setup.rb setup
   $ ruby setup.rb install (may require root privilege)


   $ ruby setup.rb --help

  for more options.


* require 'runt'

* See Runt website[].

* See $UNPACK_DIR/runt/test/*.rb for example usage.

* See this mini-TemporalExpression tutorial[]
* Also this tutorial[]
* And this tutorial[]

* See for commented Java source (JavaDoc)

Get in touch if you have questions or if Runt causes your computer to burst into flames...


== Credits

Rubyforge[] for hosting this project.

M.Fowler[], Matz[],
T.Funaba (Date/DateTime[]),
J.Weirich (Rake[]),
PragmaticProgrammers[], and everyone on
ruby-talk[] for their shameless public display
of smartness.

Hal Fulton, Mauricio Fernandez, and Mark Hubbart for the
thread[] on c.l.r.
that inspired a more Ruby-esque syntax for creating TE's. 2X Thanks to Hal, for
taking the time to exchange ideas off-line.

The ruby-nyc user's group for their suggestions and feedback.

BlueRobot[] for the CSS used to prettify the Runt website.

Emmett Shear for contributed TExpr#dates code and several thought-provoking feature requests.

Ira Burton for contributed DayIntervalTE class.

Jodi Showers for serialization bug fix.

Pat Maddox for YearTE.

Paul Wright for Time class compatibility.

Ara T. Howard for Numeric class extensions.

Larry Karnowski for BeforeTE, AfterTE, TExpr#dates enhancements, RFC2445 (iCalendar) compliance tests.

Gordon Thiesfeld for fixed Time integration and extended REWeek functionality.

Justin Cunningham for performance optimizations, bug reports and patches.

Bug #19982 and patch submitted by Riley Lynch

The number 12, and the letters E, J, and B.

= Etc...

Author::   Matthew Lipper <>
Requires:: Ruby 1.8.0 or later, Date/DateTime classes
License::  Copyright 2004 by Digital Clash LLC.
           Released under the Apache Software license (see LICENSE.txt)
           included in the distribution.

= Warranty

This software is provided "as is" and without any express or
implied warranties, including, without limitation, the implied
warranties of merchantibility and fitness for a particular