Compare commits
10 Commits
a1c369ad4d
...
bd06431dc8
| Author | SHA1 | Date |
|---|---|---|
|
|
bd06431dc8 | 3 years ago |
|
|
a437597a4f | 3 years ago |
|
|
39cf487a0f | 3 years ago |
|
|
56664fe676 | 3 years ago |
|
|
fe6c0a1443 | 5 years ago |
|
|
3a7ee19cab | 5 years ago |
|
|
0ab0699934 | 5 years ago |
|
|
9f8010bae2 | 5 years ago |
|
|
75732d18c6 | 5 years ago |
|
|
dc21dc0671 | 5 years ago |
@ -0,0 +1,52 @@
|
||||
# tk
|
||||
tk is my Guile toolkit.
|
||||
Each unit contains a group of tools I commonly used together or with a
|
||||
particular module.
|
||||
|
||||
`make; sudo make install` Will install source files to `(%site-dir)` and
|
||||
compiled versions to `(%site-ccache-dir)`. All units are installed under a
|
||||
folder named `tk/` and so are imported using `(use-modules (tk <unit>))`.
|
||||
|
||||
## short.scm
|
||||
Aliases for only the most common names. I use this literally everywhere
|
||||
`(string->symbol)` => `(ss>)`
|
||||
`(symbol->string)` => `(ss<)`
|
||||
`(ssa>)` appends strings into a symbol
|
||||
|
||||
## listlogic.scm
|
||||
Various logical tools. Especially useful for handling `map` and `fold` where a
|
||||
default path is required.
|
||||
|
||||
`(display-if-not)`
|
||||
Displays a given string if the first argument is `#f`
|
||||
`(flatten)`
|
||||
De-nests lists into a form where no `(car)` contains a list
|
||||
`(lp&)`
|
||||
Tests some predicate pairwise over two lists
|
||||
`(l&)`
|
||||
Tests the equality according to `eq?` over two lists, returns as a list
|
||||
all passing elements
|
||||
`(if-some)`
|
||||
The common `(if var var)` pattern
|
||||
`(if-some-else)`
|
||||
The common `(if var var default)` pattern
|
||||
|
||||
## mcron.scm
|
||||
Constants and functions for working with time, schedules and mcron.
|
||||
|
||||
`sec/min` `sec/hour` `sec/day` `sec/week`
|
||||
Useful constants
|
||||
`sec/mins` `sec/hours` `sec/days` `sec/weeks`
|
||||
Readable shortcuts, `(sec/mins 4)` rather than `(* 4 60)` or worse `240`
|
||||
`(step-from)`
|
||||
Normalize a time to be the next step sized increment from a base time
|
||||
`(str->secs)`
|
||||
`(strf->secs)`
|
||||
Converts a date string into seconds
|
||||
`(current-date-string)`
|
||||
`(yesterday-date-string)`
|
||||
Returns the date as a string for logging purposes
|
||||
|
||||
## ports.scm
|
||||
Convenience when working with ports and parsers.
|
||||
`(port-rewind!)`
|
||||
Loading…
Reference in new issue