# `PtcRunner.Lisp.Runtime`
[🔗](https://github.com/andreasronge/ptc_runner/blob/main/lib/ptc_runner/lisp/runtime.ex#L1)

Built-in functions for PTC-Lisp.

Provides collection operations, map operations, arithmetic, string manipulation,
and type predicates. This module acts as the public API and delegates to
focused submodules:

- `Runtime.FlexAccess` - Flexible key access helpers
- `Runtime.Collection` - Collection operations (filter, map, reduce, etc.)
- `Runtime.MapOps` - Map operations (get, assoc, merge, etc.)
- `Runtime.String` - String manipulation and parsing
- `Runtime.Math` - Arithmetic operations
- `Runtime.Predicates` - Type and numeric predicates

# `abs`

# `add`

# `array_map`

# `assoc`

# `assoc_in`

# `assoc_variadic`

# `associative?`

# `avg`

# `avg_by`

# `bit_and`

# `bit_and_not`

# `bit_clear`

# `bit_flip`

# `bit_not`

# `bit_or`

# `bit_set`

# `bit_shift_left`

# `bit_shift_right`

# `bit_test`

# `bit_xor`

# `blank?`

# `boolean`

# `boolean?`

# `boolean_parse_boolean`

# `butlast`

# `ceil`

# `char?`

# `coll?`

# `combinations`

# `comp_variadic`

# `compare`

# `complement`

# `concat2`

# `conj`

# `cons`

# `constantly`

# `contains?`

# `count`

# `counted?`

# `current_time_millis`

# `dec`

# `decimal?`

# `dedupe`

# `difference`

# `disj`

# `dissoc`

# `dissoc_variadic`

# `distinct`

# `distinct_args?`

# `distinct_by`

# `divide`

# `dot_contains`

# `dot_ends_with`

# `dot_get_time`

# `dot_index_of`

# `dot_index_of`

# `dot_is_after`

# `dot_is_before`

# `dot_last_index_of`

# `dot_length`

# `dot_minus_days`

# `dot_plus_days`

# `dot_starts_with`

# `dot_substring`

# `dot_substring`

# `dot_to_days`

# `dot_to_epoch_day`

# `dot_to_lower_case`

# `dot_to_millis`

# `dot_to_upper_case`

# `double`

# `double?`

# `downcase`

# `drop`

# `drop_last`

# `drop_last`

# `drop_while`

# `duration_between`

# `empty`

# `empty?`

# `ends_with?`

# `entries`

# `eq_variadic`

# `even?`

# `every?`

# `every_pred_variadic`

# `extract`

# `extract`

# `extract_int`

# `extract_int`

# `extract_int`

# `false?`

# `ffirst`

# `filter`

# `filterv`

# `find`

# `first`

# `flatten`

# `flex_fetch`

# `flex_get`

# `flex_get_in`

# `flex_put_in`

# `flex_update_in`

# `float`

# `float?`

# `floor`

# `fn?`

# `fnext`

# `fnil`

# `format_variadic`

# `frequencies`

# `get`

# `get`

# `get_in`

# `get_in`

# `grep`

# `grep_n`

# `grep_n`

# `group_by`

# `gt`

# `gt_variadic`

# `gte`

# `gte_variadic`

# `hash_map`

# `hash_set`

# `identity`

# `ifn?`

# `inc`

# `includes?`

# `index_of`

# `index_of`

# `indexed?`

# `infinite?`

# `int`

# `int?`

# `integer?`

# `interleave_variadic`

# `interpose`

# `intersection`

# `into`

# `java_util_date`

# `java_util_date`

# `join`

# `join`

# `keep`

# `keep_indexed`

# `key`

# `keys`

# `keyword`

# `keyword?`

# `last`

# `last_index_of`

# `last_index_of`

# `lt`

# `lt_variadic`

# `lte`

# `lte_variadic`

# `map`

# `map`

# `map`

# `map?`

# `map_entry?`

# `map_indexed`

# `mapcat`

# `mapv`

# `mapv`

# `mapv`

# `max`

# `max_by`

# `max_by_variadic`

# `max_key_variadic`

# `merge`

# `merge_variadic`

# `merge_with_variadic`

# `min`

# `min_by`

# `min_by_variadic`

# `min_key_variadic`

# `mod`

# `multiply`

# `name`

# `nan?`

# `nat_int?`

# `neg?`

# `neg_int?`

# `next`

# `nfirst`

# `nil?`

# `nnext`

# `not_`

# `not_any?`

# `not_empty`

# `not_eq`

# `not_eq_variadic`

# `not_every?`

# `nth`

# `nth`

# `nthnext`

# `nthrest`

# `number?`

# `numeric_eq_variadic`

# `odd?`

# `parse_boolean`

# `parse_double`

# `parse_long`

# `parse_temporal`

# `partial_variadic`

# `partition`

# `partition`

# `partition`

# `partition_all`

# `partition_all`

# `partition_by`

# `peek`

# `pop`

# `pos?`

# `pos_int?`

# `postwalk`

# `pow`

# `pr_str_variadic`

# `prewalk`

# `range`

# `range`

# `range`

# `ratio?`

# `rational?`

# `re_find`

# `re_matches`

# `re_pattern`

# `re_seq`

# `re_split`

# `reduce`

# `reduce`

# `reduce_kv`

# `regex?`

# `remainder`

# `remove`

# `replace`

# `replace`

# `rest`

# `reverse`

# `reversible?`

# `round`

# `second`

# `select_keys`

# `seq`

# `seq?`

# `seqable?`

# `sequential?`

# `set`

# `set?`

# `some`

# `some?`

# `some_fn_variadic`

# `sort`

# `sort`

# `sort_by`

# `sort_by`

# `sorted?`

# `split`

# `split_at`

# `split_lines`

# `split_with`

# `sqrt`

# `starts_with?`

# `str_variadic`

# `string?`

# `subs`

# `subs`

# `subtract`

# `subvec`

# `subvec`

# `sum`

# `sum_by`

# `symbol?`

# `take`

# `take_last`

# `take_while`

# `tree_seq`

# `trim`

# `trim_newline`

# `triml`

# `trimr`

# `true?`

# `trunc`

# `type_of`

# `union`

# `upcase`

# `update`

# `update_in`

# `update_in_variadic`

# `update_keys`

# `update_vals`

# `update_variadic`

# `val`

# `vals`

# `vec`

# `vector?`

# `walk`

# `zero?`

# `zip`

# `zipmap`

---

*Consult [api-reference.md](api-reference.md) for complete listing*
