better (real world) .pod test case
Chris Wanstrath chris@ozmm.org
Mon, 02 Nov 2009 17:54:38 -0800
2 files changed,
195 insertions(+),
5 deletions(-)
M
test/markups/README.pod
→
test/markups/README.pod
@@ -1,7 +1,89 @@
-=head1 NAME +=head1 Matrixy + +=head2 INTRODUCTION + +This is a port of the MATLAB/Octave programming language to Parrot. See the +ROADMAP file for more information on the status of this project, and what else +needs to be done. + +=head2 ABOUT + +Primary goals are: + +=over 4 + +=item* Create a working compiler that understands the majority of the +MATLAB/Octave programming language. + +=back + +=head2 IMPLEMENTATION + +This project is broken into three primary components: + +=over 4 -podsample - A sample pod document +=item* The first is the parser, located in the C<src/parser/> directory. The +parser proper is composed of three source files, F<grammar.pg> which is a +Perl6Grammar file, and F<actions.pm> which is the associated actions file +written in NQP, and F<grammar-oper.pm> which is the operator precidence parser. +In addition, several helper functions used by the parser are located in +C<src/internals>. -=item * This is a bulleted list. +=item* The second component is the library of builtin functions in the +C<src/builtins/> directory. These functions are, currently, written primarily in +PIR. Function names prefixed with an underscore are "private" functions for use +with the parser. Other functions should have names which are the same as names +for regular MATLAB or Octave functions, since they will be available to the +HLL. These are also separated into different namespaces depending on visibility +and utility. -=item * Here's another item. +=item* A number of library functions are written in M, or mostly M with some +inline PIR code in C<toolbox/>. + +=back + +=head2 DEPENDENCIES + +Matrixy depends on these dependencies: + +=head3 Parrot + +To get a proper version of Parrot to build Matrixy, you will need to check out +and build Parrot from source: + + svn co http://svn.parrot.org/parrot/trunk parrot + cd parrot + perl Configure.pl + make && make test && make install-dev + +=head3 Parrot-Linear-Algebra + +The linear algebra package for Parrot is available separately and provides +functionality required by Matrixy. This includes matrix data types and matrix +manipulation libraries + +=head2 BUILDING + +Once all dependencies are in place, you can build Matrixy using this sequence of +commands: + + perl Configure.pl + nmake test + +=head2 TODO + + * Parser + * Standard Builtins + * Test against Octave Test Suite. + +=head2 BUGS + +Lots! + +=head2 CONTACT + +If you need to contact the Matrixy team, go to the project home page at: + +www.github.com\Whiteknight\matrixy +
M
test/markups/README.pod.html
→
test/markups/README.pod.html
@@ -1,10 +1,118 @@
+<!-- INDEX BEGIN --> <div name="index"> <p><a name="__index__"></a></p> <ul> - <li><a href="#name">NAME</a></li> + <li><a href="#matrixy">Matrixy</a></li> + <ul> + + <li><a href="#introduction">INTRODUCTION</a></li> + <li><a href="#about">ABOUT</a></li> + <li><a href="#implementation">IMPLEMENTATION</a></li> + <li><a href="#dependencies">DEPENDENCIES</a></li> + <ul> + + <li><a href="#parrot">Parrot</a></li> + <li><a href="#parrot_linear_algebra">Parrot-Linear-Algebra</a></li> + </ul> + + <li><a href="#building">BUILDING</a></li> + <li><a href="#todo">TODO</a></li> + <li><a href="#bugs">BUGS</a></li> + <li><a href="#contact">CONTACT</a></li> + </ul> + </ul> <hr name="index" /> </div> +<!-- INDEX END --> + +<p> +</p> +<h1><a name="matrixy">Matrixy</a></h1> +<p> +</p> +<h2><a name="introduction">INTRODUCTION</a></h2> +<p>This is a port of the MATLAB/Octave programming language to Parrot. See the +ROADMAP file for more information on the status of this project, and what else +needs to be done.</p> +<p> +</p> +<h2><a name="about">ABOUT</a></h2> +<p>Primary goals are:</p> +<ul> +<li><strong><a name="create_a_working_compiler_that_understands_the_majority_of_the_matlab_octave_programming_language" class="item">Create a working compiler that understands the majority of the +MATLAB/Octave programming language.</a></strong> + +</ul> +<p> +</p> +<h2><a name="implementation">IMPLEMENTATION</a></h2> +<p>This project is broken into three primary components:</p> +<ul> +<li><strong><a name="the_first_is_the_parser_located_in_the_src_parser_directory_the_parser_proper_is_composed_of_three_source_files_grammar_pg_which_is_a_perl6grammar_file_and_actions_pm_which_is_the_associated_actions_file_written_in_nqp_and_grammar_oper_pm_which_is_the_operator_precidence_parser_in_addition_several_helper_functions_used_by_the_parser_are_located_in_src_internals" class="item">The first is the parser, located in the <code>src/parser/</code> directory. The +parser proper is composed of three source files, <em class="file">grammar.pg</em> which is a +Perl6Grammar file, and <em class="file">actions.pm</em> which is the associated actions file +written in NQP, and <em class="file">grammar-oper.pm</em> which is the operator precidence parser. +In addition, several helper functions used by the parser are located in +<code>src/internals</code>.</a></strong> + +<li><strong><a name="the_second_component_is_the_library_of_builtin_functions_in_the_src_builtins_directory_these_functions_are_currently_written_primarily_in_pir_function_names_prefixed_with_an_underscore_are_private_functions_for_use_with_the_parser_other_functions_should_have_names_which_are_the_same_as_names_for_regular_matlab_or_octave_functions_since_they_will_be_available_to_the_hll_these_are_also_separated_into_different_namespaces_depending_on_visibility_and_utility" class="item">The second component is the library of builtin functions in the +<code>src/builtins/</code> directory. These functions are, currently, written primarily in +PIR. Function names prefixed with an underscore are "private" functions for use +with the parser. Other functions should have names which are the same as names +for regular MATLAB or Octave functions, since they will be available to the +HLL. These are also separated into different namespaces depending on visibility +and utility.</a></strong> + +<li><strong><a name="a_number_of_library_functions_are_written_in_m_or_mostly_m_with_some_inline_pir_code_in_toolbox" class="item">A number of library functions are written in M, or mostly M with some +inline PIR code in <code>toolbox/</code>.</a></strong> + +</ul> +<p> +</p> +<h2><a name="dependencies">DEPENDENCIES</a></h2> +<p>Matrixy depends on these dependencies:</p> +<p> +</p> +<h3><a name="parrot">Parrot</a></h3> +<p>To get a proper version of Parrot to build Matrixy, you will need to check out +and build Parrot from source:</p> +<pre> + svn co <a href="http://svn.parrot.org/parrot/trunk">http://svn.parrot.org/parrot/trunk</a> parrot + cd parrot + perl Configure.pl + make && make test && make install-dev</pre> +<p> +</p> +<h3><a name="parrot_linear_algebra">Parrot-Linear-Algebra</a></h3> +<p>The linear algebra package for Parrot is available separately and provides +functionality required by Matrixy. This includes matrix data types and matrix +manipulation libraries</p> +<p> +</p> +<h2><a name="building">BUILDING</a></h2> +<p>Once all dependencies are in place, you can build Matrixy using this sequence of +commands:</p> +<pre> + perl Configure.pl + nmake test</pre> +<p> +</p> +<h2><a name="todo">TODO</a></h2> +<pre> + * Parser + * Standard Builtins + * Test against Octave Test Suite.</pre> +<p> +</p> +<h2><a name="bugs">BUGS</a></h2> +<p>Lots!</p> +<p> +</p> +<h2><a name="contact">CONTACT</a></h2> +<p>If you need to contact the Matrixy team, go to the project home page at:</p> +<p>www.github.com\Whiteknight\matrixy</p> +