about summary refs log tree commit diff stats
path: root/032array.cc
Commit message (Collapse)AuthorAgeFilesLines
* 1611 - switch to keyboard+mouse eventsKartik K. Agaram2015-06-201-2/+2
|
* 1586Kartik K. Agaram2015-06-171-1/+1
|
* 1474 - another warningKartik K. Agaram2015-05-261-5/+8
|
* 1473Kartik K. Agaram2015-05-261-0/+28
|
* 1417 - draft zoom levels in tracesKartik K. Agaram2015-05-211-6/+6
|
* 1414 - traces now robust to new recipes/typesKartik K. Agaram2015-05-211-24/+0
|
* 1391 - avoid unsigned integersKartik K. Agaram2015-05-171-8/+8
|
* 1363 - rename 'integer' to 'number'Kartik K. Agaram2015-05-131-34/+34
| | | | ..now that we support non-integers.
* 1360 - store doubles in memoryKartik K. Agaram2015-05-121-3/+3
| | | | | | | | | | | | | This is a far cleaner way to provide *some* floating-point support. We can only represent signed integers up to 2^51 rather than 2^63. But in exchange we don't have to worry about it elsewhere, and it's probably faster than checking tag bits in every operation. Hmm, yeah, surprised how easy this was. I think I'll give up on the other approach. I still don't have non-integer literals. But we won't bother with those until we need them. `3.14159:literal` seems ugly.
* 1357 - temporarily revert floating-point supportKartik K. Agaram2015-05-121-12/+9
|
* 1356 - snapshot #2: floating point supportKartik K. Agaram2015-05-121-9/+12
| | | | | | | | | | | | | | | I added one test to check that divide can return a float, then hacked at the rippling failures across the entire entire codebase until all tests pass. Now I need to look at the changes I made and see if there's a system to them, identify other places that I missed, and figure out the best way to cover all cases. I also need to show real rather than encoded values in the traces, but I can't use value() inside reagent methods because of the name clash with the member variable. So let's take a snapshot before we attempt any refactoring. This was non-trivial to get right. Even if I convince myself that I've gotten it right, I might back this all out if I can't easily *persuade others* that I've gotten it right.
* 1299 - stop using [] in any vectorKartik K. Agaram2015-05-071-1/+1
| | | | | | | | | Useful check: $ grep "[^ '\"]\[[^\"]" *.cc \ |perl -pwe 's/\Wargv\[|\WTests\[|\Wframe\[|\WMemory\[|\WName\[|\WSurrounding_space\[|\WRecipe\[|\WType\[|\WRecipe_number\[|\WType_number\[|\WBefore_fragments\[|\WAfter_fragments\[//g' \ |perl -pwe 's/\Wargv\[|\WTests\[|\Wframe\[|\WMemory\[|\WName\[|\WSurrounding_space\[|\WRecipe\[|\WType\[|\WRecipe_number\[|\WType_number\[|\WBefore_fragments\[|\WAfter_fragments\[//g' \ |grep '[^ ]\['
* 1298 - better ingredient/product handlingKartik K. Agaram2015-05-071-31/+16
| | | | | | | | | | | | | | | | | | | All primitives now always write to all their products. If a product is not used that's fine, but if an instruction seems to expect too many products mu will complain. In the process, many primitives can operate on more than two ingredients where it seems intuitive. You can add or divide more than two numbers together, copy or negate multiple corresponding locations, etc. There's one remaining bit of ugliness. Some instructions like get/get-address, index/index-address, wait-for-location, these can unnecessarily load values from memory when they don't need to. Useful vim commands: %s/ingredients\[\([^\]]*\)\]/ingredients.at(\1)/gc %s/products\[\([^\]]*\)\]/products.at(\1)/gc .,$s/\[\(.\)]/.at(\1)/gc
* 1276 - make C++ version the defaultKartik K. Agaram2015-05-051-0/+180
I've tried to update the Readme, but there are at least a couple of issues.
 
                                                                                                 
 

                                                                                                                                                                                                                         
 

                                                                                                                                                                                                                                                    
 
                                                     
 

                                                                                                                                                                                                                         

                                                       


                                                       

                                                                                            


           
<!DOCTYPE html>
<html dir="ltr" lang="en">
    <head>
	<meta charset='utf-8'>
	<title>Development</title>
    </head>
    <body>

	<a href="../index.html">Documentation Index</a>
	<h1>Development</h1>

	<p>Tools for development and debugging</p>

        <dl>
            <dt><a href="git/index.html">Git</a></dt>
            <dd>Git is a distributed version control system, for example this document is meant to be distributed using git.</dd>
            <dt><a href="c/index.html">C &amp; GDB</a></dt>
            <dd>C is compiled language created by Dennis Ritchie. BSD, Linux and Minix kernels use this language as primary language.</dd>

            <dt><a href="shell/index.html">Shell scriptiong</a></dt>
	    <dd>Script files that start with "#!/bin/sh" use dash (in crux), /bin/sh is a link to dash, while files that start with "#!/bin/bash" use bash;</dd>
            <dt><a href="python/index.html">Python</a></dt>

            <dd>Python is an interpreted, interactive, object-oriented programming language.</dd>

            <dt><a href="perl/index.html">Perl</a></dt>
            <dd>Perl is a family of two high-level, general-purpose, interpreted, dynamic programming languages. "Perl" usually refers to Perl 5, but it may also refer to its redesigned "sister language", Perl 6.</dd>

            <dt><a href="javascript/index.html">JavaScript</a></dt>
            <dd>JavaScript is a high-level, interpreted programming language that conforms to the ECMAScript specification. JavaScript has curly-bracket syntax, dynamic typing, prototype-based object-orientation, and first-class functions.</dd>

            <dt><a href="php/index.html">PHP</a></dt>

            <dd>PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used open source general-purpose scripting language that is especially suited for web development and can be embedded into HTML.</dd>
        </dl>
	<a href="../index.html">Documentation Index</a>
	<p>
	This is part of the Tribu System Documentation.
	Copyright (C) 2020
	Tribu Team.
	See the file <a href="../fdl-1.3-standalone.html">Gnu Free Documentation License</a>
	for copying conditions.</p>
    </body>

</html>