Category:TXR
This programming language may be used to instruct a computer to perform a task.
See Also: |
|
---|
TXR[1] is a new text extraction language implemented in C, running on Linux (and possibly other POSIX platforms).
Here is a very basic hello-world-type TXR query that re-implements the "free" utility:
<lang txr>#!/usr/bin/txr -f @(next "/proc/meminfo") @(skip) MemTotal:@/ +/@TOTAL kB MemFree:@/ +/@FREE kB Buffers:@/ +/@BUFS kB Cached:@/ +/@CACHED kB @(skip) SwapTotal:@/ +/@SWTOT kB SwapFree:@/ +/@SWFRE kB @(next `!echo $(( @TOTAL - @FREE ))`) @USED @(next `!echo $(( @USED - @BUFS - @CACHED ))`) @RUSED @(next `!echo $(( @FREE + @BUFS + @CACHED ))`) @RFREE @(next `!echo $(( @SWTOT - @SWFRE ))`) @SWUSE @(output)
TOTAL USED FREE BUFFERS CACHED
Mem: @{TOTAL -12} @{USED -12} @{FREE -12} @{BUFS -12} @{CACHED -12} +/- buffers/cache: @{RUSED -12} @{RFREE -12} Swap: @{SWTOT -12} @{SWUSE -12} @{SWFRE -12} @(end)</lang>
Sample run:
$ ./meminfo.txr TOTAL USED FREE BUFFERS CACHED Mem: 769280 647752 121528 160108 286844 +/- buffers/cache: 200800 568480 Swap: 1048568 18200 1030368
Arithmetic is not implemented in TXR as of version 035. The above example simply continues the pattern matching across invocations of echo to borrow the shell to do math. The command
@(next `!echo $(( @TOTAL - @FREE ))`) @USED
means, "Next, please switch to scanning the output of this echo command with some variables substituted in. Then capture entire first line of this command into the USED variable."
Subcategories
This category has the following 3 subcategories, out of 3 total.
@
- TXR examples needing attention (empty)
- TXR Implementations (empty)
- TXR User (3 P)
Pages in category "TXR"
The following 160 pages are in this category, out of 160 total.
A
C
- Caesar cipher
- Call a foreign-language function
- Call a function in a shared library
- Call an object method
- Canonicalize CIDR
- Classes
- Closures/Value capture
- Combinations
- Combinations with repetitions
- Comma quibbling
- Command-line arguments
- Comments
- Compile-time calculation
- Compound data type
- Conditional structures
- Constrained genericity
- Count occurrences of a substring
- CRC-32
- CSV data manipulation
- CSV to HTML translation
- Currying
E
F
H
L
M
P
Q
R
S
- S-expressions
- Scope modifiers
- Send email
- Set consolidation
- SHA-256
- Shell one-liner
- Short-circuit evaluation
- Show ASCII table
- Singleton
- Sleep
- Smallest square that begins with n
- Sockets
- Sort stability
- Sort three variables
- Soundex
- Special characters
- String matching
- Strip a set of characters from a string
- Strip control codes and extended characters from a string
- Strip whitespace from a string/Top and tail
- Sum of a series
- Summarize and say sequence
- Synchronous concurrency