This website requires JavaScript.
Explore
Help
Sign In
lix-project
/
lix
Watch
20
Star
57
Fork
You've already forked lix
31
Code
Issues
347
Code Review (Gerrit)
Projects
3
Releases
Wiki
Activity
fc6291e46d
lix
/
tests
/
functional
/
lang
/
eval-okay-replacestrings.exp
2 lines
73 B
Plaintext
Raw
Normal View
History
Unescape
Escape
primops: lazy evaluation of replaceStrings replacements The primop `builtins.replaceStrings` currently always strictly evaluates the replacement strings, however time and space are wasted for their computation if the corresponding pattern do not occur in the input string. This commit makes the evaluation of the replacement strings lazy by deferring their evaluation to when the corresponding pattern are matched and memoize the result for efficient retrieval on subsequent matches. The testcases for replaceStrings was updated to check for lazy evaluation of the replacements. A note was also added in the release notes to document the behavior change.
2023-05-25 04:37:00 +00:00
[ "faabar" "fbar" "fubar" "faboor" "fubar" "XaXbXcX" "X" "a_b" "fubar" ]
Reference in a new issue
Copy permalink