Skip to content

Commit f14a5e5

Browse files
committed
Remove support for iterators, rerun benchmarks, use bun to facilitate
1 parent 7870177 commit f14a5e5

File tree

12 files changed

+238
-368
lines changed

12 files changed

+238
-368
lines changed

.gitignore

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,3 +2,7 @@
22
*.ez
33
/build
44
erl_crash.dump
5+
6+
# benchmarks using bun
7+
node_modules
8+
bun.lockb

BENCHMARKS.md

Lines changed: 80 additions & 124 deletions
Original file line numberDiff line numberDiff line change
@@ -2,197 +2,153 @@
22

33
## append
44

5-
Compiled in 0.05s
6-
Running benchmarks/append.main
75

86
| Name | Mean | Median | Std. | Min | Max | Iterations |
97
|---|---|---|---|---|---|---|
10-
|list.append -> n = 100|0.45us|0.0us|43.46|0.0us|45.37ms|8008228|
11-
|list.append -> n = 1_000|3.88us|2.0us|45.63|2.0us|26.98ms|1251932|
12-
|list.append -> n = 10_000|26.33us|21.0us|73.68|19.0us|20.29ms|188810|
13-
|list.append -> n = 100_000|413.15us|374.0us|509.95|167.0us|30.3ms|12128|
14-
|shine_tree.append -> n = 100|0.38us|0.0us|92.8|0.0us|98.85ms|10053552|
15-
|shine_tree.append -> n = 1_000|0.69us|0.0us|102.17|0.0us|123.6ms|6287248|
16-
|shine_tree.append -> n = 10_000|0.91us|0.0us|102.63|0.0us|85.49ms|4888296|
17-
|shine_tree.append -> n = 100_000|1.13us|1.0us|97.72|0.0us|43.16ms|4046049|
8+
|list.append -> n = 100|0.96us|2.0us|39.69|0.0us|53.61ms|4623182|
9+
|list.append -> n = 1_000|8.78us|6.0us|59.39|4.0us|4.25ms|560806|
10+
|list.append -> n = 10_000|87.46us|62.0us|205.5|59.0us|5.22ms|57052|
11+
|list.append -> n = 100_000|881.69us|660.0us|819.54|561.0us|6.88ms|5673|
12+
|shine_tree.append -> n = 100|0.34us|0.0us|27.58|0.0us|77.9ms|11408641|
13+
|shine_tree.append -> n = 1_000|0.56us|0.0us|15.79|0.0us|8.08ms|7476054|
14+
|shine_tree.append -> n = 10_000|0.62us|0.0us|53.45|0.0us|79.67ms|7025792|
15+
|shine_tree.append -> n = 100_000|0.68us|0.0us|42.57|0.0us|62.97ms|6483146|
1816

1917

2018

2119
## count
2220

23-
Compiled in 0.05s
24-
Running benchmarks/count.main
2521

2622
| Name | Mean | Median | Std. | Min | Max | Iterations |
2723
|---|---|---|---|---|---|---|
28-
|List count evens -> n = 100|1.74us|1.0us|17.5|1.0us|16.11ms|2659214|
29-
|List count evens -> n = 1_000|16.89us|15.0us|63.76|15.0us|20.05ms|293807|
30-
|List count evens -> n = 10_000|168.63us|158.0us|186.4|149.0us|27.42ms|29609|
31-
|List count evens -> n = 100_000|1.91ms|1.57ms|1507.77|1.5ms|33.23ms|2621|
32-
|ShineTree count evens -> n = 100|1.39us|2.0us|31.95|1.0us|31.92ms|3346790|
33-
|ShineTree count evens -> n = 1_000|13.41us|12.0us|73.91|11.0us|22.92ms|370217|
34-
|ShineTree count evens -> n = 10_000|133.56us|124.0us|175.53|121.0us|24.06ms|37387|
35-
|ShineTree count evens -> n = 100_000|1.32ms|1.22ms|497.29|1.2ms|14.03ms|3778|
36-
37-
38-
39-
## from_iterator
40-
41-
Compiled in 0.05s
42-
Running benchmarks/from_iterator.main
43-
44-
| Name | Mean | Median | Std. | Min | Max | Iterations |
45-
|---|---|---|---|---|---|---|
46-
|iterator.to_list -> n = 100|5.4us|3.0us|121.06|2.0us|64.36ms|902626|
47-
|iterator.to_list -> n = 1_000|36.99us|55.0us|130.39|26.0us|20.14ms|134752|
48-
|iterator.to_list -> n = 10_000|593.1us|572.0us|641.0|374.0us|35.43ms|8425|
49-
|iterator.to_list -> n = 100_000|6.42ms|5.85ms|1201.07|5.3ms|18.91ms|778|
50-
|shine_tree.from_iterator -> n = 100|9.65us|4.0us|114.16|3.0us|37.67ms|512812|
51-
|shine_tree.from_iterator -> n = 1_000|86.01us|45.0us|238.47|40.0us|26.28ms|58022|
52-
|shine_tree.from_iterator -> n = 10_000|699.59us|526.0us|332.07|485.0us|15.16ms|7145|
53-
|shine_tree.from_iterator -> n = 100_000|7.37ms|6.78ms|2033.91|6.48ms|43.26ms|678|
24+
|List count evens -> n = 100|1.88us|2.0us|4.94|1.0us|1.97ms|2513321|
25+
|List count evens -> n = 1_000|18.25us|18.0us|6.57|17.0us|2.3ms|272153|
26+
|List count evens -> n = 10_000|180.14us|180.0us|12.58|179.0us|1.24ms|27733|
27+
|List count evens -> n = 100_000|1.8ms|1.79ms|47.62|1.79ms|3.33ms|2772|
28+
|ShineTree count evens -> n = 100|1.55us|1.0us|40.17|1.0us|37.92ms|3051918|
29+
|ShineTree count evens -> n = 1_000|14.35us|14.0us|7.72|13.0us|1.64ms|344421|
30+
|ShineTree count evens -> n = 10_000|139.42us|138.0us|13.34|137.0us|985.0us|35821|
31+
|ShineTree count evens -> n = 100_000|1.39ms|1.38ms|37.35|1.38ms|2.91ms|3596|
5432

5533

5634

5735
## shift
5836

59-
Compiled in 0.04s
60-
Running benchmarks/shift.main
6137

6238
| Name | Mean | Median | Std. | Min | Max | Iterations |
6339
|---|---|---|---|---|---|---|
64-
|list (take one item at a time, until empty) -> n = 100|0.29us|0.0us|4.93|0.0us|9.94ms|11425501|
65-
|list (take one item at a time, until empty) -> n = 1_000|2.89us|3.0us|29.12|2.0us|29.71ms|1641178|
66-
|list (take one item at a time, until empty) -> n = 10_000|26.25us|25.0us|13.87|23.0us|3.35ms|189367|
67-
|list (take one item at a time, until empty) -> n = 100_000|253.75us|289.0us|207.52|228.0us|22.06ms|19685|
68-
|shine_tree.shift (against best case scenario list) -> n = 100|7.32us|2.0us|116.99|2.0us|31.27ms|671737|
69-
|shine_tree.shift (against best case scenario list) -> n = 1_000|71.13us|30.0us|197.35|24.0us|9.67ms|70104|
70-
|shine_tree.shift (against best case scenario list) -> n = 10_000|705.47us|298.0us|543.93|291.0us|29.89ms|7085|
71-
|shine_tree.shift (against best case scenario list) -> n = 100_000|8.48ms|7.49ms|2388.11|6.86ms|47.71ms|590|
72-
|shine_tree.pop (lists can't do this at all) -> n = 100|7.19us|4.0us|119.1|1.0us|35.57ms|684529|
73-
|shine_tree.pop (lists can't do this at all) -> n = 1_000|70.41us|27.0us|230.1|21.0us|29.65ms|70843|
74-
|shine_tree.pop (lists can't do this at all) -> n = 10_000|679.55us|856.0us|525.0|267.0us|25.62ms|7354|
75-
|shine_tree.pop (lists can't do this at all) -> n = 100_000|8.05ms|7.64ms|1694.46|6.6ms|33.13ms|621|
40+
|list (take one item at a time, until empty) -> n = 100|0.15us|0.0us|0.36|0.0us|62.0us|17653698|
41+
|list (take one item at a time, until empty) -> n = 1_000|1.24us|1.0us|0.53|1.0us|251.0us|3692076|
42+
|list (take one item at a time, until empty) -> n = 10_000|11.63us|12.0us|1.16|11.0us|147.0us|424671|
43+
|list (take one item at a time, until empty) -> n = 100_000|118.24us|115.0us|9.35|114.0us|828.0us|42169|
44+
|shine_tree.shift (against best case scenario list) -> n = 100|3.16us|4.0us|26.62|2.0us|19.11ms|1539391|
45+
|shine_tree.shift (against best case scenario list) -> n = 1_000|35.41us|30.0us|16.52|29.0us|1.87ms|140745|
46+
|shine_tree.shift (against best case scenario list) -> n = 10_000|352.44us|303.0us|99.85|301.0us|1.77ms|14178|
47+
|shine_tree.shift (against best case scenario list) -> n = 100_000|3.59ms|3.23ms|367.56|3.08ms|7.95ms|1394|
48+
|shine_tree.pop (lists can't do this at all) -> n = 100|2.71us|2.0us|22.99|2.0us|19.9ms|1791077|
49+
|shine_tree.pop (lists can't do this at all) -> n = 1_000|28.29us|25.0us|17.77|23.0us|3.49ms|176015|
50+
|shine_tree.pop (lists can't do this at all) -> n = 10_000|254.28us|246.0us|27.4|242.0us|1.71ms|19651|
51+
|shine_tree.pop (lists can't do this at all) -> n = 100_000|2.45ms|2.46ms|113.9|2.39ms|4.64ms|2038|
7652

7753

7854

7955
## sort
8056

81-
Compiled in 0.05s
82-
Running benchmarks/sort.main
8357

8458
| Name | Mean | Median | Std. | Min | Max | Iterations |
8559
|---|---|---|---|---|---|---|
86-
|List sort -> n = 100|10.32us|7.0us|76.39|6.0us|26.59ms|479416|
87-
|List sort -> n = 1_000|150.95us|137.0us|240.94|128.0us|39.59ms|33091|
88-
|List sort -> n = 10_000|2.19ms|2.13ms|314.77|2.05ms|11.8ms|2283|
89-
|List sort -> n = 100_000|34.54ms|32.0ms|5845.32|29.02ms|73.15ms|145|
90-
|ShineTree sort -> n = 100|13.26us|8.0us|114.05|7.0us|28.83ms|373556|
91-
|ShineTree sort -> n = 1_000|212.22us|147.0us|305.31|136.0us|19.37ms|23539|
92-
|ShineTree sort -> n = 10_000|2.78ms|2.61ms|929.75|1.83ms|21.18ms|1795|
93-
|ShineTree sort -> n = 100_000|34.3ms|36.0ms|5639.34|27.98ms|70.42ms|145|
60+
|List sort -> n = 100|7.91us|8.0us|13.38|7.0us|7.21ms|625766|
61+
|List sort -> n = 1_000|115.45us|111.0us|11.54|111.0us|1.22ms|43267|
62+
|List sort -> n = 10_000|2.58ms|2.62ms|278.85|2.05ms|4.74ms|1938|
63+
|List sort -> n = 100_000|35.28ms|38.97ms|3393.93|27.83ms|47.04ms|142|
64+
|ShineTree sort -> n = 100|9.58us|9.0us|9.05|8.0us|4.84ms|516875|
65+
|ShineTree sort -> n = 1_000|125.37us|119.0us|18.77|117.0us|1.05ms|39843|
66+
|ShineTree sort -> n = 10_000|2.19ms|2.14ms|194.36|1.93ms|3.78ms|2284|
67+
|ShineTree sort -> n = 100_000|42.69ms|32.73ms|5475.17|29.8ms|54.43ms|117|
9468

9569

9670

9771
## fold
9872

99-
Compiled in 0.05s
100-
Running benchmarks/fold.main
10173

10274
| Name | Mean | Median | Std. | Min | Max | Iterations |
10375
|---|---|---|---|---|---|---|
104-
|list.fold -> n = 100|0.94us|1.0us|22.86|0.0us|17.44ms|4433277|
105-
|list.fold -> n = 1_000|8.63us|7.0us|57.69|7.0us|31.15ms|570367|
106-
|list.fold -> n = 10_000|87.65us|81.0us|164.64|78.0us|22.0ms|56930|
107-
|list.fold -> n = 100_000|876.99us|846.0us|445.98|785.0us|23.9ms|5699|
108-
|iterator.fold -> n = 100|4.96us|3.0us|91.63|2.0us|21.32ms|989189|
109-
|iterator.fold -> n = 1_000|40.72us|24.0us|153.38|21.0us|32.53ms|122427|
110-
|iterator.fold -> n = 10_000|234.14us|217.0us|138.77|216.0us|14.99ms|21340|
111-
|iterator.fold -> n = 100_000|2.4ms|2.67ms|768.9|2.22ms|25.24ms|2081|
112-
|shine_tree.fold_l -> n = 100|0.57us|0.0us|46.35|0.0us|73.13ms|7409110|
113-
|shine_tree.fold_l -> n = 1_000|5.47us|5.0us|45.07|4.0us|33.64ms|897499|
114-
|shine_tree.fold_l -> n = 10_000|56.67us|48.0us|150.68|46.0us|29.0ms|88000|
115-
|shine_tree.fold_l -> n = 100_000|577.29us|584.0us|281.3|467.0us|15.68ms|8656|
76+
|list.fold -> n = 100|1.05us|1.0us|4.8|0.0us|7.44ms|4219694|
77+
|list.fold -> n = 1_000|10.35us|10.0us|2.21|9.0us|687.0us|477276|
78+
|list.fold -> n = 10_000|102.99us|102.0us|8.81|96.0us|753.0us|48483|
79+
|list.fold -> n = 100_000|1.04ms|1.03ms|55.81|990.0us|2.62ms|4826|
80+
|shine_tree.fold_l -> n = 100|0.57us|0.0us|45.93|0.0us|73.71ms|7533973|
81+
|shine_tree.fold_l -> n = 1_000|4.14us|4.0us|18.7|3.0us|17.86ms|1179970|
82+
|shine_tree.fold_l -> n = 10_000|41.12us|42.0us|8.4|39.0us|1.03ms|121288|
83+
|shine_tree.fold_l -> n = 100_000|421.34us|403.0us|57.43|399.0us|1.93ms|11858|
11684

11785

11886

11987
## range
12088

121-
Compiled in 0.07s
122-
Running benchmarks/range.main
12389

12490
| Name | Mean | Median | Std. | Min | Max | Iterations |
12591
|---|---|---|---|---|---|---|
126-
|List range of size n -> n = 100|1.46us|1.0us|75.37|0.0us|32.18ms|3172242|
127-
|List range of size n -> n = 1_000|13.45us|8.0us|91.2|7.0us|9.7ms|368792|
128-
|List range of size n -> n = 10_000|104.53us|95.0us|185.06|79.0us|22.47ms|47762|
129-
|List range of size n -> n = 100_000|1.24ms|1.32ms|702.54|1.02ms|24.76ms|4016|
130-
|ShineTree range of size n -> n = 100|1.05us|1.0us|89.92|0.0us|49.76ms|4359871|
131-
|ShineTree range of size n -> n = 1_000|8.73us|5.0us|106.94|3.0us|29.09ms|565988|
132-
|ShineTree range of size n -> n = 10_000|74.34us|45.0us|165.46|39.0us|18.3ms|67127|
133-
|ShineTree range of size n -> n = 100_000|2.62ms|2.1ms|954.76|1.8ms|24.82ms|1911|
92+
|List range of size n -> n = 100|1.06us|1.0us|36.87|0.0us|42.6ms|4379498|
93+
|List range of size n -> n = 1_000|9.66us|9.0us|5.0|8.0us|837.0us|512449|
94+
|List range of size n -> n = 10_000|97.34us|88.0us|26.38|88.0us|1.08ms|51304|
95+
|List range of size n -> n = 100_000|1.22ms|1.19ms|100.11|1.17ms|3.1ms|4086|
96+
|ShineTree range of size n -> n = 100|0.69us|1.0us|49.0|0.0us|64.78ms|6463627|
97+
|ShineTree range of size n -> n = 1_000|5.5us|5.0us|15.36|4.0us|11.01ms|893411|
98+
|ShineTree range of size n -> n = 10_000|52.69us|45.0us|20.38|43.0us|2.72ms|94674|
99+
|ShineTree range of size n -> n = 100_000|1.07ms|926.0us|428.08|452.0us|3.47ms|4658|
134100

135101

136102

137103
## size
138104

139-
Compiled in 0.04s
140-
Running benchmarks/size.main
141105

142106
| Name | Mean | Median | Std. | Min | Max | Iterations |
143107
|---|---|---|---|---|---|---|
144-
|list.size -> n = 100|0.16us|0.0us|10.0|0.0us|33.55ms|15711838|
145-
|list.size -> n = 1_000|2.22us|2.0us|24.19|1.0us|18.43ms|2092006|
146-
|list.size -> n = 10_000|16.47us|33.0us|47.71|14.0us|21.14ms|300046|
147-
|list.size -> n = 100_000|113.46us|105.0us|48.65|102.0us|7.32ms|43993|
148-
|shine_tree.size -> n = 100|0.03us|0.0us|6.54|0.0us|32.4ms|28133030|
149-
|shine_tree.size -> n = 1_000|0.03us|0.0us|3.54|0.0us|10.47ms|20487610|
150-
|shine_tree.size -> n = 10_000|0.04us|0.0us|7.67|0.0us|29.44ms|20185780|
151-
|shine_tree.size -> n = 100_000|0.03us|0.0us|6.33|0.0us|19.17ms|22538207|
108+
|list.size -> n = 100|0.13us|1.0us|0.38|0.0us|478.0us|17925635|
109+
|list.size -> n = 1_000|1.18us|2.0us|0.51|1.0us|250.0us|3810284|
110+
|list.size -> n = 10_000|10.84us|11.0us|1.39|10.0us|236.0us|456457|
111+
|list.size -> n = 100_000|109.83us|107.0us|10.29|106.0us|815.0us|45419|
112+
|shine_tree.size -> n = 100|0.03us|0.0us|0.18|0.0us|69.0us|26862186|
113+
|shine_tree.size -> n = 1_000|0.03us|0.0us|0.19|0.0us|332.0us|28064989|
114+
|shine_tree.size -> n = 10_000|0.03us|0.0us|0.2|0.0us|269.0us|30697250|
115+
|shine_tree.size -> n = 100_000|0.03us|0.0us|0.2|0.0us|316.0us|23925578|
152116

153117

154118

155119
## unshift
156120

157-
Compiled in 0.05s
158-
Running benchmarks/unshift.main
159121

160122
| Name | Mean | Median | Std. | Min | Max | Iterations |
161123
|---|---|---|---|---|---|---|
162-
|shine_tree.unshift(Nil) -> n = 100|6.28us|2.0us|133.67|1.0us|35.23ms|779441|
163-
|shine_tree.unshift(Nil) -> n = 1_000|55.73us|23.0us|188.99|16.0us|24.72ms|89388|
164-
|shine_tree.unshift(Nil) -> n = 10_000|535.85us|294.0us|562.53|244.0us|39.83ms|9325|
165-
|shine_tree.unshift(Nil) -> n = 100_000|6.56ms|6.47ms|1978.9|3.95ms|35.21ms|762|
166-
|[item, ..rest] -> n = 100|1.02us|0.0us|125.73|0.0us|64.91ms|4207056|
167-
|[item, ..rest] -> n = 1_000|8.87us|3.0us|152.06|1.0us|35.17ms|552812|
168-
|[item, ..rest] -> n = 10_000|71.26us|41.0us|277.62|21.0us|29.46ms|69919|
169-
|[item, ..rest] -> n = 100_000|985.82us|590.0us|859.53|447.0us|35.85ms|5065|
170-
|shine_tree.push(Nil) (lists can't do this at all) -> n = 100|6.07us|4.0us|140.58|1.0us|32.57ms|809162|
171-
|shine_tree.push(Nil) (lists can't do this at all) -> n = 1_000|62.99us|1.19ms|290.01|13.0us|48.32ms|79192|
172-
|shine_tree.push(Nil) (lists can't do this at all) -> n = 10_000|539.36us|337.0us|443.14|214.0us|14.85ms|9265|
173-
|shine_tree.push(Nil) (lists can't do this at all) -> n = 100_000|7.44ms|6.22ms|3020.44|3.73ms|43.14ms|672|
124+
|shine_tree.unshift(Nil) -> n = 100|2.19us|1.0us|24.3|1.0us|23.49ms|2197034|
125+
|shine_tree.unshift(Nil) -> n = 1_000|23.23us|20.0us|10.53|20.0us|2.13ms|214277|
126+
|shine_tree.unshift(Nil) -> n = 10_000|330.16us|271.0us|129.74|204.0us|2.6ms|15137|
127+
|shine_tree.unshift(Nil) -> n = 100_000|3.67ms|3.75ms|988.98|2.63ms|6.77ms|1362|
128+
|[item, ..rest] -> n = 100|0.36us|0.0us|76.57|0.0us|131.99ms|11135685|
129+
|[item, ..rest] -> n = 1_000|2.3us|2.0us|4.19|1.0us|2.25ms|2093689|
130+
|[item, ..rest] -> n = 10_000|22.96us|17.0us|19.16|16.0us|2.26ms|216678|
131+
|[item, ..rest] -> n = 100_000|263.4us|177.0us|186.98|173.0us|4.37ms|18964|
132+
|shine_tree.push(Nil) (lists can't do this at all) -> n = 100|2.19us|2.0us|39.47|1.0us|29.37ms|2195133|
133+
|shine_tree.push(Nil) (lists can't do this at all) -> n = 1_000|18.56us|18.0us|14.27|15.0us|4.34ms|267996|
134+
|shine_tree.push(Nil) (lists can't do this at all) -> n = 10_000|192.48us|161.0us|67.8|157.0us|1.73ms|25957|
135+
|shine_tree.push(Nil) (lists can't do this at all) -> n = 100_000|3.2ms|2.2ms|1001.38|2.15ms|6.58ms|1564|
174136

175137

176138

177139
## group
178140

179-
Compiled in 0.06s
180-
Running benchmarks/group.main
181141

182142
| Name | Mean | Median | Std. | Min | Max | Iterations |
183143
|---|---|---|---|---|---|---|
184-
|list.group (n % 7) -> n = 100|11.25us|8.0us|105.91|7.0us|44.01ms|438551|
185-
|list.group (n % 7) -> n = 1_000|113.07us|86.0us|224.34|75.0us|30.15ms|44115|
186-
|list.group (n % 7) -> n = 10_000|1.31ms|1.31ms|779.38|871.0us|31.09ms|3813|
187-
|list.group (n % 7) -> n = 100_000|13.35ms|15.47ms|3435.15|9.37ms|41.01ms|373|
188-
|iterator.group (n % 7) -> n = 100|14.49us|9.0us|31.2|8.0us|6.19ms|341775|
189-
|iterator.group (n % 7) -> n = 1_000|129.84us|98.0us|254.3|89.0us|30.4ms|38450|
190-
|iterator.group (n % 7) -> n = 10_000|1.31ms|1.2ms|578.28|1.01ms|21.3ms|3804|
191-
|iterator.group (n % 7) -> n = 100_000|17.53ms|17.36ms|4425.71|14.09ms|71.34ms|285|
192-
|shine_tree.group (n % 7) -> n = 100|9.09us|6.0us|96.96|5.0us|11.48ms|541024|
193-
|shine_tree.group (n % 7) -> n = 1_000|105.09us|72.0us|236.11|62.0us|20.16ms|47397|
194-
|shine_tree.group (n % 7) -> n = 10_000|1.09ms|715.0us|855.06|673.0us|21.11ms|4595|
195-
|shine_tree.group (n % 7) -> n = 100_000|10.71ms|16.49ms|2262.55|7.38ms|20.63ms|467|
144+
|list.group (n % 7) -> n = 100|5.58us|5.0us|18.49|5.0us|9.6ms|883417|
145+
|list.group (n % 7) -> n = 1_000|55.51us|53.0us|11.51|52.0us|1.94ms|89905|
146+
|list.group (n % 7) -> n = 10_000|751.83us|667.0us|124.22|654.0us|2.22ms|6648|
147+
|list.group (n % 7) -> n = 100_000|8.27ms|6.68ms|1455.86|6.65ms|11.97ms|605|
148+
|shine_tree.group (n % 7) -> n = 100|4.58us|4.0us|5.77|3.0us|5.23ms|1068918|
149+
|shine_tree.group (n % 7) -> n = 1_000|45.15us|40.0us|12.82|39.0us|545.0us|110458|
150+
|shine_tree.group (n % 7) -> n = 10_000|562.89us|513.0us|67.5|507.0us|2.22ms|8879|
151+
|shine_tree.group (n % 7) -> n = 100_000|5.65ms|5.56ms|577.81|5.22ms|8.16ms|884|
196152

197153

198154

manifest.toml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,15 @@
22
# You typically do not need to edit this file
33

44
packages = [
5-
{ name = "filepath", version = "1.0.0", build_tools = ["gleam"], requirements = ["gleam_stdlib"], otp_app = "filepath", source = "hex", outer_checksum = "EFB6FF65C98B2A16378ABC3EE2B14124168C0CE5201553DE652E2644DCFDB594" },
5+
{ name = "filepath", version = "1.1.0", build_tools = ["gleam"], requirements = ["gleam_stdlib"], otp_app = "filepath", source = "hex", outer_checksum = "67A6D15FB39EEB69DD31F8C145BB5A421790581BD6AA14B33D64D5A55DBD6587" },
66
{ name = "glam", version = "2.0.1", build_tools = ["gleam"], requirements = ["gleam_stdlib"], otp_app = "glam", source = "hex", outer_checksum = "66EC3BCD632E51EED029678F8DF419659C1E57B1A93D874C5131FE220DFAD2B2" },
7-
{ name = "gleam_erlang", version = "0.26.0", build_tools = ["gleam"], requirements = ["gleam_stdlib"], otp_app = "gleam_erlang", source = "hex", outer_checksum = "3DF72F95F4716883FA51396FB0C550ED3D55195B541568CAF09745984FD37AD1" },
8-
{ name = "gleam_otp", version = "0.12.0", build_tools = ["gleam"], requirements = ["gleam_erlang", "gleam_stdlib"], otp_app = "gleam_otp", source = "hex", outer_checksum = "CD5FC777E99673BDB390092DF85E34EAA6B8EE1882147496290AB3F45A4960B1" },
9-
{ name = "gleam_stdlib", version = "0.40.0", build_tools = ["gleam"], requirements = [], otp_app = "gleam_stdlib", source = "hex", outer_checksum = "86606B75A600BBD05E539EB59FABC6E307EEEA7B1E5865AFB6D980A93BCB2181" },
7+
{ name = "gleam_erlang", version = "0.33.0", build_tools = ["gleam"], requirements = ["gleam_stdlib"], otp_app = "gleam_erlang", source = "hex", outer_checksum = "A1D26B80F01901B59AABEE3475DD4C18D27D58FA5C897D922FCB9B099749C064" },
8+
{ name = "gleam_otp", version = "0.16.0", build_tools = ["gleam"], requirements = ["gleam_erlang", "gleam_stdlib"], otp_app = "gleam_otp", source = "hex", outer_checksum = "FA0EB761339749B4E82D63016C6A18C4E6662DA05BAB6F1346F9AF2E679E301A" },
9+
{ name = "gleam_stdlib", version = "0.51.0", build_tools = ["gleam"], requirements = [], otp_app = "gleam_stdlib", source = "hex", outer_checksum = "14AFA8D3DDD7045203D422715DBB822D1725992A31DF35A08D97389014B74B68" },
1010
{ name = "gleeunit", version = "1.2.0", build_tools = ["gleam"], requirements = ["gleam_stdlib"], otp_app = "gleeunit", source = "hex", outer_checksum = "F7A7228925D3EE7D0813C922E062BFD6D7E9310F0BEE585D3A42F3307E3CFD13" },
1111
{ name = "humanise", version = "1.0.2", build_tools = ["gleam"], requirements = ["gleam_stdlib"], otp_app = "humanise", source = "hex", outer_checksum = "44E0977BCA0C81DDDD46A8E4215BDD274FDBB18F5363B56BE617564135CA2F14" },
12-
{ name = "pprint", version = "1.0.3", build_tools = ["gleam"], requirements = ["glam", "gleam_stdlib"], otp_app = "pprint", source = "hex", outer_checksum = "76BBB92E23D12D954BD452686543F29EDE8EBEBB7FC0ACCBCA66EEF276EC3A06" },
13-
{ name = "simplifile", version = "2.1.0", build_tools = ["gleam"], requirements = ["filepath", "gleam_stdlib"], otp_app = "simplifile", source = "hex", outer_checksum = "BDD04F5D31D6D34E2EDFAEF0B68A6297AEC939888C3BFCE61133DE13857F6DA2" },
12+
{ name = "pprint", version = "1.0.4", build_tools = ["gleam"], requirements = ["glam", "gleam_stdlib"], otp_app = "pprint", source = "hex", outer_checksum = "C310A98BDC0995644847C3C8702DE19656D6BCD638B2A8A358B97824379ECAA1" },
13+
{ name = "simplifile", version = "2.2.0", build_tools = ["gleam"], requirements = ["filepath", "gleam_stdlib"], otp_app = "simplifile", source = "hex", outer_checksum = "0DFABEF7DC7A9E2FF4BB27B108034E60C81BEBFCB7AB816B9E7E18ED4503ACD8" },
1414
]
1515

1616
[requirements]

package.json

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
{
2+
"name": "shine_tree",
3+
"module": "index.ts",
4+
"type": "module",
5+
"devDependencies": {
6+
"@types/bun": "latest",
7+
"ansis": "^3.5.2"
8+
},
9+
"peerDependencies": {
10+
"typescript": "^5.0.0"
11+
}
12+
}

0 commit comments

Comments
 (0)