121 check-ins using file src/natools-smaz.adb version 85362c90bf
2017-02-16
| ||
20:56 | smaz-tests: add sample strings without variable-length verbatim check-in: f1bcc5d576 user: nat tags: trunk | |
2017-02-15
| ||
22:57 | coverage.sh: use gprbuild instead of gnatmake check-in: 89d897146c user: nat tags: trunk | |
2017-02-14
| ||
21:04 | smaz_generic-tools: fix the precondition of To_Dictionary check-in: 8458c28c3c user: nat tags: trunk | |
2017-02-13
| ||
21:12 | smaz_tests: add multi-block base-4096 verbatim, to reach full coverage check-in: 3110e5329d user: nat tags: trunk | |
2017-02-12
| ||
21:52 | smaz_tests: add base-4096 variable-length verbatim sample string test check-in: cf6b7c828f user: nat tags: trunk | |
2017-02-11
| ||
20:52 |
smaz_tests: fix verbatim parts of expected base-4096 streams
Why didn't just use standard base-64!? check-in: 0d15ccca30 user: nat tags: trunk | |
2017-02-10
| ||
20:58 | smaz_tests: update base-4096 expected streams for the new dictionaries check-in: 541596303a user: nat tags: trunk | |
2017-02-09
| ||
22:57 | smat_tests: add 256 digraphs to the base-4096 dictionaries check-in: 26569a2ae1 user: nat tags: trunk | |
2017-02-08
| ||
22:23 | smaz_tests: remove unneeded exception caused by byte-4096 hash function check-in: b2360c3935 user: nat tags: trunk | |
2017-02-07
| ||
20:48 | smaz_tests: remove 1-byte entries from 4096 dictionaries check-in: 61cc0370b5 user: nat tags: trunk | |
2017-02-06
| ||
22:09 | smaz_generic: add a description and an important warning check-in: 5793080d7d user: nat tags: trunk | |
2017-02-05
| ||
22:42 | smaz_tests: fix a mistake in a hand-made expected base-4096 stream check-in: 18dc02b3a0 user: nat tags: trunk | |
2017-02-04
| ||
22:25 | smaz_tests: fix endianness of the hand-encoded base-4096 streams check-in: 97980e3f18 user: nat tags: trunk | |
2017-02-03
| ||
21:08 | smaz_tests: fix base-4096 sample string test by actually calling it check-in: b4e3aec058 user: nat tags: trunk | |
2017-02-02
| ||
20:16 | smaz_tests: check base-4096 roundtrip of a few sample strings check-in: 46b1fe3862 user: nat tags: trunk | |
2017-02-01
| ||
21:37 | smaz_tests: add a base-4096 test harness check-in: 1d5eb501bc user: nat tags: trunk | |
2017-01-31
| ||
22:33 | tools/smaz: add support for base-4096 variant check-in: e6f252142c user: nat tags: trunk | |
2017-01-30
| ||
21:33 | smaz_4096: new instance of generic Smaz, base-64 and large dictionary check-in: c57a785ddb user: nat tags: trunk | |
2017-01-29
| ||
21:32 | tools/timekey: add CLI option to configure numer of subsecond digits check-in: b40ac98134 user: nat tags: trunk | |
2017-01-28
| ||
20:09 | tools/timekey: refactor the number of displayed subsecond digits check-in: f4f3b7b682 user: nat tags: trunk | |
2017-01-27
| ||
20:44 | tools/timekey: refactor command-line argument processing check-in: f9d3f1aa38 user: nat tags: trunk | |
2017-01-07
| ||
22:53 |
smaz_implementations-base_64: rewrite variable-length verbatim code
At some point in the development I changed the base-64 scheme, but failed to propagate it everywhere. Mostly I intend to use only one mode in base-64, and the other one is merely a place-holder, which explains how it got neglected. Now at least it works, even if it's useless. check-in: 210677c061 user: nat tags: trunk | |
2017-01-06
| ||
22:44 | smaz_tests: add a test for base-64 variable-length verbatim check-in: 3e04c004e7 user: nat tags: trunk | |
2017-01-05
| ||
22:56 | Add an ignore file check-in: 1877439212 user: nat tags: trunk | |
2017-01-04
| ||
23:07 | smaz_implementations-base_64_tools: fix exception on non-ASCII character check-in: a3ae81e9c1 user: nat tags: trunk | |
2017-01-03
| ||
20:41 | smaz_tests: add a check with non-ASCII characters check-in: 03f59a962d user: nat tags: trunk | |
2017-01-02
| ||
20:22 | smaz_tests: ASCIIfy the base-64 dictionary, to make it more portable check-in: 8f0534e6a4 user: nat tags: trunk | |
2017-01-01
| ||
21:43 | smaz_implementations-base_64: fix multi-block verbatim size computation check-in: c49fad3790 user: nat tags: trunk | |
2016-12-31
| ||
16:57 | smaz_tests: add a check to show a bug in long verbatim size computation check-in: 4f0ae7072f user: nat tags: trunk | |
2016-12-30
| ||
22:11 | smaz_generic-tools: fix removal of the first item of a dictionary check-in: dd10a5bea1 user: nat tags: trunk | |
2016-12-29
| ||
21:47 | smaz_implementations-base_64: fix index update in encoding 3n+2 vrbtim check-in: ebba07e9a7 user: nat tags: trunk | |
2016-12-28
| ||
22:29 |
smaz_implementations-base_64: fix reading of 3n+2 verbatim length
A sign error caused a direct constraint error, and using the wrong type caused overlong reads (now 4 is hardcoded just like it is in encoding code). check-in: 23d16059bd user: nat tags: trunk | |
2016-12-27
| ||
21:28 | smaz_tests: fix message of exceptions during decompression roundtrip check-in: 77d59bd0f4 user: nat tags: trunk | |
2016-12-26
| ||
20:00 | smaz_tests: add tests to fully cover non-variable-verbatim code check-in: c0e42e8031 user: nat tags: trunk | |
2016-12-25
| ||
21:39 | smaz_tests: add dictionary validity tests check-in: bc33d2a603 user: nat tags: trunk | |
2016-12-24
| ||
15:51 | smaz_tests: output base-64 stream directly, for more legibility check-in: 80ce774782 user: nat tags: trunk | |
2016-12-23
| ||
20:39 | smaz_tests: add a very basic test for base-64 Smaz check-in: a277512ddf user: nat tags: trunk | |
2016-12-22
| ||
20:47 | smaz_tests: update to make base-256-ness explicit check-in: 1a7b497cb0 user: nat tags: trunk | |
2016-12-21
| ||
20:24 | smaz_test_base_64_hash: sample generated base-64 smaz hash for tests check-in: d43e8f04d9 user: nat tags: trunk | |
2016-12-20
| ||
21:55 | tools/smaz: add support for base-64 variant check-in: 9de1423410 user: nat tags: trunk | |
2016-12-19
| ||
20:18 | smaz_64: new instance of generic smaz, outputs directly base-64 symbols check-in: 091a96ec6c user: nat tags: trunk | |
2016-12-18
| ||
21:16 | smaz_implementations-base_64_tools: new package for paddingless base-64 check-in: fd2ccb00b9 user: nat tags: trunk | |
2016-12-17
| ||
22:48 | tools/smaz: add a roundtrip check option to help debug new code check-in: f44feb5e3e user: nat tags: trunk | |
2016-12-16
| ||
20:55 |
smaz_generic: optimize compression
For some reason it seems even with -O3, calling Dict_Entry involves a string copy, which makes `memcpy` the larger time consumer of the copmpression algorithm. Inlining it manually improves performance a lot. check-in: 674fadc74b user: nat tags: trunk | |
2016-12-15
| ||
20:12 | tools/smaz: use the new validation function instead of ad-hoc code check-in: 3a95d52c86 user: nat tags: trunk | |
2016-12-14
| ||
20:01 |
smaz_generic: brind the predicate back as a separate function
Since Smaz dictionaries are meant to be global hard-coded constant objects, it makes sense to check the precondition only once, e.g. in a test suite, and not for each and every subprogram call. check-in: ec19d3153c user: nat tags: trunk | |
2016-12-13
| ||
22:09 | smaz_generic: remove the too-costly dynamic predicate check-in: 7ae85f4e93 user: nat tags: trunk | |
2016-12-12
| ||
22:18 | tools/smaz: fix the validation of retired dictionaries check-in: c291af061e user: nat tags: trunk | |
2016-12-11
| ||
21:36 | tools/smaz: work around a bugbox in GNAT 6.2 check-in: d23d8fc3b6 user: nat tags: trunk | |
2016-12-10
| ||
22:30 | tools/smaz: instantiate the old code to make it available check-in: 53a6d91b09 user: nat tags: trunk | |
2016-12-09
| ||
21:06 | tools/smaz: new command line option to select the old implementation check-in: 0f8f66819b user: nat tags: trunk | |
2016-12-08
| ||
22:29 | tools/smaz: genericize Process check-in: cfdc0a7979 user: nat tags: trunk | |
2016-12-07
| ||
21:36 | tools/smaz: partially genericize Print_Dictionary check-in: 966f7e5239 user: nat tags: trunk | |
2016-12-06
| ||
22:40 | tools/smaz: refactor dictionary holder inside the generic package check-in: 1eac1c8b76 user: nat tags: trunk | |
2016-12-05
| ||
21:01 | tools/smaz: genericize To_Dictionary check-in: 1dce15910c user: nat tags: trunk | |
2016-12-04
| ||
20:06 | tools/smaz: genericize Optimize_Dictionary check-in: 5c617d9676 user: nat tags: trunk | |
2016-12-03
| ||
22:29 | tools/smaz: genericize Evaluate_Dictionary check-in: bc86bc41ee user: nat tags: trunk | |
2016-12-02
| ||
21:12 | tools/smaz: genericize Parallel_Evaluate_Dictionary check-in: 79a36ec957 user: nat tags: trunk | |
2016-12-01
| ||
20:10 | tools/smaz: refactor dictionary processing in a dedicated procedure check-in: ef7006737f user: nat tags: trunk | |
2016-11-30
| ||
22:30 | natools.gpr: add a profiling mode to the build check-in: 2a24860505 user: nat tags: trunk | |
2016-11-29
| ||
20:37 | tools/smaz: basic adaptation to use the generic framework check-in: ab9c060396 user: nat tags: trunk | |
2016-11-28
| ||
22:31 | smaz_tools-gnat: duplication of GNAT tools for generic-based tree check-in: 29b53deb6d user: nat tags: trunk | |
2016-11-27
| ||
22:32 | smaz_generic-tools: add conversion from dictionary to word list check-in: 00a41d7915 user: nat tags: trunk | |
2016-11-26
| ||
22:48 | smaz_generic-tools: add dictionary evalution subprograms check-in: d7fe38e744 user: nat tags: trunk | |
2016-11-25
| ||
22:59 | smaz_generic-tools: new package for dictionary-dependent tools check-in: f85a938c62 user: nat tags: trunk | |
2016-11-24
| ||
21:01 | smaz_tools: add a Dummy_Hash function for dictionary-specific tools check-in: 4aa72a0c16 user: nat tags: trunk | |
2016-11-23
| ||
21:10 | smaz_tools: add a dictionary-independent version of the dynamic hashes check-in: 24c6ae742e user: nat tags: trunk | |
2016-11-22
| ||
20:04 | smaz_tools: new package for dictionary-independent tools check-in: b87eafd22c user: nat tags: trunk | |
2016-11-21
| ||
20:40 | tools/smaz: fix direct dictionaries ignoring variable-length config check-in: b141a142f0 user: nat tags: trunk | |
2016-11-20
| ||
20:20 | smaz-tools: fix computation of the first score in Worst_Index check-in: 18a2c1690b user: nat tags: trunk | |
2016-11-19
| ||
21:35 | smaz-tools: refactor scoring in To_Scored_Word check-in: 25e91595e4 user: nat tags: trunk | |
2016-11-18
| ||
22:43 | smaz-tools: add dictionary-independent scoring functions check-in: ebefb3c832 user: nat tags: trunk | |
2016-11-17
| ||
21:23 | smaz_tests: new tests suite for instantiated Smaz packages check-in: 769ae2dc25 user: nat tags: trunk | |
2016-11-16
| ||
21:50 | Duplicate original Smaz dictionary to be used with Natools.Smaz_256 check-in: 47b2749cad user: nat tags: trunk | |
2016-11-15
| ||
22:42 | smaz_256: standard Smaz algorithm built from Smaz_Generic check-in: 361f2b206c user: nat tags: trunk | |
2016-11-14
| ||
20:19 | smaz_implementations-base_256: component to instantiate standard Smaz check-in: b13d7f70e3 user: nat tags: trunk | |
2016-11-13
| ||
21:42 | smaz_generic: new package attempting generic Smaz-like compression check-in: 4b73acb2a8 user: nat tags: trunk | |
2016-11-12
| ||
20:15 | tools/smaz: use variable length verbatim option on built dictionaries check-in: 33d57890f4 user: nat tags: trunk | |
2016-11-11
| ||
21:24 | tools/smaz: fix length of non-generated dictionaries check-in: d866d343bf user: nat tags: trunk | |
2016-11-10
| ||
20:23 | tools/smaz: use current scoring method for initial dictionary building check-in: d09d9e46a9 user: nat tags: trunk | |
2016-11-09
| ||
21:14 | smaz-tools: add scoring method support in simple dictionary building check-in: 90573face2 user: nat tags: trunk | |
2016-11-08
| ||
20:44 | tools/smaz: use scoring from Natools.Smaz.Tools check-in: 99442da1d7 user: nat tags: trunk | |
2016-11-07
| ||
21:11 | smaz-tools: import scoring code from tools/smaz check-in: 5822fc18e0 user: nat tags: trunk | |
2016-11-06
| ||
20:42 | tools/smaz: add options to select variable-length verbatim codes check-in: 2365190245 user: nat tags: trunk | |
2016-11-05
| ||
20:02 | tools/smaz: new command line option to set built dictionary size check-in: bc5e6e89ab user: nat tags: trunk | |
2016-11-04
| ||
22:42 | tools/smaz: fix the letter of latest command line option check-in: 03959c30d5 user: nat tags: trunk | |
2016-11-03
| ||
20:20 | tools/smaz: new command line option for maximum pending list size check-in: 2ee60631e6 user: nat tags: trunk | |
2016-11-02
| ||
20:55 | smaz-tools: add a size limit for the simple dictionary pending list check-in: c61c547bb8 user: nat tags: trunk | |
2016-11-01
| ||
21:32 | tools/smaz: fix option arguments in help text check-in: 8a29fd3a72 user: nat tags: trunk | |
2016-10-31
| ||
22:53 | tools/smaz: add selection of the scoring method in optimization check-in: 6877c806ab user: nat tags: trunk | |
2016-10-30
| ||
18:19 | tools/sxcat: add a command-line option to output a list of input atoms check-in: ac88f5abfb user: nat tags: trunk | |
2016-10-29
| ||
20:29 | tools/smaz: actually implement dictionary optimization check-in: fb7d230fe5 user: nat tags: trunk | |
2016-10-28
| ||
20:56 | tools/smaz: refactor scores out of the evaluation block check-in: fbe80ac184 user: nat tags: trunk | |
2016-10-27
| ||
21:58 | tools/smaz: add a command-line option for optimized dictionary build check-in: cbe3489d15 user: nat tags: trunk | |
2016-10-26
| ||
20:58 | tools/smaz: refactor dictionary evaluation in a standalone subprogram check-in: d418194c20 user: nat tags: trunk | |
2016-10-25
| ||
19:55 | smaz-tools: new primitive to build a dictionary with pending words check-in: 214d918405 user: nat tags: trunk | |
2016-10-24
| ||
19:31 | smaz-tools: new primitive to append a new string value to a dictionary check-in: 5e694df685 user: nat tags: trunk | |
2016-10-23
| ||
21:23 | smaz-tools: new primitive to remove an entry from a dictionary check-in: 134a6f8380 user: nat tags: trunk | |
2016-10-22
| ||
19:21 | tools/smaz: replace "word list" with clearer "[sample] text list" check-in: db2278efbb user: nat tags: trunk | |
2016-10-21
| ||
19:32 | tools/smaz: new command-line option to filter substrings by count check-in: 637ebd90fa user: nat tags: trunk | |
2016-10-20
| ||
20:15 | smaz-tools: new primitive to filter substrings without enough counts check-in: f9d16b99f9 user: nat tags: trunk | |
2016-10-19
| ||
20:24 | tools/smaz: use the new trie-based search in dictionary evaluation check-in: 105a5395c6 user: nat tags: trunk | |
2016-10-18
| ||
21:47 | smaz-tools: add a trie-based search compatible with Dictionary.Hash check-in: 52b491f017 user: nat tags: trunk | |
2016-10-17
| ||
20:48 | smaz-tools: add a trie-based dynamic dictionary lookup check-in: 34d16d2c19 user: nat tags: trunk | |
2016-10-16
| ||
17:21 | tools/smaz.adb: use the new map-based dictionary hash in evaluation check-in: 562e1cf9fc user: nat tags: trunk | |
2016-10-15
| ||
18:50 | smaz-tools: new facility for faster hashing of dynamic dictionaries check-in: f651755fea user: nat tags: trunk | |
2016-10-14
| ||
21:01 | tools/smaz: use the new parallelization framework check-in: 1cdd0709b0 user: nat tags: trunk | |
2016-10-13
| ||
21:47 | parallelism: add a new framework with a task-local accumulator check-in: db5f3c6f57 user: nat tags: trunk | |
2016-10-12
| ||
17:50 | tools/smaz: new command-line option to enable parallel dictionary eval check-in: adcca90a65 user: nat tags: trunk | |
2016-10-11
| ||
15:37 | parallelism: new package providing framework for simple parallelizations check-in: a45910b245 user: nat tags: trunk | |
2016-10-10
| ||
14:21 | smaz-tools: add Evaluate_Dictionary_Partial to work on a single string check-in: 17783bc63e user: nat tags: trunk | |
2016-10-09
| ||
17:49 | tools/smaz: add a statistics to the evaluation output check-in: 7b31b329d7 user: nat tags: trunk | |
2016-10-08
| ||
15:38 | string_escapes: new package with helper functions to escape strings check-in: e266afb5fe user: nat tags: trunk | |
2016-10-07
| ||
16:01 | tools/smaz: first draft of CLI interface for Evaluate_Dictionary check-in: a27f42e127 user: nat tags: trunk | |
2016-10-06
| ||
17:26 | smaz-tools: add a procedure to help evaluate and improve dictionaries check-in: 3c8fd02a5c user: nat tags: trunk | |
2016-10-05
| ||
14:49 | tools/smaz: add a command-line option for maximum word size check-in: 2995e1835c user: nat tags: trunk | |
2016-10-04
| ||
15:14 | tools/smaz: add command-line options for substring size interval check-in: 9a1462e3f3 user: nat tags: trunk | |
2016-10-03
| ||
19:27 | tools/smaz: also add words from input phrases, on top of substrings check-in: 15ea367b55 user: nat tags: trunk | |
2016-10-02
| ||
16:10 | smaz-tools: new primitive to add all the words of an input text check-in: efffae966f user: nat tags: trunk | |
2016-10-01
| ||
15:25 | tools/smaz: add a command-line option to output current dictionary check-in: 1516f5a576 user: nat tags: trunk | |
2016-09-30
| ||
20:26 | smaz: make Dict_Entry accessor publicly visible check-in: 48bf48d1c0 user: nat tags: trunk | |