Commit Graph

1843 Commits

Author SHA1 Message Date
54b052c8f5 make gap buffer a little bit faster by trying to join strings less than or equal to targetLength 2024-05-25 10:49:57 +01:00
008fa90196 add gap buffer implementation which has an insert and a toString function 2024-05-22 13:52:50 +01:00
d9a2933598 code delete-balancing functions for tiny_rope23.sml 2024-05-22 00:00:52 +01:00
d6d518b5b4 fix correctness error in tiny_rope23.sml's ins function (to do with traverseing down the N3 case) 2024-05-21 17:21:09 +01:00
e7edd06e54 fix compile errors in tiny_rope23.sml 2024-05-21 15:43:22 +01:00
640bc8cc31 finish coding last insert function (insLeaf) 2024-05-21 13:45:55 +01:00
ab6b08f3c9 code insert function for rope (except for the leaf case) 2024-05-21 13:24:04 +01:00
87d999ba84 update readme with benchmarks 2024-04-03 18:39:29 +01:00
23ec222404 fix typo in readme, and add line break 2024-03-24 13:12:11 +00:00
7ea58a2b38 add performance section to readme 2024-03-24 13:10:09 +00:00
14619b63c0 finish readme 2024-03-24 12:55:08 +00:00
e2b1d2c58c add examples of usage 2024-03-24 12:50:57 +00:00
c12aaea8c2 add higher order functions to fold through Rope and TinyRope 2024-03-24 10:06:26 +00:00
a7417d89af change utils.sml to use camelCase (except for svelte_arr/rust_arr/seph_arr/automerge_arr, because I don't want to create a diff for large files 2024-03-14 23:35:13 +00:00
f5649b4ee9 change utils.sml to run using rope (with line metadata) instead of tiny_rope, and verify that line metadata is correct 2024-03-14 23:29:10 +00:00
571b16ba6c add code for deleting from rope.sml 2024-03-14 23:05:36 +00:00
8ea6d2c1b7 add 'append' and 'appendLine' functions to rope 2024-03-14 12:22:27 +00:00
224226fea8 add toString function in ROPE signature defined in rope.sml 2024-03-14 09:38:37 +00:00
3f768bab4e add function to verify line metadata in rope.sml 2024-03-14 08:07:12 +00:00
e991156a3a code insert function function rope 2024-03-14 07:48:33 +00:00
02ec341ecb progress creating a rope (rope.sml) which holds line metadata 2024-03-13 09:48:34 +00:00
3e23e1e936 begin rope.sml which is meant to store line metadata 2024-03-13 07:37:45 +00:00
21fd98df8b add append function to tiny_rope.sml 2024-03-13 06:54:19 +00:00
7bd4fad8e8 remove brackets around one part in delN2Left, making it more consistent with other part 2024-03-13 06:37:59 +00:00
84d6dacdeb format rope.sml using smlfmt 2024-03-13 06:33:51 +00:00
8177c99ef7 convert snake_case names in rope.sml to camelCase (which is standard convention for Standard ML) 2024-03-13 06:20:10 +00:00
eadaf05f94 remove smlfmt binary 2024-02-15 19:49:37 +00:00
f9d3c4a080 amend formatting 2024-02-15 19:49:01 +00:00
424acf5603 amend ins_root function, which had some errors when porting over from OCaml 2024-02-15 19:46:40 +00:00
ebf449205c add delete function to rope.sml 2024-02-15 14:05:50 +00:00
d5ffb4f762 progress rewriting rope.sml 2024-02-15 12:30:48 +00:00
Humza Shahid
f0fc084171 license 2023-11-14 10:44:52 +00:00
Humza Shahid
374f89348e remove cached build files from repository 2023-11-13 09:05:36 +00:00
Humza Shahid
588e3ccd63 amend .gitignore, so it ignores build files 2023-11-13 09:04:41 +00:00
Humza Shahid
137fe24ef5 add to_string function 2023-11-13 09:03:29 +00:00
Humza Shahid
6cd3db9104 fix balancing errors 2023-11-13 06:05:36 +00:00
Humza Shahid
26cfc01f5c add some util functions 2023-11-13 05:17:27 +00:00
Humza Shahid
dec2366926 add note to third-party 2023-11-13 04:43:53 +00:00
Humza Shahid
08411e7724 generate tuple files for testing 2023-11-13 04:39:11 +00:00
Humza Shahid
d19b660be5 forgot to write outer delete function before (only 6 lines long), so added it now 2023-11-13 03:18:35 +00:00
Humza Shahid
49204dd3f1 implement core operations 2023-11-13 03:16:56 +00:00
Humza Shahid
2d00d67a7e add substring operation 2023-11-13 02:44:27 +00:00
Humza Shahid
7bd7de01fb init 2023-11-13 02:07:42 +00:00