Specifically,
• Created >c-array to be replacement for >T-array.
• Created cast-array to be generic replacement for all T-array-cast words.
• Created c-array@ to be generic replacement for T-array@ words.
• Replaced usages of <T-array> with T <c-array>
• Replaced usages of <direct-T-array> with T <c-direct-array>
• Replaced usages of >T-array with T >c-array
• Replaced usages of T-array-cast with T cast-array
• Replaced usages of malloc-T-array with T malloc-array.
• Removed malloc-T-array.
• Removed T-array-cast.
• Removed T-array@.
• Removed >T-array.
I also added (but didn't change any code to use):
• T c-array-type, returns T-array
• T c-array?, returns T-array?
• c-array{ T ... }, returns T-array{ ... }
Bootstraps just find on Mac OS X. Also `load-all test-all` works for me.
- Replace hand-written specialized-arrays.* subvocabularies with new system; instead of USE:ing specialized-arrays.T, do SPECIALIZED-ARRAY: T
- Ditto for specialized-vectors; use SPECIALIZED-VECTOR:
- io.mmap.functor: removed entirely, use <mapped-array> instead
- struct-arrays and struct-vectors have been removed because specialized arrays and vectors subsume them entirely
* master: (96 commits)
compiler.cfg.dataflow-analysis: iterative dataflow analysis framework
functors: add MIXIN:, SINGLETON:
Add assoc-refine, which takes the intersection of a sequence of assocs
compiler.cfg: Fix unit tests
compiler.cfg.registers: minor optimization
compiler.cfg.ssa: Cytron's SSA construction algorithm
compiler.cfg.dominance: fix idom computation, compute dominator tree, compute dominance frontiers, add some tests
Move conjoin-at from compiler.cfg.liveness to sets
sequences.abbrev: add docs - not much, but a start
sequences.abbrev: keep insertion order
sequences.abbrev: more small refactoring
sequences.abbrev: small refactoring
sequences.abbrev: Initial commit
opengl is for chumps
alien.inline.compiler: help-lint fix
parser: remove outdated unit tests that were superseded by tests in vocabs.parser
vocabs.parser: add tests to assert that the correct errors get thrown
ui.tools.listener: selecting a word from a completion popup now behaves like a USE: followed by a FROM:
FROM: and RENAME: give a more meaningful error if the vocabulary does not exist
compiler.cfg.stack-analysis: fix outdated tests
...