all repos — markup @ 083aafa4dad0505ecd744ae2597fd04581f1d987

The code we use to render README.your_favorite_markup

test/markups/README.pod.html (view raw)

  1
  2<div name="index">
  3<p><a name="__index__"></a></p>
  4
  5<ul>
  6
  7	<li><a href="#matrixy">Matrixy</a></li>
  8	<ul>
  9
 10		<li><a href="#introduction">INTRODUCTION</a></li>
 11		<li><a href="#about">ABOUT</a></li>
 12		<li><a href="#implementation">IMPLEMENTATION</a></li>
 13		<li><a href="#dependencies">DEPENDENCIES</a></li>
 14		<ul>
 15
 16			<li><a href="#parrot">Parrot</a></li>
 17			<li><a href="#parrot_linear_algebra">Parrot-Linear-Algebra</a></li>
 18		</ul>
 19
 20		<li><a href="#building">BUILDING</a></li>
 21		<li><a href="#todo">TODO</a></li>
 22		<li><a href="#bugs">BUGS</a></li>
 23		<li><a href="#contact">CONTACT</a></li>
 24	</ul>
 25
 26</ul>
 27
 28<hr name="index" />
 29</div>
 30
 31
 32<p>
 33</p>
 34<h1><a name="matrixy">Matrixy</a></h1>
 35<p>
 36</p>
 37<h2><a name="introduction">INTRODUCTION</a></h2>
 38<p>This is a port of the MATLAB/Octave programming language to Parrot. See the
 39ROADMAP file for more information on the status of this project, and what else
 40needs to be done.</p>
 41<p>
 42</p>
 43<h2><a name="about">ABOUT</a></h2>
 44<p>Primary goals are:</p>
 45<ul>
 46<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
 47MATLAB/Octave programming language.</a></strong>
 48
 49</ul>
 50<p>
 51</p>
 52<h2><a name="implementation">IMPLEMENTATION</a></h2>
 53<p>This project is broken into three primary components:</p>
 54<ul>
 55<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
 56parser proper is composed of three source files, <em class="file">grammar.pg</em> which is a
 57Perl6Grammar file, and <em class="file">actions.pm</em> which is the associated actions file
 58written in NQP, and <em class="file">grammar-oper.pm</em> which is the operator precidence parser.
 59In addition, several helper functions used by the parser are located in
 60<code>src/internals</code>.</a></strong>
 61
 62<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
 63<code>src/builtins/</code> directory. These functions are, currently, written primarily in
 64PIR. Function names prefixed with an underscore are &quot;private&quot; functions for use
 65with the parser. Other functions should have names which are the same as names
 66for regular MATLAB or Octave functions, since they will be available to the
 67HLL. These are also separated into different namespaces depending on visibility
 68and utility.</a></strong>
 69
 70<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
 71inline PIR code in <code>toolbox/</code>.</a></strong>
 72
 73</ul>
 74<p>
 75</p>
 76<h2><a name="dependencies">DEPENDENCIES</a></h2>
 77<p>Matrixy depends on these dependencies:</p>
 78<p>
 79</p>
 80<h3><a name="parrot">Parrot</a></h3>
 81<p>To get a proper version of Parrot to build Matrixy, you will need to check out
 82and build Parrot from source:</p>
 83<pre>
 84    svn co <a href="http://svn.parrot.org/parrot/trunk">http://svn.parrot.org/parrot/trunk</a> parrot
 85    cd parrot
 86    perl Configure.pl
 87    make &amp;&amp; make test &amp;&amp; make install-dev</pre>
 88<p>
 89</p>
 90<h3><a name="parrot_linear_algebra">Parrot-Linear-Algebra</a></h3>
 91<p>The linear algebra package for Parrot is available separately and provides
 92functionality required by Matrixy. This includes matrix data types and matrix
 93manipulation libraries</p>
 94<p>
 95</p>
 96<h2><a name="building">BUILDING</a></h2>
 97<p>Once all dependencies are in place, you can build Matrixy using this sequence of
 98commands:</p>
 99<pre>
100    perl Configure.pl
101    nmake test</pre>
102<p>
103</p>
104<h2><a name="todo">TODO</a></h2>
105<pre>
106    * Parser
107    * Standard Builtins
108    * Test against Octave Test Suite.</pre>
109<p>
110</p>
111<h2><a name="bugs">BUGS</a></h2>
112<p>Lots!</p>
113<p>
114</p>
115<h2><a name="contact">CONTACT</a></h2>
116<p>If you need to contact the Matrixy team, go to the project home page at:</p>
117<p>www.github.com\Whiteknight\matrixy</p>
118