Commit Graph

33 Commits

Author SHA1 Message Date
Kartik Agaram 9e5e87ca37 5865
Give the bootstrap C++ program a less salient name.
2020-01-02 02:01:41 -08:00
Kartik Agaram df8498fb82 5864 2020-01-02 01:38:54 -08:00
Kartik Agaram 5e4c6714b8 5660
Fix CI.
2019-09-15 00:23:17 -07:00
Kartik Agaram 6e1eeeebfb 5485 - promote SubX to top-level 2019-07-27 17:47:59 -07:00
Kartik Agaram 53172ce13a 4253 - support running just a single C test
We've had this ability for Mu scenarios forever.
2018-06-06 09:27:44 -07:00
Kartik Agaram 91fe63cdc1 4251 - speed up repeated builds until the same layer
Also allow running a single test, to speed things up still further.
2018-06-05 23:39:47 -07:00
Kartik K. Agaram c912b7319f 4219 - add an even simpler build script 2018-03-13 08:34:05 -07:00
Kartik K. Agaram f0cf7af7d8 4216 - include simpler alternative to build script 2018-03-12 23:26:10 -07:00
Kartik K. Agaram ba838feae9 4211
Just ran into first issue from using the portable /bin/sh rather than a
modern shell:
  https://stackoverflow.com/questions/15744421/read-command-doesnt-wait-for-input

Turn on errexit everywhere.
2018-02-20 01:38:15 -08:00
Kartik K. Agaram 52ea31027b 4016 - include subx/ tests in CI 2017-10-11 02:01:29 -07:00
Kartik K. Agaram 0cdaca2c0c 3506 2016-10-16 00:22:41 -07:00
Kartik K. Agaram 924253f1a5 3455 2016-10-06 21:49:26 -07:00
Kartik K. Agaram b4785580be 3450
Purge remaining `makefile`s, without breaking CI.
2016-10-06 17:13:04 -07:00
Kartik K. Agaram 52522c1aff 2964 2016-05-15 10:42:16 -07:00
Kartik K. Agaram 355db3bf04 2946
Reorganize build system to minimize duplication while handling 3
scenarios:

1. Locally running tests with `mu test`
2. Locally running tests until some layer with `build_and_test_until`
3. Running on Linux with `test_layers`
4. Running on Travis CI with multiple sharded calls to `test_layers`

One thing we drop at this point is support for OSX in test_layers. We
don't need it now that we have Travis CI working.
2016-05-08 23:37:07 -07:00
Kartik K. Agaram eb917331a8 2942 - switch scripts to bash
I'm already using grep and perl, bash is no worse, and it's *much* nicer
to work in than plain Bourne sh.
2016-05-08 19:16:08 -07:00
Kartik K. Agaram ca604f1af7 2934 - all layers running again
Since I switched to a Mac laptop (commit 2725) I've been lax in running
test_all_layers because I have to ssh into a server and whatnot. I
should just get CI setup somewhere..
2016-05-07 09:45:13 -07:00
Kartik K. Agaram 7bf9212fd4 2861 - 'maybe-convert' no longer returns address 2016-04-23 17:15:16 -07:00
Kartik K. Agaram 991d76f328 2860 - rename 'index-address' to 'put-index' 2016-04-23 14:51:20 -07:00
Kartik K. Agaram 5939c226b4 2828 2016-04-10 20:26:54 -07:00
Kartik K. Agaram 2badd89a58 2778 - fix all layers 2016-03-14 01:00:48 -07:00
Kartik K. Agaram 3e53459aaf 2770 - drop a warning from clang 3.4
I'm now running valgrind on my Linux server rather than my Mac laptop.
Little less convenient; let's see how it goes.
2016-03-13 17:44:27 -07:00
Kartik K. Agaram f8badcdc0c 2319 2015-10-29 16:43:50 -07:00
Kartik K. Agaram 4d1f4a660c 2288
Make it easy to skip distracting valgrind errors when debugging more
obvious errors in early layers. Just throw a 'test' at the end of
build_and_test_until commands to not run valgrind (and make it a regular
test run).
2015-10-27 12:11:18 -07:00
Kartik K. Agaram e28fa5f150 2197 2015-09-14 23:10:31 -07:00
Kartik K. Agaram c2d49d81f3 2002
No, 2001 is no good. Phony targets can't early-exit if everything's
built. New approach:

  $ CFLAGS=-g make && ./mu test

etc.
2015-08-14 21:59:34 -07:00
Kartik K. Agaram 5d1699c2c7 1948 2015-08-06 19:02:32 -07:00
Kartik K. Agaram 7f402c85eb 1921 - show trace by clicking on code
Region to click on to edit is now reduced to just the menu bar for the
sandbox (excluding the 'x' for deleting the sandbox). The symmetry there
might be useful, but we'll see if the relative click area is
in line with how commonly the actions are performed.
2015-08-02 16:18:16 -07:00
Kartik K. Agaram 05d4ee8d0a 1623 2015-06-22 23:43:08 -07:00
Kartik K. Agaram 45c08fea47 1616 - merging keyboard and events into 'console'
Only core layers currently passing. Console apps are probably still
broken.
2015-06-21 23:27:54 -07:00
Kartik K. Agaram bc4db811c4 1300 2015-05-07 15:52:50 -07:00
Kartik K. Agaram 0487a30e70 1298 - better ingredient/product handling
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
2015-05-07 15:29:13 -07:00
Kartik K. Agaram b96af395b9 1276 - make C++ version the default
I've tried to update the Readme, but there are at least a couple of issues.
2015-05-05 21:17:24 -07:00