Things that needs to be worked on in the hash_match_dev branch before version 0.4.0 of hash_match is merged into master:
[x] Add input check that ensures that if variable "var" is in then cant't contain a variable called "_var". Add test that checks this.
[x] Macro variable names have a maximum length of 32, which is the cause for restricting variable names in the macro to 25 chars so that there is room to add eg "_length" in the macro variable names created in l.669-675. Can this be by dropping the variable name from the generated macro variables? We don't need it? If this can be be implemented, the length restriction can be eased to 31 characters, and only for variables used in inexact macthing (see first point). Update tests.
[x] Update all output datasets to NOT use labels. Any needed documentation should be added to the documentation in the macro.
[x] Consider if variable names in can be improved.
[x] Update examples. Separate use of optional out datasets into an example. Also separate checking of matches into a separate example.
[x] Update all tests. Avoid using simulated data?
[x] Add information on variables in output datasets to the documentation.
[x] Add a DETAILS section to the documentation briefly explaining how hash-tables are used to do the matching and why.
[x] Look through input parameter checks and see if header/comments can be made more clear so it is easier to identify what's what.
[x] Matching does not seem to be done in the order they appear in the data (in strata of match_exact and by). Investigate.
[x] Remove the by parameter, It achieves nothing. Specified variables are simply combined with variables.
[x] remove where parameter. Seems out of scope of the macro, and is rarely if ever used (by me). can simply be subsetted prior to calling the macro.
[x] Improve inline documentation of macro.
[x] Reconsider whether or not to terminate macro is it is judged that the hash-table can't fit in memory. The calculation is approximate at best, and an informative error message will cath the error produced by this problem. Try forcing the error and see how the macro responds.
[x] Rethink use of varinitchk option. Onlly supposed to be used during matching step, so better to set it just before that and change it back after instead of changing it from the start?
[x] Add documentation on variables created and included in \<out>.
[x] Go through all examples and tests when all updates have been implemented.
Things that needs to be worked on in the hash_match_dev branch before version 0.4.0 of hash_match is merged into master: