diff --git a/.gitignore b/.gitignore index 2fba888..d09d1ba 100644 --- a/.gitignore +++ b/.gitignore @@ -3,6 +3,11 @@ /bench/gap_buffer_seph /bench/gap_buffer_automerge +/bench/line_gap_svelte +/bench/line_gap_rust +/bench/line_gap_seph +/bench/line_gap_automerge + /bench/rope_svelte /bench/rope_rust /bench/rope_seph diff --git a/bench/Makefile b/bench/Makefile index e8df932..42b5ab5 100644 --- a/bench/Makefile +++ b/bench/Makefile @@ -1,15 +1,12 @@ -bench: gap_buffer_svelte gap_buffer_rust gap_buffer_seph gap_buffer_automerge rope_svelte rope_rust rope_seph rope_automerge - hyperfine './gap_buffer_svelte' './rope_svelte' --export-markdown svelte.md - hyperfine './gap_buffer_rust' './rope_rust' --export-markdown rust.md - hyperfine './gap_buffer_seph' './rope_seph' --export-markdown seph.md - hyperfine './gap_buffer_automerge' './rope_automerge' --export-markdown automerge.md +bench: gap_buffer_svelte gap_buffer_rust gap_buffer_seph gap_buffer_automerge line_gap_svelte line_gap_rust line_gap_seph line_gap_automerge rope_svelte rope_rust rope_seph rope_automerge + hyperfine './gap_buffer_svelte' './rope_svelte' './line_gap_svelte' --export-markdown svelte.md + hyperfine './gap_buffer_rust' './rope_rust' './line_gap_rust' --export-markdown rust.md + hyperfine './gap_buffer_seph' './rope_seph' './line_gap_seph' --export-markdown seph.md + hyperfine './gap_buffer_automerge' './rope_automerge' './line_gap_automerge' --export-markdown automerge.md gap_buffer_svelte: mlton gap_buffer_svelte.mlb -gap_buffer_svelte_llvm: - mlton -output gap_buffer_svelte_llvm -codegen llvm gap_buffer_svelte.mlb - gap_buffer_rust: mlton gap_buffer_rust.mlb @@ -19,8 +16,17 @@ gap_buffer_seph: gap_buffer_automerge: mlton gap_buffer_automerge.mlb -gap_buffer_automerge_llvm: - mlton -output gap_buffer_automerge_llvm -codegen llvm gap_buffer_automerge.mlb +line_gap_svelte: + mlton line_gap_svelte.mlb + +line_gap_rust: + mlton line_gap_rust.mlb + +line_gap_seph: + mlton line_gap_seph.mlb + +line_gap_automerge: + mlton line_gap_automerge.mlb rope_svelte: mlton rope_svelte.mlb @@ -36,5 +42,6 @@ rope_automerge: clean: rm -f gap_buffer_svelte gap_buffer_rust gap_buffer_seph gap_buffer_automerge + rm -f line_gap_svelte line_gap_rust line_gap_seph line_gap_automerge rm -f rope_svelte rope_rust rope_seph rope_automerge rm -f svelte.md rust.md seph.md automerge.md diff --git a/bench/line_gap_automerge.mlb b/bench/line_gap_automerge.mlb new file mode 100644 index 0000000..653e469 --- /dev/null +++ b/bench/line_gap_automerge.mlb @@ -0,0 +1,13 @@ +$(SML_LIB)/basis/basis.mlb + +ann + "allowVectorExps true" +in + ../data-sets/automerge.sml +end + +transaction.sml +run.sml + +../src/line_gap.sml +line_gap_automerge.sml diff --git a/bench/line_gap_automerge.sml b/bench/line_gap_automerge.sml new file mode 100644 index 0000000..a558d50 --- /dev/null +++ b/bench/line_gap_automerge.sml @@ -0,0 +1,13 @@ +structure LineGapAutomerge: TRANSACTION = +struct + type t = LineGap.t + val empty = LineGap.empty + val insert = LineGap.insert + val delete = LineGap.delete + val toString = LineGap.toString + val txns = AutomergePaper.txns +end + +structure Main = Run(LineGapAutomerge) + +val _ = Main.run () diff --git a/bench/line_gap_rust.mlb b/bench/line_gap_rust.mlb new file mode 100644 index 0000000..aa2e665 --- /dev/null +++ b/bench/line_gap_rust.mlb @@ -0,0 +1,13 @@ +$(SML_LIB)/basis/basis.mlb + +ann + "allowVectorExps true" +in + ../data-sets/rust.sml +end + +transaction.sml +run.sml + +../src/line_gap.sml +line_gap_rust.sml diff --git a/bench/line_gap_rust.sml b/bench/line_gap_rust.sml new file mode 100644 index 0000000..0147512 --- /dev/null +++ b/bench/line_gap_rust.sml @@ -0,0 +1,13 @@ +structure LineGapRust: TRANSACTION = +struct + type t = LineGap.t + val empty = LineGap.empty + val insert = LineGap.insert + val delete = LineGap.delete + val toString = LineGap.toString + val txns = RustCode.txns +end + +structure Main = Run(LineGapRust) + +val _ = Main.run () diff --git a/bench/line_gap_seph.mlb b/bench/line_gap_seph.mlb new file mode 100644 index 0000000..460ccc8 --- /dev/null +++ b/bench/line_gap_seph.mlb @@ -0,0 +1,13 @@ +$(SML_LIB)/basis/basis.mlb + +ann + "allowVectorExps true" +in + ../data-sets/seph.sml +end + +transaction.sml +run.sml + +../src/line_gap.sml +line_gap_seph.sml diff --git a/bench/line_gap_seph.sml b/bench/line_gap_seph.sml new file mode 100644 index 0000000..6ab0549 --- /dev/null +++ b/bench/line_gap_seph.sml @@ -0,0 +1,13 @@ +structure LineGapSeph: TRANSACTION = +struct + type t = LineGap.t + val empty = LineGap.empty + val insert = LineGap.insert + val delete = LineGap.delete + val toString = LineGap.toString + val txns = SephBlog.txns +end + +structure Main = Run(LineGapSeph) + +val _ = Main.run () diff --git a/bench/line_gap_svelte b/bench/line_gap_svelte deleted file mode 100755 index b0abc58..0000000 Binary files a/bench/line_gap_svelte and /dev/null differ diff --git a/bench/line_gap_svelte.mlb b/bench/line_gap_svelte.mlb new file mode 100644 index 0000000..fbf92e8 --- /dev/null +++ b/bench/line_gap_svelte.mlb @@ -0,0 +1,13 @@ +$(SML_LIB)/basis/basis.mlb + +ann + "allowVectorExps true" +in + ../data-sets/svelte.sml +end + +transaction.sml +run.sml + +../src/line_gap.sml +line_gap_svelte.sml diff --git a/bench/line_gap_svelte.sml b/bench/line_gap_svelte.sml new file mode 100644 index 0000000..653b5e2 --- /dev/null +++ b/bench/line_gap_svelte.sml @@ -0,0 +1,13 @@ +structure LineGapSvelete: TRANSACTION = +struct + type t = LineGap.t + val empty = LineGap.empty + val insert = LineGap.insert + val delete = LineGap.delete + val toString = LineGap.toString + val txns = SvelteComponent.txns +end + +structure Main = Run(LineGapSvelete) + +val _ = Main.run ()