tracking function Parity Between sl-sh and slosh
Forms yet to be implemented: 248
Forms implemented or skipped: 273
| ? | Slosh Form | Notes |
|---|---|---|
| ✅ | % | |
| ✅ | * | |
| ✅ | *active-ns* | Renamed to: *ns* |
| ✅ | *bg-black* | |
| ✅ | *bg-blue* | |
| ✅ | *bg-cyan* | |
| ✅ | *bg-default* | |
| ✅ | *bg-green* | |
| ✅ | *bg-magenta* | |
| ✅ | *bg-red* | |
| ✅ | *bg-white* | |
| ✅ | *bg-yellow* | |
| ☑️ | *collection-src* | Not necessary in slosh. |
| ☑️ | *core-src* | Not necessary in slosh. |
| ✅ | *euid* | |
| ✅ | *euler* | |
| ✅ | *fg-black* | |
| ✅ | *fg-blue* | |
| ✅ | *fg-cyan* | |
| ✅ | *fg-default* | |
| ✅ | *fg-green* | |
| ✅ | *fg-magenta* | |
| ✅ | *fg-red* | |
| ✅ | *fg-white* | |
| ✅ | *fg-yellow* | |
| ☑️ | *getopts-log* | Not necessary in slosh. |
| ☑️ | *getopts-src* | Not necessary in slosh. |
| ☑️ | *iterator-src* | Not necessary in slosh. |
| ✅ | *last-command* | |
| ✅ | *last-status* | |
| ☑️ | *lib-src* | Not necessary in slosh. |
| ❌ | *load-path* | |
| ✅ | *ns* | |
| ☑️ | *ns-exports* | Not necessary in slosh. |
| ✅ | *pi* | |
| ☑️ | *read-table* | Not necessary in slosh. |
| ☑️ | *read-table-terminal* | Not necessary in slosh. |
| ❌ | *repl-settings* | |
| ❌ | *run-script* | |
| ☑️ | *seq-src* | Not necessary in slosh. |
| ☑️ | *shell-read-src* | Not necessary in slosh. |
| ☑️ | *shell-src* | Not necessary in slosh. |
| ☑️ | *slsh-std-src* | Not necessary in slosh. |
| ☑️ | *slshrc-src* | Not necessary in slosh. |
| ❌ | *std-lib-exported-syms-hash* | |
| ❌ | *std-lib-namespaces* | |
| ❌ | *std-lib-syms-hash* | |
| ❌ | *stderr* | |
| ❌ | *stdin* | |
| ❌ | *stdout* | |
| ❌ | *string-read-table* | |
| ☑️ | *struct-src* | Not necessary in slosh. |
| ☑️ | *test-src* | Not necessary in slosh. |
| ✅ | *uid* | |
| ❌ | =+ | |
| ✅ | - | |
| ❌ | -> | |
| ❌ | ->> | |
| ✅ | / | |
| ✅ | 2pow | |
| ✅ | < | |
| ✅ | <= | |
| ✅ | = | |
| ✅ | > | |
| ✅ | >= | |
| ❌ | ^ns-stack-xyz^ | |
| ❌ | __prompt | |
| ✅ | abs | |
| ❌ | alias | |
| ❌ | alias? | |
| ✅ | and | |
| ❌ | and-let* | |
| ❌ | append | |
| ❌ | append-iter | |
| ❌ | append-to! | |
| ✅ | apply | |
| ❌ | apply-defaults | |
| ✅ | arccos | |
| ✅ | arcsin | |
| ✅ | arctan | |
| ✅ | args | Renamed to: *args* |
| ❌ | arity-zero-can-not-be-required | |
| ✅ | assert-equal | |
| ✅ | assert-error | |
| ✅ | assert-error-msg | |
| ✅ | assert-false | |
| ❌ | assert-includes | |
| ✅ | assert-not-equal | |
| ❌ | assert-not-includes | |
| ✅ | assert-true | |
| ✅ | back-quote | |
| ❌ | bg | |
| ✅ | bg-color-rgb | |
| ✅ | block | |
| ✅ | boolean? | |
| ❌ | builtin? | |
| ✅ | butlast | |
| ❌ | caaar | |
| ❌ | caadr | |
| ❌ | caar | |
| ❌ | cadar | |
| ❌ | cadddr | |
| ❌ | caddr | |
| ❌ | cadr | |
| ✅ | callable? | |
| ✅ | car | |
| ✅ | cd | |
| ❌ | cdaar | |
| ❌ | cdadr | |
| ❌ | cdar | |
| ❌ | cddar | |
| ❌ | cdddr | |
| ❌ | cddr | |
| ✅ | cdr | |
| ✅ | ceil | |
| ❌ | chain | |
| ❌ | chain-and | |
| ❌ | chain-when | |
| ✅ | char->int | Renamed to: ->int |
| ✅ | char-lower | |
| ✅ | char-upper | |
| ✅ | char-whitespace? | |
| ✅ | char? | |
| ❌ | check | |
| ❌ | check-custom | |
| ❌ | clear-dirs | |
| ❌ | close | |
| ❌ | codepoints | |
| ❌ | collate-fs-changes | |
| ❌ | collect | |
| ❌ | collect-copy | |
| ❌ | collect-str | |
| ❌ | collect-vec | |
| ✅ | cond | |
| ❌ | consume-comment | |
| ❌ | consume-whitespace | |
| ✅ | cos | |
| ✅ | dec! | |
| ✅ | def | |
| ✅ | def? | |
| ✅ | defmacro | |
| ✅ | defn | |
| ☑️ | defstruct | Will consider other implementations if struct-like functionality if desired. |
| ☑️ | deftrait | Will consider other implementations if trait-like functionality is desired. |
| ❌ | dirs | |
| ✅ | do | |
| ❌ | do-unstr | |
| ✅ | doc | |
| ☑️ | doc-raw | Possible now with command: (get-prop 'symbol :doc-string) |
| ✅ | dotimes | |
| ✅ | dotimes-i | |
| ☑️ | double-ended-iter? | Not necessary in slosh. |
| ☑️ | double-ended-iterator | Not necessary in slosh. |
| ✅ | dyn | |
| ❌ | empty-seq? | |
| ✅ | empty? | |
| ❌ | enforce-constrains | |
| ❌ | epoch | |
| ✅ | eprint | Renamed to: epr |
| ✅ | eprintln | Renamed to: eprn |
| ✅ | err | |
| ❌ | err> | |
| ❌ | err>> | |
| ❌ | err>null | |
| ❌ | error-stack-off | |
| ❌ | error-stack-on | |
| ✅ | eval | |
| ✅ | exit | |
| ✅ | exp | |
| ❌ | expand-brace | |
| ❌ | expand-dollar | |
| ✅ | expand-macro | |
| ❌ | expand-macro-all | |
| ❌ | expand-macro1 | |
| ❌ | expand-tilde | |
| ❌ | export | |
| ✅ | false? | |
| ✅ | falsey? | |
| ❌ | fc | |
| ❌ | fg | |
| ✅ | fg-color-rgb | |
| ✅ | file-iter | |
| ❌ | file? | |
| ✅ | filter | |
| ❌ | filter-iter | |
| ❌ | find-symbol | |
| ✅ | first | |
| ❌ | first-quartile | |
| ❌ | fix-one-arg-bindings | |
| ❌ | flatten-args | |
| ✅ | float->int | Renamed to: ->int |
| ✅ | float? | |
| ✅ | floor | |
| ✅ | flush | Renamed to: fflush |
| ✅ | fn | |
| ❌ | fn-to-predicate | |
| ❌ | fncall | |
| ✅ | for | |
| ❌ | for-i | |
| ❌ | fork | |
| ❌ | format | |
| ✅ | fract | |
| ✅ | fs-accessed | |
| ✅ | fs-base | |
| ✅ | fs-crawl | |
| ✅ | fs-dir? | |
| ✅ | fs-exists? | |
| ✅ | fs-file? | |
| ✅ | fs-len | |
| ✅ | fs-modified | |
| ❌ | fs-notify | |
| ✅ | fs-parent | |
| ✅ | fs-rm | |
| ✅ | fs-same? | |
| ❌ | func? | |
| ✅ | gensym | |
| ❌ | get-arity | |
| ❌ | get-dirs | |
| ✅ | get-env | Renamed to: env |
| ✅ | get-error | |
| ❌ | get-home | |
| ❌ | get-next-params | |
| ❌ | get-pid | |
| ✅ | get-rgb-seq | |
| ✅ | get-temp | |
| ✅ | get-temp-file | |
| ❌ | get_pwd | |
| ❌ | getopts | |
| ❌ | getopts-bad-first-arg | |
| ❌ | getopts-bad-option-arity | |
| ❌ | getopts-help | |
| ❌ | getopts-help--options-map-is-map | |
| ❌ | getopts-illegal-option | |
| ❌ | getopts-invalid-type-function | |
| ❌ | getopts-options-map-is-map | |
| ❌ | getopts-type-error-message | |
| ✅ | glob | |
| ❌ | handle-last-command | |
| ❌ | handle-process | |
| ✅ | hash-clear! | |
| ❌ | hash-get | |
| ✅ | hash-haskey | Renamed to: hash-haskey? |
| ✅ | hash-keys | |
| ✅ | hash-remove! | |
| ☑️ | hash-set! | (set! my-set.key "value") |
| ✅ | hash? | Renamed to: hash-set? |
| ❌ | history-context | |
| ❌ | history-empty? | |
| ❌ | history-length | |
| ❌ | history-nth | |
| ❌ | history-push | |
| ❌ | history-push-throwaway | |
| ✅ | identity | |
| ✅ | if | |
| ✅ | import | |
| ✅ | in? | |
| ✅ | inc! | |
| ✅ | int->float | Renamed to: ->float |
| ✅ | int? | |
| ❌ | interleave | |
| ❌ | interleave-iter | |
| ❌ | intern-stats | |
| ❌ | is-getopts-option-string | |
| ❌ | is-multi-char-arg | |
| ❌ | is-multi-single-char-args | |
| ❌ | is-single-char-arg | |
| ✅ | iter | |
| ✅ | iter-or-single | |
| ✅ | iter? | |
| ❌ | iterator | |
| ❌ | jobs | |
| ❌ | join | |
| ✅ | lambda? | Renamed to: callable? |
| ✅ | last | |
| ❌ | len0? | |
| ❌ | len>0? | |
| ❌ | length | |
| ✅ | let | |
| ✅ | let* | Renamed to: let |
| ❌ | let-env | |
| ✅ | list | |
| ✅ | list-iter | |
| ❌ | list-vec? | |
| ✅ | list? | |
| ❌ | lists= | |
| ❌ | lne | |
| ✅ | load | |
| ✅ | log | |
| ✅ | log2 | |
| ❌ | logger | |
| ✅ | loop | |
| ✅ | macro | |
| ❌ | macro? | |
| ✅ | make-hash | |
| ❌ | make-hash-with-keys | |
| ❌ | make-regex | |
| ✅ | make-vec | |
| ✅ | map | |
| ❌ | map-iter | |
| ✅ | match | |
| ✅ | max | |
| ❌ | maybe-docstring? | |
| ❌ | maybe-glob? | |
| ❌ | mean | |
| ❌ | median | |
| ❌ | meld | |
| ❌ | meld-iter | |
| ❌ | meta-add-tags | |
| ❌ | meta-column-no | |
| ❌ | meta-file-name | |
| ❌ | meta-line-no | |
| ❌ | meta-tag? | |
| ❌ | method | |
| ✅ | min | |
| ❌ | mkli | |
| ❌ | mode | |
| ❌ | next! | |
| ✅ | nil? | |
| ❌ | non-empty-seq? | |
| ❌ | none? | |
| ✅ | not | |
| ❌ | ns-auto-export | |
| ✅ | ns-create | Renamed to: with-ns |
| ✅ | ns-enter | Renamed to: ns |
| ❌ | ns-exists? | |
| ☑️ | ns-export | Everything in slosh is exported by default. |
| ✅ | ns-import | Renamed to: import |
| ✅ | ns-list | Renamed to: get-namespaces |
| ☑️ | ns-pop | Not necessary in slosh. |
| ☑️ | ns-push | Not necessary in slosh. |
| ✅ | ns-symbols | Renamed to: get-in-namespace |
| ✅ | nsubstitute! | |
| ❌ | nth | |
| ❌ | null | |
| ❌ | nyi | |
| ✅ | occurs | |
| ✅ | open | Renamed to: fopen |
| ✅ | or | |
| ❌ | out-err> | |
| ❌ | out-err>> | |
| ❌ | out-err>null | |
| ❌ | out> | |
| ❌ | out>> | |
| ❌ | out>null | |
| ☑️ | pair= | Do not need separate equals specifier for pair. |
| ✅ | pair? | |
| ❌ | path_list_trunc | |
| ❌ | pid | |
| ❌ | pipe | |
| ☑️ | pipe-err | Not necessary in slosh. |
| ❌ | popd | |
| ✅ | pow | |
| ✅ | print | Renamed to: pr |
| ☑️ | print-error | Now one drops in to the debugger when an error occurs. |
| ✅ | println | Renamed to: prn |
| ✅ | probool | |
| ❌ | process? | |
| ❌ | prompt | |
| ❌ | pushd | |
| ❌ | qsort | |
| ✅ | quote | |
| ✅ | random | |
| ✅ | random-str | |
| ✅ | range | |
| ❌ | range-iter | |
| ❌ | re-color | |
| ❌ | re-find | |
| ❌ | re-find-all | |
| ❌ | re-match | |
| ❌ | re-replace | |
| ✅ | read | |
| ✅ | read-all | |
| ✅ | read-line | |
| ❌ | read-list | |
| ❌ | read-string | |
| ❌ | read-var | |
| ❌ | read-var-bracket | |
| ❌ | reader-macro-dot | |
| ❌ | reap-jobs | |
| ✅ | recur | |
| ❌ | redir&> | |
| ❌ | redir&>> | |
| ❌ | redir2> | |
| ❌ | redir2>> | |
| ❌ | redir> | |
| ❌ | redir>> | |
| ✅ | reduce | |
| ❌ | reduce-times | |
| ✅ | ref | |
| ❌ | regex? | |
| ❌ | register-alias | |
| ❌ | repeat | |
| ✅ | repeat-iter | |
| ❌ | repl | |
| ❌ | repl-eof | |
| ❌ | repl-line | |
| ❌ | required-argument | |
| ✅ | rest | |
| ❌ | return-from | |
| ✅ | reverse | |
| ❌ | reverse-iter | |
| ❌ | rm-esc | |
| ✅ | round | |
| ❌ | run-bg-first | |
| ❌ | run-bg-prep-args | |
| ❌ | run-example | |
| ❌ | run-ns-example | |
| ✅ | seq-for | |
| ✅ | seq? | |
| ✅ | set! | |
| ❌ | set-dirs-max | |
| ❌ | set_prompt_tail | |
| ❌ | setnth! | |
| ❌ | setup-chainer | |
| ❌ | shell-read | |
| ❌ | shell-read-int | |
| ✅ | sin | |
| ❌ | single-iter | |
| ✅ | sleep | |
| ❌ | slice | |
| ❌ | slice-iter | |
| ❌ | some? | |
| ✅ | sqrt | |
| ❌ | std-dev | |
| ✅ | str | |
| ✅ | str->float | Renamed to: ->float |
| ✅ | str->int | Renamed to: ->int |
| ✅ | str-append | |
| ✅ | str-bytes | |
| ✅ | str-cat-list | |
| ✅ | str-clear! | |
| ✅ | str-contains | |
| ✅ | str-empty? | |
| ❌ | str-iter-empty? | |
| ❌ | str-iter-next! | |
| ❌ | str-iter-peek | |
| ❌ | str-iter-start | |
| ✅ | str-lower | |
| ✅ | str-ltrim | |
| ✅ | str-map | |
| ❌ | str-nth | |
| ✅ | str-push! | |
| ✅ | str-replace | |
| ✅ | str-rsplit | |
| ✅ | str-rsplitn | |
| ✅ | str-rtrim | |
| ✅ | str-split | |
| ✅ | str-splitn | |
| ✅ | str-starts-with | |
| ✅ | str-sub | |
| ✅ | str-trim | |
| ✅ | str-upper | |
| ✅ | string-iter | |
| ✅ | string? | |
| ✅ | substitute | |
| ❌ | summary-stats | |
| ❌ | supported-types-map | |
| ❌ | sym | |
| ❌ | sym->str | |
| ✅ | symbol? | |
| ✅ | syntax-off | |
| ✅ | syntax-on | |
| ❌ | sys-apply | |
| ✅ | sys-command? | |
| ✅ | syscall | Renamed to: sh |
| ❌ | take | |
| ❌ | take-iter | |
| ✅ | tan | |
| ✅ | temp-dir | |
| ❌ | third-quartile | |
| ❌ | time | |
| ❌ | timer | |
| ❌ | to-degrees | |
| ❌ | to-radians | |
| ✅ | tok-default-color | |
| ✅ | tok-invalid-color | |
| ✅ | tok-slsh-fcn-color | |
| ✅ | tok-slsh-form-color | |
| ✅ | tok-string-color | |
| ✅ | tok-sys-alias-color | |
| ✅ | tok-sys-command-color | |
| ❌ | token-delim | |
| ✅ | true? | |
| ✅ | type | |
| ❌ | umask | |
| ❌ | unalias | |
| ❌ | undef | |
| ❌ | unexport | |
| ❌ | unregister-alias | |
| ❌ | unwind-protect | |
| ❌ | valid-first-arg? | |
| ❌ | values | |
| ❌ | values-length | |
| ❌ | values-nth | |
| ❌ | values? | |
| ❌ | var | |
| ❌ | var-or-env | |
| ✅ | vec | |
| ✅ | vec-clear! | |
| ✅ | vec-empty? | Renamed to: empty? |
| ✅ | vec-insert! | |
| ✅ | vec-iter | |
| ✅ | vec-nth | Renamed to: get |
| ✅ | vec-pop! | |
| ✅ | vec-push! | |
| ✅ | vec-remove! | |
| ✅ | vec-set! | Renamed to: set! |
| ✅ | vec-slice | |
| ✅ | vec? | |
| ☑️ | verify-all-options-valid | Leftover from getopts implementation. |
| ☑️ | verify-arity | Leftover from getopts implementation. |
| ❌ | version | |
| ❌ | wait | |
| ✅ | when | |
| ❌ | with-padding | |
| ✅ | with-temp | |
| ✅ | with-temp-file | |
| ❌ | write-line | |
| ❌ | write-string | |
| ✅ | xar! | |
| ✅ | xdr! |