Estimated hours taken: 0.75
Use sub-modules to package up the modules in extras/complex_numbers
into a single module.
extras/complex_numbers/complex_lib.m:
extras/complex_numbers/complex_numbers.m:
Rename complex_lib.m as complex_numbers.m,
and modify it to use sub-modules.
extras/complex_numbers/*.m:
extras/complex_numbers/tests/complex_test.m:
extras/complex_numbers/samples/fft.m:
Add `complex_numbers:' to all of the `:- module'
and `:- import_module' declarations.
extras/complex_numbers/Mmakefile:
extras/complex_numbers/tests/Mmakefile:
extras/complex_numbers/samples/Mmakefile:
Modify to reflect the renaming from `complex_lib' to
`complex_numbers'.
Estimated hours taken: 3
extras/complex_numbers/*:
Add an Mmakefile to build the complex number library, using the
new support for user-defined libraries.
Move the test cases into a new subdirectory `tests'.
Add a new subdirectory `samples', containing an example
module `fft.m' that uses the library.
Add a README file.
extras/complex_numbers/complex.m:
Add new functions `complex/1' (converts float to complex),
`cis' (cos + i * sin), and `conj'.
Rename `norm' as `abs2' (square of absolute value).
Estimated hours taken: 8
extras/complex_numbers/complex.m:
extras/complex_numbers/complex_float.m:
extras/complex_numbers/float_complex.m:
New modules to support complex numbers.
extras/complex_numbers/imag.m:
extras/complex_numbers/imag_complex.m:
extras/complex_numbers/complex_imag.m:
extras/complex_numbers/imag_float.m:
extras/complex_numbers/float_imag.m:
New modules to support imaginary numbers.
extras/complex_numbers/complex_test.m:
extras/complex_numbers/complex_test.exp:
Tests cases for the above-mentioned new modules.