Commit Graph

146 Commits

Author SHA1 Message Date
a306f94557 Add mktemp functionality 2024-09-09 02:43:15 -04:00
b0d806a1f0 Add unicode name escapes: \U[penguin] 2024-09-07 01:43:36 -04:00
11fa4f548c Support 'when' statements as expressions 2024-09-06 14:15:55 -04:00
b36d4eaf67 Fix test 2024-09-06 12:17:43 -04:00
c789d25878 Text overhaul 2024-09-06 03:29:07 -04:00
44892df4c5 Add Text.trim() 2024-09-06 00:03:28 -04:00
47e8972427 Update 'use' test to include a '../examples/vectors.tm' import as well
as an unnamed import
2024-09-05 15:49:18 -04:00
34d98f067e For big or arbitrarily big integers not known to be constant, do full
Int$plus(a,b) logic so it's definitely correct and doesn't error.
2024-09-05 12:41:13 -04:00
d801681026 Add early outs for (or) and (and) reducers 2024-09-05 11:51:07 -04:00
73df39ff7e Fix stability of concatenation 2024-09-05 03:47:15 -04:00
3a556296b6 Add Text:repeat() 2024-09-04 21:22:03 -04:00
00543b4e87 Add Text.map(pat, fn) 2024-09-04 21:02:37 -04:00
df844946f7 Add Text:matches() for convenience and performance 2024-09-04 00:34:27 -04:00
b8bb4ada8b Add recursive mode to text replacement and update docs 2024-09-03 23:16:45 -04:00
850fc8fbe1 Clean up text replacement API to use backrefs instead of match_chain() 2024-09-03 22:56:53 -04:00
c14ed3e3e7 Add Text.replace_all({Pattern:Text}) and tweak API for replacement to
support placeholders
2024-09-03 20:48:11 -04:00
91c5dc61c1 Change pattern syntax from [..pat] to {pat} 2024-09-03 14:27:09 -04:00
64143f0a13 Syntax overhaul (comments back to #, print statments to !!),
using `$/.../` for patterns and using a DSL for patterns
2024-09-03 13:19:41 -04:00
5feecff9d9 Deprecate Where and change channel API to use a boolean front value 2024-09-03 03:53:36 -04:00
5f0b099e14 Better behavior for invalid character names 2024-09-03 01:32:00 -04:00
b517f3b287 Fix codepoint names by falling back to block names 2024-09-03 01:30:07 -04:00
e98e77e1d3 Fix for missing codepoint names 2024-09-03 01:20:36 -04:00
5441e6f287 Update docs 2024-09-03 00:54:48 -04:00
6c22999ede Add text slicing 2024-09-02 23:56:08 -04:00
5aa5a5e99b Fix some stuff around Text:find() and text indexing 2024-09-02 23:47:16 -04:00
5d6fa135b1 Add Text:find_all() 2024-09-02 23:26:55 -04:00
9d2e9c02fe Fix splitting an empty string 2024-09-02 23:24:16 -04:00
6e4be93848 Add Text:join() and tests 2024-09-02 23:13:02 -04:00
6d7e09bf18 Add Text:split() and use that with an empty pattern instead of Text:clusters() 2024-09-02 23:07:08 -04:00
9214e621bf Add Text:lines() 2024-09-02 22:57:49 -04:00
5c093e6a4a Improve test 2024-09-02 22:42:02 -04:00
708acda54e WIP fixes for synthetic graphemes and adding some text conversion
methods
2024-09-02 22:30:19 -04:00
96f276ec18 Fix test 2024-09-02 21:19:57 -04:00
cac560fdc3 Text fixes 2024-09-02 21:18:15 -04:00
620ebeab8d Fixing string methods 2024-09-02 20:22:13 -04:00
a4454df4b9 Bugfix int parsing 2024-09-02 19:23:35 -04:00
ad51b208b4 Overhaul of import syntax. Now everything uses use: use foo, `use
./foo.tm`, `use <foo.h>`, `use libfoo.so`
2024-08-22 14:02:48 -04:00
3c4f477b84 Bugfix some copy-on-write cases for when pointers are automatically
derefenced for method calls
2024-08-20 16:20:41 -04:00
934b843b1c Add .text_content as a field on DSLs instead of a method 2024-08-19 14:29:58 -04:00
4765bb4120 Update test to reflect new numeric precision 2024-08-19 12:40:29 -04:00
70d6a18f59 Add test for importing initialized values 2024-08-19 00:53:28 -04:00
8363d53bd2 Update channel API to take a Where parameter 2024-08-18 23:59:13 -04:00
9e07c6adc7 Add Channel:peek() 2024-08-18 23:31:36 -04:00
2e8c949fdc Rename push/pop to give/get, since it's not stack-ordered 2024-08-18 23:24:23 -04:00
7472837ee5 Add array:first(predicate:func(x:&T)->Bool)->@%T? 2024-08-18 22:28:04 -04:00
6f3b2c073a Add enum.tag as a way to do a boolean test for whether a value has a
particular tag or not
2024-08-18 20:58:36 -04:00
967b649da2 Deprecate # operator in favor of .length and fix up some issues 2024-08-18 20:39:57 -04:00
a49870f810 Add primality testing and next_prime()/prev_prime() 2024-08-18 15:22:51 -04:00
f4b04a1b8c Improved syntax for dollar-string literals 2024-08-18 14:44:15 -04:00
04603308af Tweak test code 2024-08-18 12:52:53 -04:00