Commit Graph

368 Commits (7e69a0c2b61024ed12a9980fda4952dd3754f3f0)

Author SHA1 Message Date
Mike Gerwitz 7e69a0c2b6 build-aux/gen-make: Do not parse typelist as depfile 2018-10-04 16:46:48 -04:00
Mike Gerwitz b716e8c2cd csvm: Auto-sort expanded output 2018-10-03 14:44:55 -04:00
Mike Gerwitz 397710c055 csvm: Auto-sort expanded output
This will allow the variable abstractions to fully encapsulate values while
still permitting binary searches on sorted rows.

* csvm-expand: Renamed from `csvm2csv'.  Add directive support.
* csvm2csv: New script to perform sorting.  Invokes aforementioned.
* test/test-csvm2csv: Update for sorting.
2018-10-03 14:21:35 -04:00
Mike Gerwitz d251f7a79b csvm2csv: Syntax improvements and error checking 2018-10-02 15:53:44 -04:00
Mike Gerwitz be59eb74a6 Makefile.am: Add build-aux tests to `check' target
* Makefile.am (check): Add build-aux tests to target.
2018-10-02 13:53:06 -04:00
Mike Gerwitz c675207696 csvm2csv: Add some error checks
* build-aux/csvm2csv: Fail on invalid var definition.
  (expand_vars): Fail in invalid reference.
  (parseline): Fail on non-numeric range.
* build-aux/test/test-csvm2csv
  (test-fail-unknown-var-ref, test-fail-non-numeric-range)
  (test-fail-invalid-var-dfn): New tests.
2018-10-02 13:35:06 -04:00
Mike Gerwitz c741b4a84e csvm: Add test cases and support for all variable expressions
This allows variables to contain any type of expansion, treating them
as (recursively) string replacements.

* csvm2csv: Add Copyright year.
  (expand_vars): New function.
  (parseline): Use it.  Expand before all other replacements so that
    variable expansions may support all types of expressions.  Expand
    variables in range expressions.
* test/test-csvm2csv: New file.
2018-10-01 16:14:05 -04:00
Andrew Elbaneh bd65f433d2 numeric/convert (_endpoint_): Add @desc@ 2018-09-28 16:34:37 -04:00
Mark Goldsmith aeffcb010d insurance (_premium_): Make @generates@ optional 2018-09-24 10:46:40 -04:00
Mike Gerwitz 6dfa860e25 [BC BREAK] insurance (_premium_): Make @desc@ required
* core/insurance.xml (_premium_)[@desc@]: Make required.
2018-09-21 19:00:23 -04:00
Mike Gerwitz d9bef9d028 insurance (_premium_): Add @yields@
* core/insurance.xml (_premium_)[@yields@]: New param with validations.
    Will enforce naming conventions.
  Update TODOs.
2018-09-21 18:57:22 -04:00
Mike Gerwitz 7831751d5e doc: Remove TODO item about linker classifier distinction
That was already done recently.

* doc/todo.texi (Project TODOs)[Linker]: Remove second item.
2018-09-14 16:51:33 -04:00
Mike Gerwitz 5e51e76d7b insurance: Add _{credit,debit}_/@default@
This is potentially dangerous, but is consistent with _factor_.

* insurance.xml (_credit_, _debit_)[@default@]: New param, propagated to
  `_factor_'.
2018-09-13 15:13:58 -04:00
Mike Gerwitz 0cadf76dfd param: New package with _param_ template
* param.xml: New package
2018-09-13 15:13:51 -04:00
Mike Gerwitz 6ce3a1df67 assert: Add _assert_/@neg-desc@
* assert.xml (_assert_)[@neg-desc@]: New param to allow setting the
  description of the negative classification.  This is especially useful
  when humans are going to be reading the assertion classifications; it can
  otherwise be very confusing.
2018-09-13 15:13:47 -04:00
Mike Gerwitz 0abb7104b1 assert: _assert_/@neg{_=>-}* template params
* assert.xml (_assert_)[@neg-as@, @neg-yields@]: Rename from `@neg_as@' and
  `@neg_yields' respectively.

This renames these params to be consistent with modern standards.
We want to do this before they're actually in use.
2018-09-13 15:13:41 -04:00
Mike Gerwitz 607abd281d expand-sequence: Fix TeX escaping
* src/preproc/expand/expand-sequence.xsl: {\\=>\}.
2018-09-12 16:51:11 -04:00
Mike Gerwitz f294a45507 doc: Style using CSS
* doc/Makefile.am (tame_TEXINFOS): Add `tame.css'.
  (MAKEINFOHTML): Add `--css-include tame.css'.
* doc/tame.css: New file.
2018-09-12 16:49:53 -04:00
Mike Gerwitz feb19be44a doc/notes: Remove path
This is no longer needed.

* doc/notes/path-processing: Remove file.
2018-09-12 12:11:57 -04:00
Mike Gerwitz f310603646 Add GitLab pipeline configuration 2018-09-12 12:09:04 -04:00
Mike Gerwitz e18d5bb4b5 symbols: Remove last remnants of @keep
* src/symtable/symbols.xsl (preproc:symtable)[lv:param]: Remove @keep.
* test/symtable/symbols.xspec: Remove @keep.
2018-09-12 12:07:25 -04:00
Mike Gerwitz c97af5e676 Correct failing test cases
Shame on me!

* test/graph-test.xsl (foo:graph-vtwo-vthree): Swap `a' and `c' nodes.  This
    ordering seems to have changed after a Saxon upgrade, and this ordering
    makes much more sense.
* test/symtable/symbols.xspec: Add missing `@default' and
    `@pollute'.  Remove extra `@keep'.  All keeps should be gone by now, but
    it looks like I missed some; that will be handled in a separate commit.
2018-09-12 12:07:25 -04:00
Mike Gerwitz bc1b66a3be Add GitLab pipeline config
* .gitlab-ci.yml: Add file.
2018-09-12 12:07:25 -04:00
Mike Gerwitz c53faecad0 README.md: Add links to all doc formats
* README.md (Documentation): Add links to all doc formats.
2018-09-12 12:07:25 -04:00
Mike Gerwitz ed5f3d151e Add src/ symlink to doc/
Most LaTeX distributions prohibit loading files from parent
directories.  This gets around that for PDF builds.

* doc/src: Add symlink.
* doc/tame.texi, src/symtrable.xsl: Use it.
2018-09-12 12:07:25 -04:00
Mike Gerwitz 44d3f76c0b Combine core into this repository
tame-core used to be its own repository, but maintaining it separately does
not provide a whole lot of benefit, and further makes it difficult to see
version dependencies.  I also want to centralize documentation within this
project.
2018-09-11 09:30:54 -04:00
Mike Gerwitz 2abdefb22a insurance: Add _credit_ and _debit_
* insurance.xml (_credit_, _debit_): New templates.
2018-09-11 09:30:54 -04:00
Mike Gerwitz 875ec7634f insurance (_factor_): Add @allow-negative
* insurance.xml (_factor_)[@allow-negative@]: New param.
2018-09-11 09:30:54 -04:00
Mike Gerwitz 0e084c1504 insurance (_factor_): Permit @yields only
* insurance.xml (_factor_): Permit @yields only.  Otherwise, using a
  generator is required with these templates, which is not always desirable.
2018-09-11 09:30:54 -04:00
Mike Gerwitz 6a08ad7ed3 insurance: Add missing map export
* insurance.xml: Add map import as export.
2018-09-11 09:30:54 -04:00
Mike Gerwitz 6c4d0dae4a base: Add maybe type
* base.xml (maybe, nothing): New types.
  (boolean): Move into `maybe' as union member.
2018-09-11 09:30:54 -04:00
Mike Gerwitz 368b50d026 state.xml: Add state-all yield stateAll
* state.xml (stateAll): New yield to state-all.
2018-09-11 09:30:54 -04:00
Mike Gerwitz 1254141c0f datetime: Assert on non-empty timestamp_current
This won't be a problem in practice if nothing imports the
package, so existing systems won't be affected.

* datetime.xml: New assertion for timestamp_current.
2018-09-11 09:30:53 -04:00
Mike Gerwitz 247ade8f1a alias: Do not generate alias if name matches source
* alias.xml (_classify-alias_, _rate-alias_, _rate-each-alias_): Generate
  nothing if source matches alias name.
2018-09-11 09:30:53 -04:00
Mike Gerwitz 92ab072fbd assert: Add assert_ignore param
Makes life a bit easier when debugging.

* assert.xml (assert_ignore): Add param.
2018-09-11 09:30:53 -04:00
Mike Gerwitz 1b0da8c870 symbol: Add package
* symbol.xml: New package.
* test/core/suite.xml: Import new symbol package.
* test/core/symbol.xml: New test spec.
2018-09-11 09:30:53 -04:00
Mike Gerwitz b615c2be32 state{s=>}.xml
I regret the original naming.
2018-09-11 09:30:53 -04:00
Mike Gerwitz a2fc125540 ui/_match-ui-set_: Add template
* ui.xml (_match-ui-set_): New template.
2018-09-11 09:30:53 -04:00
Mike Gerwitz e7528947a4 _classify-scalar_: Fix misspelled {yeilds=>yields}
* vector/cmatch.xml (_classify-scalar_): Typo fix {yeilds=>yields}.
2018-09-11 09:30:53 -04:00
Mike Gerwitz ee179645f7 vector/arithmetic: Remove accidentally committed debug-to-console
Noticed this when running a rater in an interactive terminal.

* vector/arithmetic.xml (_mproduct): Remove `debug-to-console'.
2018-09-11 09:30:53 -04:00
Mike Gerwitz 7dbcce3403 insurance/_factor_: Complete template
* insurance.xml (_factor_): Enforce naming conventions; allow defaults;
    assert on zero values.
2018-09-11 09:30:53 -04:00
Mike Gerwitz eb7c29bd9f convention: New package with _naming-convention_ 2018-09-11 09:30:53 -04:00
Mike Gerwitz 500fe170d4 _fold-matrix_: Add template
* vector/fold.xml (_fold-matrix_): New template.
2018-09-11 09:30:53 -04:00
Mike Gerwitz 7123f9818a _unfold-vector-grouped_: New template.
* test/core/suite.xml: Import new fold test package.
* test/core/vector/fold.xml: New test package.
* vector/fold.xml: New package.  Adds `_unfold-vector-grouped_'.
2018-09-11 09:30:53 -04:00
Mike Gerwitz a9b9286c9b vector/filter: Add vfilter_lookup
* vector/filter.xml (vfilter_lookup): New function.
2018-09-11 09:30:53 -04:00
Mike Gerwitz a8fd36176d stub: Add sequence vectors.
* vector/stub.xml: Add sequence vectors.
2018-09-11 09:30:53 -04:00
Mike Gerwitz 46c230febb _cons-until-empty_: Add @only@
* vector/list.xml (_cons-until-empty_): Add @only@, which has the opposite
    behavior to @glance@.
  (_merge-until-empty_): Proxy @only@.
2018-09-11 09:30:53 -04:00
Mike Gerwitz 34f7c6bef1 _for-each-n_: Add current_n_dec
This would be better handled by better template arithmetic features, but
that's for another time.

* tplgen.xml (_for-each-n_): Add `current_n_dec' for caller body, which
  decrements `current_n` by 1 (for 0-indexed values).
2018-09-11 09:30:53 -04:00
Mike Gerwitz 6f891b7b15 vector/filter: Decrease value of TABLE_WHEN_MASK_VALUE
This makes it more unlikely to actually occur in a table lookup;
the previous value worried me.

* vector/filter.xml (TABLE_WHEN_MASK_VALUE): Decrease value.
2018-09-11 09:30:52 -04:00
Mike Gerwitz 98f9b6fadb vector/table: Extract bisect functions into vector/filter
* vector/filter.xml (bisect, foremost, _mask-unless_): Add to package.
* vector/table.xml (bisect, foremost, _mask-unless_): Remove from package.
2018-09-11 09:30:52 -04:00