- inspiration: AWK, Haskell, J/APL/k, C (include)... (some architectural decisions mime GHC)
- Anchored streams
- Bug: fold1
- fold-of-scan-of-mapMaybe...
- two expressions with fold1 (and also gather-folds)
- fold: catmaybes, mapMaybes
- Document escaped characters
- tuples
- Document
%i
,%s
in manpages
-
reintercalate
builtin - ∅ for monoidal identity
- defeq ≔
- ≜
- arrows (types)
- APL iota should be allowed instead of 'ix'
- lambda
- ♯ in front of type variables
- 〈〈⟨⟩
- unicode/apl for floor+ceiling
- ⍬
- keep
rs
? - properly handle right-associative operations (for one)
- set variables on the command-line?
-
fd
has{}
,{/}
, etc. so one could use it to pass in filenames while invoking...
-
- named columns (e.g. ``Ndx
for output of
readelf -Ws`)- a bunch of records in Unix are blocks-of-record-of... (split on header, then find field, then sep by space to get value)
- scan1
- "mod"
-
$>
operator like awk'sEND
, allow stream to print and then present summary -
Ord
for tuples, vectors - occurs check
-
drop
builtin/syntax? -
$(
anchor
: evaluate multiple streams at once -
$1:
etc. parseable columns -
:?
parsemaybe - 0 literal could be a float
-
fail : a
builtin (unicode bottom?) - Error when type is ambiguous (e.g.
3: - 2:
or w/e) - mapMaybe, catMaybes? for
Witherable
...- vectors/lists should be a member!
- iota for vectors etc.
- SCANS
- backend
- ignore case?
- environment variables
-
x
need only be a keyword inside anonymous functions (dfns?)... otherwise it can be a variable!- that introduced a bug w/ nested dfns (euh)
-
.1
etc. to extract tuples (arrays?) - alex-style regex combinations,
$digit+
and@string_in
or w/e -
parse dates - [½] map, filter, scan, prior for vectors &c.?
- lint for duplicate names at top-level
- list comprehensions or w/e
-
\
$` as "all fields, as list" or something -
dedupBy
builtin - Infix operators
-
$>
(ice cream cone?) -
~?
(maybe match) - (<|>) (alternative)
-
- fold without seed
-
seq 10 | ja "[x+','+y]|'' \$0"
- foldMaybe
-
- helios distribution? https://github.com/oxidecomputer/helios
-
csv format:FPAT = "([^,]*)|(\"[^\"]+\")"
- substitute multiple to process
https://gitlab.haskell.org/ghc/ghc/-/wikis/commentary/compiler/symbol-names#variable-characters
vectorzmstreamzm0zi1zi0zi1zmb52aad89fd7b09efa5330a0a5ffa6e096514cefa8231d7a1e742d7f529db8237_DataziStreamziMonadic_zzipWith6_slow
- https://www.thegeekstuff.com/2010/01/8-powerful-awk-built-in-variables-fs-ofs-rs-ors-nr-nf-filename-fnr/
- OFS
- ORS
-
Ord
instance for option?
-
$$
synonym for newline? -
.[ ... ]
dfn where you specify that it's binary? -
?
for if... then? - infix foldMap
- fold-maybe
- lineLength := (#")
-
{\<pat>}. $0
... filter on stream expressions- or #: maybe?
-
0$
or something... stream of lines line, split by field separator into a list
- https://github.com/wernsey/d.awk
- https://www.well.ox.ac.uk/~johnb/comp/awk/awk.html
- https://muhammadraza.me/2022/data-oneliners/
- http://cowlark.com/mercat/
- mve.awk
- Awk scripts for building glibc
- mach syscalls (print+summarize)
vanessa@Vanessas-Air jacinda % seq 100001 | cabal run ja -- run test/examples/evenOdd.jac
(50000 . 50001)
vanessa@Vanessas-Air jacinda % seq 1000001 | cabal run ja -- run test/examples/evenOdd.jac
(500002 . 500000)
- Scoping pass so that ix outside of
{|...}
would be caught -
ix
(line number) on filtered streams?
- strpbrk in lazy-csv
- print redexes idk
- https://github.com/ezrosent/frawk/blob/master/info/performance.md#test-data
- https://github.com/petewarden/dstkdata
- http://awka.sourceforge.net/compare.html
- don't inline e.g. fold-of-stream
- Rewrite rules:
eNorm
twice, rename twice, &c. - 32m to normalize expression (eClosed) on chess example
- space leak ay (foldWithCtx ... scanl' works) (manual space leak)
- not a fan of prettyprint
- "context" builtin, like scan...
with
otool -l $(locate libpng.dylib) | ja '{`1 ~ /^name/}{`2}'
LD_ID_DYLIB
vs.LD_LOAD_DYLIB
as "context" output ofobjdump -D
afterDisassembly of section
(bookend)(scan ith seed)nm --defined-only /usr/local/lib/libgmp.a
- https://github.com/tenox7/ttyplot#examples
- https://github.com/arnoldrobbins/dformat/blob/master/dformat.awk
- https://awk.dev/
- https://github.com/gunnarmorling/1brc
- min/max
- https://www.stats.govt.nz/large-datasets/csv-files-for-download/
- https://catalog.data.gov/dataset/?res_format=CSV
- https://datatracker.ietf.org/doc/html/rfc4180
- checksum?
- [½]
basename
,pathchk
(lol) - https://github.com/curl/trurl
- https://github.com/pharmbio/ptp-project/blob/master/exp/20180426-wo-drugbank/wo_drugbank_wf.go
- https://github.com/epogrebnyak/justpath
- https://github.com/socialfoundations/folktables
- https://ssoready.com/blog/engineering/truths-programmers-timezones/
- https://catonmat.net/blog/wp-content/uploads/2008/09/awk1line.txt
- http://www.awklang.org/action/?nvgexp&child
- https://stackoverflow.com/q/2957684
- JQ_COLORS="0;90:0;37:0;37:0;37:0;32:1;37:1;37:1;34"
- https://github.com/rcoh/angle-grinder?tab=readme-ov-file#query-syntax
- https://sed.sourceforge.io/grabbag/
- https://sed.sourceforge.io/
- seq 6 | sed -n 'N;l;D'
- https://gist.github.com/rubyroobs/77cc19f8985a12ca81e7d53789c144c5
- xz --robot --list *.xz | awk '/^totals/{print $5-$4}'
- https://gynvael.coldwind.pl/?lang=en&id=782