Mike Gerwitz

Activist for User Freedom

aboutsummaryrefslogtreecommitdiffstats
path: root/core
Commit message (Collapse)AuthorAgeFilesLines
* [BC BREAK] insurance (_premium_): Make @desc@ requiredv3.0.0Mike Gerwitz2018-09-211-0/+14
| | | | * core/insurance.xml (_premium_)[@desc@]: Make required.
* insurance (_premium_): Add @yields@Mike Gerwitz2018-09-211-5/+22
| | | | | | * core/insurance.xml (_premium_)[@yields@]: New param with validations. Will enforce naming conventions. Update TODOs.
* insurance: Add _{credit,debit}_/@default@v2.18.3Mike Gerwitz2018-09-131-0/+10
| | | | | | | This is potentially dangerous, but is consistent with _factor_. * insurance.xml (_credit_, _debit_)[@default@]: New param, propagated to `_factor_'.
* param: New package with _param_ templateMike Gerwitz2018-09-131-0/+137
| | | | * param.xml: New package
* assert: Add _assert_/@neg-desc@Mike Gerwitz2018-09-131-2/+6
| | | | | | | * 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.
* assert: _assert_/@neg{_=>-}* template paramsMike Gerwitz2018-09-131-4/+4
| | | | | | | | * 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.
* insurance: Add _credit_ and _debit_Mike Gerwitz2018-09-111-0/+132
| | | | * insurance.xml (_credit_, _debit_): New templates.
* insurance (_factor_): Add @allow-negativeMike Gerwitz2018-09-111-2/+24
| | | | * insurance.xml (_factor_)[@allow-negative@]: New param.
* insurance (_factor_): Permit @yields onlyMike Gerwitz2018-09-111-15/+56
| | | | | * insurance.xml (_factor_): Permit @yields only. Otherwise, using a generator is required with these templates, which is not always desirable.
* insurance: Add missing map exportMike Gerwitz2018-09-111-0/+1
| | | | * insurance.xml: Add map import as export.
* base: Add maybe typeMike Gerwitz2018-09-111-8/+37
| | | | | * base.xml (maybe, nothing): New types. (boolean): Move into `maybe' as union member.
* state.xml: Add state-all yield stateAllMike Gerwitz2018-09-111-1/+2
| | | | * state.xml (stateAll): New yield to state-all.
* datetime: Assert on non-empty timestamp_currentMike Gerwitz2018-09-111-3/+12
| | | | | | | 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.
* alias: Do not generate alias if name matches sourceMike Gerwitz2018-09-111-12/+24
| | | | | * alias.xml (_classify-alias_, _rate-alias_, _rate-each-alias_): Generate nothing if source matches alias name.
* assert: Add assert_ignore paramMike Gerwitz2018-09-111-0/+7
| | | | | | Makes life a bit easier when debugging. * assert.xml (assert_ignore): Add param.
* symbol: Add packageMike Gerwitz2018-09-113-0/+264
| | | | | | * symbol.xml: New package. * test/core/suite.xml: Import new symbol package. * test/core/symbol.xml: New test spec.
* state{s=>}.xmlMike Gerwitz2018-09-112-194/+195
| | | | I regret the original naming.
* ui/_match-ui-set_: Add templateMike Gerwitz2018-09-111-0/+21
| | | | * ui.xml (_match-ui-set_): New template.
* _classify-scalar_: Fix misspelled {yeilds=>yields}Mike Gerwitz2018-09-111-3/+3
| | | | * vector/cmatch.xml (_classify-scalar_): Typo fix {yeilds=>yields}.
* vector/arithmetic: Remove accidentally committed debug-to-consoleMike Gerwitz2018-09-111-3/+1
| | | | | | Noticed this when running a rater in an interactive terminal. * vector/arithmetic.xml (_mproduct): Remove `debug-to-console'.
* insurance/_factor_: Complete templateMike Gerwitz2018-09-111-8/+85
| | | | | * insurance.xml (_factor_): Enforce naming conventions; allow defaults; assert on zero values.
* convention: New package with _naming-convention_Mike Gerwitz2018-09-111-0/+59
|
* _fold-matrix_: Add templateMike Gerwitz2018-09-111-0/+32
| | | | * vector/fold.xml (_fold-matrix_): New template.
* _unfold-vector-grouped_: New template.Mike Gerwitz2018-09-113-1/+217
| | | | | | * 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_'.
* vector/filter: Add vfilter_lookupMike Gerwitz2018-09-111-0/+16
| | | | * vector/filter.xml (vfilter_lookup): New function.
* stub: Add sequence vectors.Mike Gerwitz2018-09-111-4/+18
| | | | * vector/stub.xml: Add sequence vectors.
* _cons-until-empty_: Add @only@Mike Gerwitz2018-09-111-7/+29
| | | | | | * vector/list.xml (_cons-until-empty_): Add @only@, which has the opposite behavior to @glance@. (_merge-until-empty_): Proxy @only@.
* _for-each-n_: Add current_n_decMike Gerwitz2018-09-111-1/+5
| | | | | | | | 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).
* vector/filter: Decrease value of TABLE_WHEN_MASK_VALUEMike Gerwitz2018-09-111-1/+1
| | | | | | | 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.
* vector/table: Extract bisect functions into vector/filterMike Gerwitz2018-09-112-263/+278
| | | | | * vector/filter.xml (bisect, foremost, _mask-unless_): Add to package. * vector/table.xml (bisect, foremost, _mask-unless_): Remove from package.
* vector/filter: Formatting and minor docMike Gerwitz2018-09-111-20/+33
|
* vector/table: Extract mfilter and range into vector/filterMike Gerwitz2018-09-112-207/+235
| | | | | * vector/filter.xml: New package. * vector/table.xml (mfilter, _mfilter, range): Extract into vector/filter.
* base.xml: Warning on _ignore_Mike Gerwitz2018-09-111-1/+2
| | | | * base.xml (_ignore_): Output warning.
* {L=>}GPLMike Gerwitz2018-09-1149-233/+58
| | | | I don't recall why I licensed under the LGPL initially.
* todo: Copyright update 2018Mike Gerwitz2018-09-111-1/+1
|
* [BC BREAK] _todo_: No value by default and output warningMike Gerwitz2018-09-111-13/+24
| | | | | | | * base.xml (_todo): Do not output a value by default. Output warning with `@desc@'. [@hide@]: Remove parameter. [@value@, @index@]: Add parameters.
* when: Add packageMike Gerwitz2018-09-111-0/+76
|
* vector/cmatch: Deprecate @const@ on shorthand templatesMike Gerwitz2018-09-111-0/+6
| | | | | * vector/cmatch: Display warning on use of @const@ with short-hand comparison templates.
* assert: Add _assert_/@class@Mike Gerwitz2018-09-111-1/+16
| | | | | | This predicates the assertion for each class match. * assert.xml (_assert_)[@class@]: Add parameter.
* assert: Remove "Standard Assertions"Mike Gerwitz2018-09-111-72/+0
| | | | | | | These need to be re-thought, as they are now just confusing. For now, things should just use the _assert_ primitive. * assert.xml (_assert-nonzero_, _fail-on-empty_): Remove templates.
* assert: @desc@=>@failure@Mike Gerwitz2018-09-111-6/+6
| | | | Param makes more sense.
* assert: Export vector/cmatchMike Gerwitz2018-09-111-1/+1
| | | | * assert.xml: Export vector/cmatch.
* assert: _assert-nonzero_ to replace _fail-on-empty_ (alias added)Mike Gerwitz2018-09-111-9/+33
| | | | | | | | | Keep things consistent. A deprecation warning will be displayed for `_fail-on-empty_'. * assert.xml (_assert-nonzero_): Rename from `_fail-on-empty'. (_fail-on-empty_): Alias to `_assert-nonzero'. Display deprecation warning.
* [BC BREAK] assert: Correct behavior of _assert_Mike Gerwitz2018-09-111-36/+62
| | | | | | | | | | | | | | | | This completely breaks BC by completely reversing existing behavior. I'm not sure what I was thinking to begin with. Assertions are supposed to state an _expected_ condition and fail if they yield _false_; this is the opposite of what `_assert_' was doing before this change! To keep things simple, the template now requires a body and the extra `@when@' and `@class@' params have been removed (but are still available on `_fail-on-empty_'). * assert.xml (_assert_): Negate behavior. [@when@, @class@]: Remove params.
* state: Add _for-each-state_ and state-allMike Gerwitz2018-09-111-1/+105
| | | | | | * states.xml (_for-each-state_): Add template. (NVEC_STATE_ALL): Add vector. (state-all): Add class.
* Add aggregate packageMike Gerwitz2018-09-113-0/+419
| | | | | | * aggregate.xml: Add package. * test/core/aggregate.xml: Add test case. * test/core/suite.xml: Import new aggregate package.
* vector/stub: Add package.Mike Gerwitz2018-09-113-0/+131
| | | | | * test/core/vector/stub.xml: Add specification. * vector/stub.xml: Add package.
* tplgen: Add packageMike Gerwitz2018-09-113-2/+145
| | | | | | * test/core/suite.xml: Import new tplgen package. * test/core/tplgen.xml: Add test. * tplgen.xml: Add package.
* test/core/round: Fix _let-round_ expectationsMike Gerwitz2018-09-111-53/+11
| | | | | | | | This technically worked because the compiler produced correct JS code, but it shouldn't have (there's just no validation here). Recent changes to the summary page caused this to blow up when building the suite.
* Add _match-result_/@eq@Mike Gerwitz2018-09-111-6/+19
| | | | * test/spec.xml (_match-result_)[@eq@]: Add param.