This site is supported by donations to The OEIS Foundation.

User:Antti Karttunen/Intseq Scheme library

From OeisWiki
Jump to: navigation, search

Source code for IntSeq library

The whole IntSeq library will be located under https://github.com/karttu/IntSeq although for the moment, only the code for memoization macro definec and sequence transformation functionals like MATCHING-POS, RECORD-POS, COMPLEMENT, etc. are clearly organized in their respective modules. However, also almost all the other code (apart from Catalan Bijections stuff - to be uploaded later) can be also found under https://github.com/karttu/IntSeq/tree/master/src/Uncleaned.

Thanks for everybody's patience!

Note also that many of the macros (like MATCHING-POS) in module transforms.scm need to be rewritten iteratively to avoid "recursion overflow" errors when trying to compute some sequence too out-of-usual-order fashion. Compare the definitions of decorators CachedMatchesFrom0_recursive_implementation and CachedMatchesFrom0 in the "proof-of-concept" Python source http://oeis.org/w/images/a/ad/Memotest.txt to see that needs to be done. Also, the implementation of DISTINCT-POS is horribly inefficient, although there are obvious ways to improve it (e.g., use an internal hash-table instead of vector).