# Wombat IDE - A bunch of new procedures

I’ve added a bunch of new procedures today, mostly to improve compatibility with Chez Scheme and the like. All together, I’ve added these functions:

• cpu-time - get a timestamp to use in timing function runtime
~ (cpu-time)
1.339726427264E9

~ (let ([start (cpu-time)])
(long-running-function)
(- (cpu-time) start))
0.7339999675750732
• filter - keep only elements that match a given predicate
~ (filter even? '(8 6 7 5 3 0 9))
(8 6 0)
• fold-left - perform formulaic recursive procedures on lists from, see the linked Wikipedia article for more details
~ (fold-left cons '() '(8 6 7 5 3 0 9))
(((((((() . 8) . 6) . 7) . 5) . 3) . 0) . 9)

~ (fold-left + 0 '(8 6 7 5 3 0 9))
38
• fold-right - similar to fold-left with the arguments reversed
~ (fold-right cons '() '(8 6 7 5 3 0 9))
(8 6 7 5 3 0 9)

~ (fold-right + 0 '(8 6 7 5 3 0 9))
38
• any? - tests if any item in a list matches a given predicate
~ (any? even? '(8 6 7 5 3 0 9))
#t
• all? - tests if all items in a list match a given predicate
~ (all? even? '(8 6 7 5 3 0 9))
#f

Hopefully at least some of these will be useful. The current version is 1.297.15.