Skip to content

Perf 7285ce0

JSONata cross-engine results

Source data: CSV.

Scores are throughput in ops/s (higher is faster). Ratios compare Branchline throughput to the fastest JSONata engine. Rows require comparable state and no credibility flag before they count toward speedup summaries.

Dashjoin outliers are excluded from the summary and breakdown (outside 0.01x–100x Dashjoin median).

Excluded cases: etl-order-normalization, numeric-precision-invoice.

Branchline speedup summary

Counts include cases where both engines have scores, comparable state, and no credibility flag. Speedup is Branchline ops/s divided by Dashjoin ops/s.

Comparison Faster cases Total cases Avg speedup (faster cases) Max speedup
Interpreter vs Dashjoin 6 7 36.982x 215.975x
VM vs Dashjoin 6 7 18.131x 103.251x

Case breakdown

Case Branchline Interpreter (ops/s) Branchline VM (ops/s) Fastest JSONata (ops/s) Fastest JSONata engine Interpreter vs JSONata VM vs JSONata
api-envelope-shaping 54899.754 48831.723 44756.279 dashjoin 1.227x 1.091x
contract-drift-projection n/a n/a 32361.883 dashjoin n/a n/a
fields/case000 n/a n/a 57544.917 dashjoin n/a n/a
filter_names 54032.956 52191.483 56435.069 dashjoin 0.957x 0.925x
function-count/case000 n/a n/a 50728.518 dashjoin n/a n/a
function-sift/case004 53219.138 53521.476 45063.67 dashjoin 1.181x 1.188x
function-sum/case000 n/a n/a 49722.276 dashjoin n/a n/a
function-zip/case002 n/a n/a 52244.031 ibm n/a n/a
hof-map/case000 n/a n/a 45106.396 dashjoin n/a n/a
hof-zip-map/case000 n/a n/a 44051.86 dashjoin n/a n/a
jsonata-migration-pack-01 n/a n/a 37281.249 dashjoin n/a n/a
jsonata-migration-pack-02 n/a n/a 28268.405 dashjoin n/a n/a
jsonata-migration-pack-03 n/a n/a 37430.497 dashjoin n/a n/a
jsonata-migration-pack-04 n/a n/a 33080.561 dashjoin n/a n/a
jsonata-migration-pack-05 n/a n/a 39398.167 dashjoin n/a n/a
large-filter-map-aggregate n/a n/a 33914.315 dashjoin n/a n/a
map_discount 57740.408 52156.312 48608.839 dashjoin 1.188x 1.073x
numeric-operators/case000 n/a n/a 56174.821 dashjoin n/a n/a
partial-application/case002 n/a n/a 38480.973 dashjoin n/a n/a
performance/case001 10775.572 5151.475 49.893 dashjoin 215.975x 103.251x
range-operator/case000 n/a n/a 58511.438 ibm n/a n/a
simple-array-selectors/case000 n/a n/a 55971.151 dashjoin n/a n/a
string-concat/case000 n/a n/a 57736.173 dashjoin n/a n/a
sum_prices 56831.911 52614.76 50188.313 dashjoin 1.132x 1.048x
summary_stats 53347.807 50944.204 46865.421 ibm 1.138x 1.087x

Row state

Engine Case Score (ops/s) Allocation (B/op) Validation state Comparable Credibility flag Reason
branchline-interpreter api-envelope-shaping 54899.754 1163.369 valid true ok n/a
branchline-interpreter contract-drift-projection 3.5354643682E8 0.0 compile_error false implausible_high_score_near_zero_alloc [4:15] Expect ';' or newline between statements near ':' Expect ';' or newline between statements records: MAP(input.accounts, (account) -> { id: account.id, ^ name: GET(account, "name", GET(account, "fullName", "unknown")),
branchline-interpreter etl-order-normalization 3.41105399033E8 0.0 compile_error false implausible_high_score_near_zero_alloc [15:16] Expect ';' or newline between statements near ':' Expect ';' or newline between statements lines: MAP(input.items, (item) -> { sku: item.sku, ^ qty: item.qty,
branchline-interpreter fields/case000 3.55224782769E8 0.0 semantic_mismatch false implausible_high_score_near_zero_alloc Semantic output validation failed; reference=kotlin expected=42 actual={"result":42}
branchline-interpreter filter_names 54032.956 91.134 valid true ok n/a
branchline-interpreter function-count/case000 3.53757771352E8 0.0 semantic_mismatch false implausible_high_score_near_zero_alloc Semantic output validation failed; reference=kotlin expected=4 actual={"result":4}
branchline-interpreter function-sift/case004 53219.138 95.053 valid true ok n/a
branchline-interpreter function-sum/case000 3.49351763252E8 0.0 semantic_mismatch false implausible_high_score_near_zero_alloc Semantic output validation failed; reference=kotlin expected=336.36 actual={"result":336.36}
branchline-interpreter function-zip/case002 3.55361531999E8 0.0 semantic_mismatch false implausible_high_score_near_zero_alloc Semantic output validation failed; reference=kotlin expected=[[1, 4, 7], [2, 5, 8]] actual={"result":[[1, 4, 7], [2, 5, 8]]}
branchline-interpreter hof-map/case000 3.55037403242E8 0.0 semantic_mismatch false implausible_high_score_near_zero_alloc Semantic output validation failed; reference=kotlin expected=[1, 4, 9, 16, 25] actual={"result":[1, 4, 9, 16, 25]}
branchline-interpreter hof-zip-map/case000 3.55599402484E8 0.0 semantic_mismatch false implausible_high_score_near_zero_alloc Semantic output validation failed; reference=kotlin expected=[6, 6, 6, 6, 6] actual={"result":[6, 6, 6, 6, 6]}
branchline-interpreter jsonata-migration-pack-01 3.54719734783E8 0.0 compile_error false implausible_high_score_near_zero_alloc [4:15] Expect ';' or newline between statements near ':' Expect ';' or newline between statements customers: MAP(input.customers, (customer) -> { id: customer.id, ^ name: customer.name,
branchline-interpreter jsonata-migration-pack-02 3.56837553742E8 0.0 compile_error false implausible_high_score_near_zero_alloc [4:15] Expect ';' or newline between statements near ':' Expect ';' or newline between statements contacts: MAP(input.contacts, (contact) -> { id: contact.id, ^ email: LOWER(TRIM(contact.email)),
branchline-interpreter jsonata-migration-pack-03 3.5411724566E8 0.0 compile_error false implausible_high_score_near_zero_alloc [4:16] Expect ';' or newline between statements near ':' Expect ';' or newline between statements features: MAP(input.features, (feature) -> { key: feature.key, ^ enabled: feature.state == "on",
branchline-interpreter jsonata-migration-pack-04 3.53918474181E8 0.0 compile_error false implausible_high_score_near_zero_alloc [4:15] Expect ';' or newline between statements near ':' Expect ';' or newline between statements events: MAP(input.events, (event) -> { id: event.id, ^ day: SUBSTRING(event.timestamp, 0, 10),
branchline-interpreter jsonata-migration-pack-05 3.51042078278E8 0.0 compile_error false implausible_high_score_near_zero_alloc [4:15] Expect ';' or newline between statements near ':' Expect ';' or newline between statements articles: MAP(input.articles, (article) -> { id: article.id, ^ title: article.title,
branchline-interpreter large-filter-map-aggregate 3.54947760106E8 0.0 compile_error false implausible_high_score_near_zero_alloc [6:15] Expect ';' or newline between statements near ':' Expect ';' or newline between statements eligible: MAP(eligible, (item) -> { id: item.id, ^ region: item.region,
branchline-interpreter map_discount 57740.408 89.665 valid true ok n/a
branchline-interpreter numeric-operators/case000 3.55807263609E8 0.0 semantic_mismatch false implausible_high_score_near_zero_alloc Semantic output validation failed; reference=kotlin expected=140 actual={"result":140}
branchline-interpreter numeric-precision-invoice 3.55283419585E8 0.0 semantic_mismatch false implausible_high_score_near_zero_alloc Semantic output validation failed; reference=kotlin expected={"currency":"USD", "discountAmount":5.06, "externalRef":"9.007199254740994E19", "invoiceId":"inv-2026-0009", "shipping":4.99, "subtotal":67.5, "total":67.43} actual={"currency":"USD", "discountAmount":5.06, "externalRef":90071992547409940000, "invoiceId":"inv-2026-0009", "shipping":4.99, "subtotal":67.5, "total":67.43}
branchline-interpreter partial-application/case002 3.53538725902E8 0.0 semantic_mismatch false implausible_high_score_near_zero_alloc Semantic output validation failed; reference=kotlin expected="Hello" actual={"result":"Hello"}
branchline-interpreter performance/case001 10775.572 112.85 valid true ok n/a
branchline-interpreter range-operator/case000 3.55871391741E8 0.0 semantic_mismatch false implausible_high_score_near_zero_alloc Semantic output validation failed; reference=kotlin expected=[0, 1, 2, 3, 4, 5, 6, 7, 8, 9] actual={"result":[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]}
branchline-interpreter simple-array-selectors/case000 3.5540953388E8 0.0 semantic_mismatch false implausible_high_score_near_zero_alloc Semantic output validation failed; reference=kotlin expected=[1, 3, 5, 6] actual={"result":[1, 3, 5, 6]}
branchline-interpreter string-concat/case000 3.54667887074E8 0.0 semantic_mismatch false implausible_high_score_near_zero_alloc Semantic output validation failed; reference=kotlin expected="foobar" actual={"result":"foobar"}
branchline-interpreter sum_prices 56831.911 675.02 valid true ok n/a
branchline-interpreter summary_stats 53347.807 90.867 valid true ok n/a
branchline-vm api-envelope-shaping 48831.723 96.722 valid true ok n/a
branchline-vm contract-drift-projection 3.55032979017E8 0.0 compile_error false implausible_high_score_near_zero_alloc [4:15] Expect ';' or newline between statements near ':' Expect ';' or newline between statements records: MAP(input.accounts, (account) -> { id: account.id, ^ name: GET(account, "name", GET(account, "fullName", "unknown")),
branchline-vm etl-order-normalization 3.55062684499E8 0.0 compile_error false implausible_high_score_near_zero_alloc [15:16] Expect ';' or newline between statements near ':' Expect ';' or newline between statements lines: MAP(input.items, (item) -> { sku: item.sku, ^ qty: item.qty,
branchline-vm fields/case000 3.53806164589E8 0.0 semantic_mismatch false implausible_high_score_near_zero_alloc Semantic output validation failed; reference=kotlin expected=42 actual={"result":42}
branchline-vm filter_names 52191.483 851.79 valid true ok n/a
branchline-vm function-count/case000 3.54487563578E8 0.0 semantic_mismatch false implausible_high_score_near_zero_alloc Semantic output validation failed; reference=kotlin expected=4 actual={"result":4}
branchline-vm function-sift/case004 53521.476 90.293 valid true ok n/a
branchline-vm function-sum/case000 3.5573925325E8 0.0 semantic_mismatch false implausible_high_score_near_zero_alloc Semantic output validation failed; reference=kotlin expected=336.36 actual={"result":336.36}
branchline-vm function-zip/case002 3.53591594533E8 0.0 semantic_mismatch false implausible_high_score_near_zero_alloc Semantic output validation failed; reference=kotlin expected=[[1, 4, 7], [2, 5, 8]] actual={"result":[[1, 4, 7], [2, 5, 8]]}
branchline-vm hof-map/case000 3.55789993356E8 0.0 semantic_mismatch false implausible_high_score_near_zero_alloc Semantic output validation failed; reference=kotlin expected=[1, 4, 9, 16, 25] actual={"result":[1, 4, 9, 16, 25]}
branchline-vm hof-zip-map/case000 3.56065509732E8 0.0 semantic_mismatch false implausible_high_score_near_zero_alloc Semantic output validation failed; reference=kotlin expected=[6, 6, 6, 6, 6] actual={"result":[6, 6, 6, 6, 6]}
branchline-vm jsonata-migration-pack-01 3.55581670311E8 0.0 compile_error false implausible_high_score_near_zero_alloc [4:15] Expect ';' or newline between statements near ':' Expect ';' or newline between statements customers: MAP(input.customers, (customer) -> { id: customer.id, ^ name: customer.name,
branchline-vm jsonata-migration-pack-02 3.52953762318E8 0.0 compile_error false implausible_high_score_near_zero_alloc [4:15] Expect ';' or newline between statements near ':' Expect ';' or newline between statements contacts: MAP(input.contacts, (contact) -> { id: contact.id, ^ email: LOWER(TRIM(contact.email)),
branchline-vm jsonata-migration-pack-03 3.55442684255E8 0.0 compile_error false implausible_high_score_near_zero_alloc [4:16] Expect ';' or newline between statements near ':' Expect ';' or newline between statements features: MAP(input.features, (feature) -> { key: feature.key, ^ enabled: feature.state == "on",
branchline-vm jsonata-migration-pack-04 3.55450948779E8 0.0 compile_error false implausible_high_score_near_zero_alloc [4:15] Expect ';' or newline between statements near ':' Expect ';' or newline between statements events: MAP(input.events, (event) -> { id: event.id, ^ day: SUBSTRING(event.timestamp, 0, 10),
branchline-vm jsonata-migration-pack-05 3.49985093279E8 0.0 compile_error false implausible_high_score_near_zero_alloc [4:15] Expect ';' or newline between statements near ':' Expect ';' or newline between statements articles: MAP(input.articles, (article) -> { id: article.id, ^ title: article.title,
branchline-vm large-filter-map-aggregate 3.52537821007E8 0.0 compile_error false implausible_high_score_near_zero_alloc [6:15] Expect ';' or newline between statements near ':' Expect ';' or newline between statements eligible: MAP(eligible, (item) -> { id: item.id, ^ region: item.region,
branchline-vm map_discount 52156.312 95.339 valid true ok n/a
branchline-vm numeric-operators/case000 3.55051318988E8 0.0 semantic_mismatch false implausible_high_score_near_zero_alloc Semantic output validation failed; reference=kotlin expected=140 actual={"result":140}
branchline-vm numeric-precision-invoice 3.54244055524E8 0.0 semantic_mismatch false implausible_high_score_near_zero_alloc Semantic output validation failed; reference=kotlin expected={"currency":"USD", "discountAmount":5.06, "externalRef":"9.007199254740994E19", "invoiceId":"inv-2026-0009", "shipping":4.99, "subtotal":67.5, "total":67.43} actual={"currency":"USD", "discountAmount":5.06, "externalRef":90071992547409940000, "invoiceId":"inv-2026-0009", "shipping":4.99, "subtotal":67.5, "total":67.43}
branchline-vm partial-application/case002 3.54933354338E8 0.0 semantic_mismatch false implausible_high_score_near_zero_alloc Semantic output validation failed; reference=kotlin expected="Hello" actual={"result":"Hello"}
branchline-vm performance/case001 5151.475 14175.233 valid true ok n/a
branchline-vm range-operator/case000 3.56325143303E8 0.0 semantic_mismatch false implausible_high_score_near_zero_alloc Semantic output validation failed; reference=kotlin expected=[0, 1, 2, 3, 4, 5, 6, 7, 8, 9] actual={"result":[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]}
branchline-vm simple-array-selectors/case000 3.53949027253E8 0.0 semantic_mismatch false implausible_high_score_near_zero_alloc Semantic output validation failed; reference=kotlin expected=[1, 3, 5, 6] actual={"result":[1, 3, 5, 6]}
branchline-vm string-concat/case000 3.54209908495E8 0.0 semantic_mismatch false implausible_high_score_near_zero_alloc Semantic output validation failed; reference=kotlin expected="foobar" actual={"result":"foobar"}
branchline-vm sum_prices 52614.76 1247.283 valid true ok n/a
branchline-vm summary_stats 50944.204 94.755 valid true ok n/a
dashjoin api-envelope-shaping 44756.279 96.007 valid true ok n/a
dashjoin contract-drift-projection 32361.883 35155.374 valid true ok n/a
dashjoin etl-order-normalization 3.53556861589E8 0.0 semantic_mismatch false implausible_high_score_near_zero_alloc Semantic output validation failed; reference=kotlin expected={"customer":{"email":"buyer@example.com", "id":"cust-42"}, "lines":[{"lineTotal":25, "qty":2, "sku":"BK-001", "unitPrice":12.5}, {"lineTotal":3.25, "qty":1, "sku":"PN-777", "unitPrice":3.25}, {"lineTotal":8, "qty":4, "sku":"TB-030", "uni... actual={"customer":{"email":"buyer@example.com", "id":"cust-42"}, "lines":[{"lineTotal":25, "qty":2, "sku":"BK-001", "unitPrice":12.5}, {"lineTotal":3.25, "qty":1, "sku":"PN-777", "unitPrice":3.25}, {"lineTotal":8, "qty":4, "sku":"TB-030", "uni...
dashjoin fields/case000 57544.917 87.987 valid true ok n/a
dashjoin filter_names 56435.069 1159.969 valid true ok n/a
dashjoin function-count/case000 50728.518 94.355 valid true ok n/a
dashjoin function-sift/case004 45063.67 5218.787 valid true ok n/a
dashjoin function-sum/case000 49722.276 94.825 valid true ok n/a
dashjoin function-zip/case002 50469.068 94.2 valid true ok n/a
dashjoin hof-map/case000 45106.396 96.836 valid true ok n/a
dashjoin hof-zip-map/case000 44051.86 104.179 valid true ok n/a
dashjoin jsonata-migration-pack-01 37281.249 0.0 valid true ok n/a
dashjoin jsonata-migration-pack-02 28268.405 101.192 valid true ok n/a
dashjoin jsonata-migration-pack-03 37430.497 0.0 valid true ok n/a
dashjoin jsonata-migration-pack-04 33080.561 19653.856 valid true ok n/a
dashjoin jsonata-migration-pack-05 39398.167 98.473 valid true ok n/a
dashjoin large-filter-map-aggregate 33914.315 96.865 valid true ok n/a
dashjoin map_discount 48608.839 4060.669 valid true ok n/a
dashjoin numeric-operators/case000 56174.821 87.984 valid true ok n/a
dashjoin numeric-precision-invoice 3.56264692591E8 0.0 semantic_mismatch false implausible_high_score_near_zero_alloc Semantic output validation failed; reference=kotlin expected={"currency":"USD", "discountAmount":5.06, "externalRef":"9.007199254740994E19", "invoiceId":"inv-2026-0009", "shipping":4.99, "subtotal":67.5, "total":67.43} actual={"currency":"USD", "discountAmount":5.06, "externalRef":90071992547409940000, "invoiceId":"inv-2026-0009", "shipping":4.99, "subtotal":67.5, "total":67.43}
dashjoin partial-application/case002 38480.973 105.843 valid true ok n/a
dashjoin performance/case001 49.893 132.8 valid true ok n/a
dashjoin range-operator/case000 57970.926 87.986 valid true ok n/a
dashjoin simple-array-selectors/case000 55971.151 949.139 valid true ok n/a
dashjoin string-concat/case000 57736.173 87.977 valid true ok n/a
dashjoin sum_prices 50188.313 97.29 valid true ok n/a
dashjoin summary_stats 44825.272 101.151 valid true ok n/a
ibm api-envelope-shaping 34329.207 110.296 valid true ok n/a
ibm contract-drift-projection 18919.232 102.917 valid true ok n/a
ibm etl-order-normalization 22631.559 110.896 valid true ok n/a
ibm fields/case000 57425.925 88.935 valid true ok n/a
ibm filter_names 49638.142 94.537 valid true ok n/a
ibm function-count/case000 46653.228 93.499 valid true ok n/a
ibm function-sift/case004 3.54523335601E8 0.0 semantic_mismatch false implausible_high_score_near_zero_alloc Semantic output validation failed; reference=kotlin expected={"a":"hello"} actual={}
ibm function-sum/case000 44886.618 5641.597 valid true ok n/a
ibm function-zip/case002 52244.031 97.482 valid true ok n/a
ibm hof-map/case000 43101.545 107.075 valid true ok n/a
ibm hof-zip-map/case000 30029.575 116.157 valid true ok n/a
ibm jsonata-migration-pack-01 31122.462 27253.849 valid true ok n/a
ibm jsonata-migration-pack-02 24621.027 112.578 valid true ok n/a
ibm jsonata-migration-pack-03 29346.492 113.134 valid true ok n/a
ibm jsonata-migration-pack-04 21918.515 106.571 valid true ok n/a
ibm jsonata-migration-pack-05 31092.879 111.917 valid true ok n/a
ibm large-filter-map-aggregate 3.5397292014E8 0.0 evaluation_error false implausible_high_score_near_zero_alloc java.lang.reflect.InvocationTargetException
ibm map_discount 42751.066 1138.963 valid true ok n/a
ibm numeric-operators/case000 55179.114 89.891 valid true ok n/a
ibm numeric-precision-invoice 3.54404927869E8 0.0 semantic_mismatch false implausible_high_score_near_zero_alloc Semantic output validation failed; reference=kotlin expected={"currency":"USD", "discountAmount":5.06, "externalRef":"9.007199254740994E19", "invoiceId":"inv-2026-0009", "shipping":4.99, "subtotal":67.5, "total":67.43} actual={"currency":"USD", "discountAmount":5.06, "externalRef":"90071992547409931234", "invoiceId":"inv-2026-0009", "shipping":4.99, "subtotal":67.5, "total":67.43}
ibm partial-application/case002 3.408698497E8 0.0 compile_error false implausible_high_score_near_zero_alloc line 1:25 at [@5,25:25='?',<6>,1:25]: no viable alternative at input '(?' , line 1:26 at [@6,26:26=',',<3>,1:26]: extraneous input ',' expecting {'(', 'true', 'false', STRING, 'null', '[', '{', '$', '$$', '*', NUMBER, FUNCTIONID, '', '/', '-', '%', VAR_ID, ID} , line 1:29 at [@8,29:29=',',<3>,1:29]: mismatched input ',' expecting
ibm performance/case001 3.55598059202E8 0.0 compile_error false implausible_high_score_near_zero_alloc line 1:15 at null: token recognition error at: '#' , line 1:16 at [@4,16:17='$i',<47>,1:16]: mismatched input '$i' expecting {'.', ',', 'in', '?', '[', '{', '}', '~>', '*', '/', '+', '-', '%', '=', '!=', '<', '<=', '>', '>=', '&', '^', 'and', 'or'}
ibm range-operator/case000 58511.438 89.133 valid true ok n/a
ibm simple-array-selectors/case000 52734.561 90.871 valid true ok n/a
ibm string-concat/case000 56773.691 90.451 valid true ok n/a
ibm sum_prices 48427.274 101.494 valid true ok n/a
ibm summary_stats 46865.421 97.156 valid true ok n/a