math::roman(3) Tools for creating and manipulating roman numerals


package require Tcl 8.3

package require math::roman ?1.0?

::math::roman::toroman i

::math::roman::tointeger r

::math::roman::sort list

::math::roman::expr args


::math::roman is a pure-Tcl library for converting between integers and roman numerals. It also provides utility functions for sorting and performing arithmetic on roman numerals.

This code was originally harvested from the Tcler's wiki at and as such is free for any use for any purpose. Many thanks to the ingeneous folk who devised these clever routines and generously contributed them to the Tcl community.

While written and tested under Tcl 8.3, I expect this library will work under all 8.x versions of Tcl.


::math::roman::toroman i
Convert an integer to roman numerals. The result is always in upper case. The value zero is converted to an empty string.
::math::roman::tointeger r
Convert a roman numeral into an integer.
::math::roman::sort list
Sort a list of roman numerals from smallest to largest.
::math::roman::expr args
Evaluate an expression where the operands are all roman numerals.

Of these commands both toroman and tointeger are exported for easier use. The other two are not, as they could interfer or be confused with existing Tcl commands.


This document, and the package it describes, will undoubtedly contain bugs and other problems. Please report such in the category math :: roman of the Tcllib Trackers []. Please also report any ideas for enhancements you may have for either package and/or documentation.


conversion, integer, roman numeral




Copyright (c) 2005 Kenneth Green <[email protected]>