Files | Admin


Release Name: pre-alpha-0.20


This version ($Name: PRE_ALPHA_0_20 $) is functionally identical with the
previous pre-alpha-0.19.  Improvements are for speed, because certain
logarithms that are used frequently internally are cached now, so they
need to be calculated only when needed for a higher precision than has
been used before.  The gem-file is now created using Ruby 1.8.4
instead of 1.8.3.  This fixes a bug in the metadata-file of the gem.

It could be observed that gem-installation, as described below, fails
on Windows 2000 with ruby 1.8.2, but works on Linux with ruby 1.8.4
Any help from someone who knows more about Ruby on Windows would be
apreciated.  For the time being long-decimal has to be considered
platform specific for Linux/Unix.  We will see if the corrected
metadata-file allows installation on Windows now.

Beyond this restriction there are no known bugs and this version can
be considered complete in terms of functionality.  This version is
still a pre-alpha-version, but it is expected to move it to alpha
within the next weeks, after having added some more tests and having
fixed potential bugs that these tests might reveal.  I do not expect
the first alpha version to be much different from this version.

This software development effort is hosted on RubyForge ( ) under the project name "long-decimal", to be
found directly with .  So
you should feel encouraged to look if there is a newer version, when
you install long-decimal.


I have included some runit tests, which give some indication of the
correctness of this library.  Tests can never be exhaustive, but they
give a good indication that methods are working correctly.  About 90%
of the tests that will be eventually needed are already present.  As a
policy I do not create a release unless all tests succeed.
Running the tests can take a few minutes, depending on your machine.
It is about 10 minutes on my machine (1300 MHz).  This is the result:

Finished in 567.162417 seconds.
97 tests, 44182 assertions, 0 failures, 0 errors


(REMARK: installation has only been successfully tested on Linux with
ruby 1.8.4 and on Windows 2000 with ruby 1.8.2)

1. Using ruby-gems (preferred)
- open a shell window
- become root, unless the current user has the right to install gems
  (which is usually the case on windows)


- uninstall old versions

  gem uninstall long-decimal

- install the newest version

  gem install long-decimal

- Usage from your ruby-programs:

  require "rubygems"
  require_gem "long-decimal"

- documentation will be found in HTML-format in the directory
  where $RUBY_DIR is the directory containing your ruby-installation,
                  usually /usr/lib/ruby or /usr/local/lib/ruby on
        $RUBY_VERSION is the major version of your Ruby, like 1.8
        $LONG_DECIMAL_VERSION is the version of long-decimal that you
                              have installed, like 0.00.20
  on my machine that would be

2. Installing from the sources (it is preferred to use the
   gem-installation, but since long-decimal is open-source-software you
   are off course granted the right to download the source and change
   it and install your own version.

- download the newest source-tar.gz-file from long-decimal project at rubyforge
  which can be found by -> Files
  ( )
- open a shell window
  cd to the directory where you have downloaded the gem-file
  unpack the file using tar
  tar xfzvv long-decimal-pre-alpha-0_17.tar.gz
  cd long-decimal
- now you can use rake for several operations
  - rake test
      runs runit tests.  All tests should succeed.
  - rake doc
      creates the documentation
  - rake gem creates the gem-file in a sub-directory pkg
      recommended for installation, proceed as in 1
  - cd pkg
  - gem install --local long-decimal

3. The documentation can be created from the sources.  It is contained
in the gem-file.  It is not provided as a separate file any more.


Ruby's license or LGPL
Find copies of these licenses on or


This is a pre-alpha-version.  Do not expect too much!  This is work in progress!
I do not take any responsibility.  Please use it as it is, change it
according to the terms of the license or wait for a more stable
version (for wich I can't take any warranty either...)


Karl Brodowsky
(no direct mail address because I do not like spam)

Changes: added some convenience methods added some tests more sophisticated calculation of precision for quotients of LongDecimals