@greenpandastudios/aug-cli 0.20.1 → 0.21.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (295) hide show
  1. package/README.md +1 -1
  2. package/docs/assets/benchmarks/execution.svg +774 -637
  3. package/docs/assets/benchmarks/http.svg +278 -249
  4. package/docs/assets/benchmarks/improvements.svg +66 -66
  5. package/docs/assets/benchmarks/kernels-mobile.svg +1 -0
  6. package/docs/assets/benchmarks/kernels.svg +1 -0
  7. package/docs/assets/benchmarks/memory.svg +153 -153
  8. package/docs/benchmark-results.json +227089 -90363
  9. package/docs/compatibility.md +6 -6
  10. package/docs/contributing-benchmarks.md +36 -6
  11. package/docs/dev-containers.md +8 -15
  12. package/docs/dgx-consumers.json +122 -0
  13. package/docs/dgx-gyms.json +784 -0
  14. package/docs/dgx-kernels.json +1170 -0
  15. package/docs/dgx-performance.json +227849 -0
  16. package/docs/dgx-spark.md +64 -0
  17. package/docs/diagnostics.md +1 -1
  18. package/docs/docker.md +16 -17
  19. package/docs/example-projects.json +32 -0
  20. package/docs/examples/approved-design/dependencies/august/{0.20.1 → 0.21.0}/io/contracts.md +3 -3
  21. package/docs/examples/approved-design/domain/app.md +4 -4
  22. package/docs/examples/approved-design/main.md +2 -2
  23. package/docs/examples/calls-benchmark/index.md +36 -0
  24. package/docs/examples/calls-benchmark/main.md +78 -0
  25. package/docs/examples/calls-benchmark/operations.md +60 -0
  26. package/docs/examples/developer-workflow/calculator.md +5 -5
  27. package/docs/examples/developer-workflow/dependencies/august/{0.20.1 → 0.21.0}/io/contracts.md +3 -3
  28. package/docs/examples/developer-workflow/logging/console.md +2 -2
  29. package/docs/examples/developer-workflow/logging/logger.md +2 -2
  30. package/docs/examples/developer-workflow/main.md +2 -2
  31. package/docs/examples/errors-benchmark/index.md +36 -0
  32. package/docs/examples/errors-benchmark/main.md +92 -0
  33. package/docs/examples/errors-benchmark/operations.md +65 -0
  34. package/docs/examples/float-benchmark/index.md +35 -0
  35. package/docs/examples/float-benchmark/main.md +75 -0
  36. package/docs/examples/generic-di/dependencies/august/{0.20.1 → 0.21.0}/io/contracts.md +3 -3
  37. package/docs/examples/generic-di/main.md +2 -2
  38. package/docs/examples/generic-di/types.md +3 -3
  39. package/docs/examples/hello/app/greeter.md +3 -3
  40. package/docs/examples/hello/dependencies/august/{0.20.1 → 0.21.0}/io/contracts.md +3 -3
  41. package/docs/examples/hello/logging/console.md +2 -2
  42. package/docs/examples/hello/logging/logger.md +2 -2
  43. package/docs/examples/hello/main.md +2 -2
  44. package/docs/examples/index.md +18 -1
  45. package/docs/examples/interceptors/app.md +5 -5
  46. package/docs/examples/interceptors/dependencies/august/{0.20.1 → 0.21.0}/io/contracts.md +3 -3
  47. package/docs/examples/interceptors/interceptors.md +2 -2
  48. package/docs/examples/interceptors/logging.md +3 -3
  49. package/docs/examples/interceptors/main.md +2 -2
  50. package/docs/examples/list-benchmark/index.md +35 -0
  51. package/docs/examples/list-benchmark/main.md +78 -0
  52. package/docs/examples/map-churn-benchmark/index.md +35 -0
  53. package/docs/examples/map-churn-benchmark/main.md +106 -0
  54. package/docs/examples/native-blake3/dependencies/packages/@greenpandastudios/aug-blake3/0.1.3/api.md +104 -0
  55. package/docs/examples/native-blake3/dependencies/packages/@greenpandastudios/aug-blake3/0.1.3/contracts.md +54 -0
  56. package/docs/examples/native-blake3/dependencies/packages/@greenpandastudios/aug-blake3/0.1.3/native.abi-json.md +48 -0
  57. package/docs/examples/native-blake3/hashing.md +93 -0
  58. package/docs/examples/native-blake3/index.md +38 -0
  59. package/docs/examples/native-blake3/main.md +73 -0
  60. package/docs/examples/native-pytorch/dependencies/packages/@greenpandastudios/aug-pytorch/0.1.4/api.md +406 -0
  61. package/docs/examples/native-pytorch/dependencies/packages/@greenpandastudios/aug-pytorch/0.1.4/bindings.md +51 -0
  62. package/docs/examples/native-pytorch/dependencies/packages/@greenpandastudios/aug-pytorch/0.1.4/contracts.md +63 -0
  63. package/docs/examples/native-pytorch/dependencies/packages/@greenpandastudios/aug-pytorch/0.1.4/native.abi-json.md +161 -0
  64. package/docs/examples/native-pytorch/index.md +38 -0
  65. package/docs/examples/native-pytorch/main.md +73 -0
  66. package/docs/examples/native-pytorch/tensors.md +123 -0
  67. package/docs/examples/native-sqlite/database.md +116 -0
  68. package/docs/examples/native-sqlite/dependencies/packages/@greenpandastudios/aug-sqlite/0.1.3/api.md +284 -0
  69. package/docs/examples/native-sqlite/dependencies/packages/@greenpandastudios/aug-sqlite/0.1.3/bindings.md +51 -0
  70. package/docs/examples/native-sqlite/dependencies/packages/@greenpandastudios/aug-sqlite/0.1.3/contracts.md +75 -0
  71. package/docs/examples/native-sqlite/dependencies/packages/@greenpandastudios/aug-sqlite/0.1.3/native.abi-json.md +119 -0
  72. package/docs/examples/native-sqlite/index.md +38 -0
  73. package/docs/examples/native-sqlite/main.md +73 -0
  74. package/docs/examples/native-zlib/compression.md +99 -0
  75. package/docs/examples/native-zlib/dependencies/packages/@greenpandastudios/aug-zlib/0.1.3/api.md +153 -0
  76. package/docs/examples/native-zlib/dependencies/packages/@greenpandastudios/aug-zlib/0.1.3/contracts.md +54 -0
  77. package/docs/examples/native-zlib/dependencies/packages/@greenpandastudios/aug-zlib/0.1.3/native.abi-json.md +76 -0
  78. package/docs/examples/native-zlib/index.md +38 -0
  79. package/docs/examples/native-zlib/main.md +78 -0
  80. package/docs/examples/new-syntax/console.md +2 -2
  81. package/docs/examples/new-syntax/dependencies/august/{0.20.1 → 0.21.0}/io/contracts.md +3 -3
  82. package/docs/examples/new-syntax/greeter.md +3 -3
  83. package/docs/examples/new-syntax/logger.md +2 -2
  84. package/docs/examples/new-syntax/main.md +2 -2
  85. package/docs/examples/ownership-transfer/dependencies/august/{0.20.1 → 0.21.0}/io/contracts.md +3 -3
  86. package/docs/examples/ownership-transfer/main.md +2 -2
  87. package/docs/examples/ownership-transfer/resource.md +2 -2
  88. package/docs/examples/packages-math/aug-package-json.md +1 -1
  89. package/docs/examples/records-benchmark/data.md +55 -0
  90. package/docs/examples/records-benchmark/index.md +36 -0
  91. package/docs/examples/records-benchmark/main.md +85 -0
  92. package/docs/examples/strings-benchmark/index.md +35 -0
  93. package/docs/examples/strings-benchmark/main.md +76 -0
  94. package/docs/examples/tasks-benchmark/index.md +36 -0
  95. package/docs/examples/tasks-benchmark/main.md +89 -0
  96. package/docs/examples/tasks-benchmark/operations.md +58 -0
  97. package/docs/getting-started.md +3 -3
  98. package/docs/grammar.md +2 -2
  99. package/docs/gym-results.json +784 -0
  100. package/docs/implementation-map.md +6 -0
  101. package/docs/index.md +1 -1
  102. package/docs/kernel-results.json +1170 -0
  103. package/docs/language-conformance.md +6 -0
  104. package/docs/language-constructs.md +9 -1
  105. package/docs/learn/index.md +1 -1
  106. package/docs/maintaining-docs.md +1 -1
  107. package/docs/native-implementation.md +276 -0
  108. package/docs/native-interop-llvm-plan.md +342 -0
  109. package/docs/native-package-examples.md +684 -0
  110. package/docs/native-packages.md +179 -0
  111. package/docs/packages.md +2 -2
  112. package/docs/performance.md +50 -29
  113. package/docs/production-readiness.md +11 -1
  114. package/docs/public/downloads/approved-design.zip +0 -0
  115. package/docs/public/downloads/calls-benchmark.zip +0 -0
  116. package/docs/public/downloads/developer-workflow.zip +0 -0
  117. package/docs/public/downloads/errors-benchmark.zip +0 -0
  118. package/docs/public/downloads/float-benchmark.zip +0 -0
  119. package/docs/public/downloads/generic-di.zip +0 -0
  120. package/docs/public/downloads/hello.zip +0 -0
  121. package/docs/public/downloads/interceptors.zip +0 -0
  122. package/docs/public/downloads/json-benchmark.zip +0 -0
  123. package/docs/public/downloads/list-benchmark.zip +0 -0
  124. package/docs/public/downloads/map-churn-benchmark.zip +0 -0
  125. package/docs/public/downloads/native-blake3.zip +0 -0
  126. package/docs/public/downloads/native-pytorch.zip +0 -0
  127. package/docs/public/downloads/native-sqlite.zip +0 -0
  128. package/docs/public/downloads/native-zlib.zip +0 -0
  129. package/docs/public/downloads/new-syntax.zip +0 -0
  130. package/docs/public/downloads/oidc-login.zip +0 -0
  131. package/docs/public/downloads/ownership-transfer.zip +0 -0
  132. package/docs/public/downloads/packages-app.zip +0 -0
  133. package/docs/public/downloads/packages-math.zip +0 -0
  134. package/docs/public/downloads/records-benchmark.zip +0 -0
  135. package/docs/public/downloads/strings-benchmark.zip +0 -0
  136. package/docs/public/downloads/tasks-benchmark.zip +0 -0
  137. package/docs/qualification-results.md +66 -0
  138. package/docs/reference.md +24 -0
  139. package/docs/releasing.md +81 -6
  140. package/docs/research/libtorch-native-qualification.md +115 -0
  141. package/docs/research/native-interop-llvm.md +197 -0
  142. package/docs/research/qualification-methods.md +15 -0
  143. package/docs/roadmap.md +1 -0
  144. package/docs/safety-gyms.md +41 -0
  145. package/docs/tooling.md +16 -15
  146. package/docs/web-library-gaps.md +1 -1
  147. package/docs/web.md +4 -0
  148. package/examples/approved-design/.aug-spec/manifest.json +3 -3
  149. package/examples/approved-design/domain/app.aug.md +4 -4
  150. package/examples/approved-design/main.aug.md +2 -2
  151. package/examples/developer-workflow/.aug-spec/manifest.json +3 -3
  152. package/examples/developer-workflow/calculator.aug.md +5 -5
  153. package/examples/developer-workflow/logging/console.aug.md +2 -2
  154. package/examples/developer-workflow/logging/logger.aug.md +2 -2
  155. package/examples/developer-workflow/main.aug.md +2 -2
  156. package/examples/generic-di/.aug-spec/manifest.json +3 -3
  157. package/examples/generic-di/main.aug.md +2 -2
  158. package/examples/generic-di/types.aug.md +3 -3
  159. package/examples/hello/.aug-spec/manifest.json +3 -3
  160. package/examples/hello/app/greeter.aug.md +3 -3
  161. package/examples/hello/logging/console.aug.md +2 -2
  162. package/examples/hello/logging/logger.aug.md +2 -2
  163. package/examples/hello/main.aug.md +2 -2
  164. package/examples/interceptors/.aug-spec/manifest.json +3 -3
  165. package/examples/interceptors/app.aug.md +5 -5
  166. package/examples/interceptors/interceptors.aug.md +2 -2
  167. package/examples/interceptors/logging.aug.md +3 -3
  168. package/examples/interceptors/main.aug.md +2 -2
  169. package/examples/native-blake3/.aug-spec/manifest.json +16 -0
  170. package/examples/native-blake3/.aug-spec/packages/@greenpandastudios/aug-blake3/0.1.1/native.abi.json +29 -0
  171. package/examples/native-blake3/.aug-spec/packages/@greenpandastudios/aug-blake3/0.1.3/api.aug +14 -0
  172. package/examples/native-blake3/.aug-spec/packages/@greenpandastudios/aug-blake3/0.1.3/api.aug.md +34 -0
  173. package/examples/native-blake3/.aug-spec/packages/@greenpandastudios/aug-blake3/0.1.3/contracts.aug +4 -0
  174. package/examples/native-blake3/.aug-spec/packages/@greenpandastudios/aug-blake3/0.1.3/contracts.aug.md +8 -0
  175. package/examples/native-blake3/.aug-spec/packages/@greenpandastudios/aug-blake3/0.1.3/native.abi.json +29 -0
  176. package/examples/native-blake3/AGENTS.md +5 -0
  177. package/examples/native-blake3/aug.lock.json +253 -0
  178. package/examples/native-blake3/hashing.aug +11 -0
  179. package/examples/native-blake3/hashing.aug.md +25 -0
  180. package/examples/native-blake3/main.aug +8 -0
  181. package/examples/native-blake3/main.aug.md +13 -0
  182. package/examples/native-pytorch/.aug-spec/manifest.json +18 -0
  183. package/examples/native-pytorch/.aug-spec/packages/@greenpandastudios/aug-pytorch/0.1.1/native.abi.json +142 -0
  184. package/examples/native-pytorch/.aug-spec/packages/@greenpandastudios/aug-pytorch/0.1.3/native.abi.json +142 -0
  185. package/examples/native-pytorch/.aug-spec/packages/@greenpandastudios/aug-pytorch/0.1.4/api.aug +101 -0
  186. package/examples/native-pytorch/.aug-spec/packages/@greenpandastudios/aug-pytorch/0.1.4/api.aug.md +160 -0
  187. package/examples/native-pytorch/.aug-spec/packages/@greenpandastudios/aug-pytorch/0.1.4/bindings.aug +3 -0
  188. package/examples/native-pytorch/.aug-spec/packages/@greenpandastudios/aug-pytorch/0.1.4/bindings.aug.md +8 -0
  189. package/examples/native-pytorch/.aug-spec/packages/@greenpandastudios/aug-pytorch/0.1.4/contracts.aug +6 -0
  190. package/examples/native-pytorch/.aug-spec/packages/@greenpandastudios/aug-pytorch/0.1.4/contracts.aug.md +13 -0
  191. package/examples/native-pytorch/.aug-spec/packages/@greenpandastudios/aug-pytorch/0.1.4/native.abi.json +142 -0
  192. package/examples/native-pytorch/AGENTS.md +5 -0
  193. package/examples/native-pytorch/aug.lock.json +309 -0
  194. package/examples/native-pytorch/main.aug +8 -0
  195. package/examples/native-pytorch/main.aug.md +13 -0
  196. package/examples/native-pytorch/tensors.aug +23 -0
  197. package/examples/native-pytorch/tensors.aug.md +35 -0
  198. package/examples/native-sqlite/.aug-spec/manifest.json +18 -0
  199. package/examples/native-sqlite/.aug-spec/packages/@greenpandastudios/aug-sqlite/0.1.2/native.abi.json +100 -0
  200. package/examples/native-sqlite/.aug-spec/packages/@greenpandastudios/aug-sqlite/0.1.3/api.aug +48 -0
  201. package/examples/native-sqlite/.aug-spec/packages/@greenpandastudios/aug-sqlite/0.1.3/api.aug.md +91 -0
  202. package/examples/native-sqlite/.aug-spec/packages/@greenpandastudios/aug-sqlite/0.1.3/bindings.aug +3 -0
  203. package/examples/native-sqlite/.aug-spec/packages/@greenpandastudios/aug-sqlite/0.1.3/bindings.aug.md +8 -0
  204. package/examples/native-sqlite/.aug-spec/packages/@greenpandastudios/aug-sqlite/0.1.3/contracts.aug +8 -0
  205. package/examples/native-sqlite/.aug-spec/packages/@greenpandastudios/aug-sqlite/0.1.3/contracts.aug.md +22 -0
  206. package/examples/native-sqlite/.aug-spec/packages/@greenpandastudios/aug-sqlite/0.1.3/native.abi.json +100 -0
  207. package/examples/native-sqlite/AGENTS.md +5 -0
  208. package/examples/native-sqlite/aug.lock.json +236 -0
  209. package/examples/native-sqlite/database.aug +15 -0
  210. package/examples/native-sqlite/database.aug.md +27 -0
  211. package/examples/native-sqlite/main.aug +8 -0
  212. package/examples/native-sqlite/main.aug.md +13 -0
  213. package/examples/native-zlib/.aug-spec/manifest.json +16 -0
  214. package/examples/native-zlib/.aug-spec/packages/@greenpandastudios/aug-zlib/0.1.1/native.abi.json +57 -0
  215. package/examples/native-zlib/.aug-spec/packages/@greenpandastudios/aug-zlib/0.1.3/api.aug +29 -0
  216. package/examples/native-zlib/.aug-spec/packages/@greenpandastudios/aug-zlib/0.1.3/api.aug.md +54 -0
  217. package/examples/native-zlib/.aug-spec/packages/@greenpandastudios/aug-zlib/0.1.3/contracts.aug +4 -0
  218. package/examples/native-zlib/.aug-spec/packages/@greenpandastudios/aug-zlib/0.1.3/contracts.aug.md +8 -0
  219. package/examples/native-zlib/.aug-spec/packages/@greenpandastudios/aug-zlib/0.1.3/native.abi.json +57 -0
  220. package/examples/native-zlib/AGENTS.md +5 -0
  221. package/examples/native-zlib/aug.lock.json +236 -0
  222. package/examples/native-zlib/compression.aug +15 -0
  223. package/examples/native-zlib/compression.aug.md +27 -0
  224. package/examples/native-zlib/main.aug +10 -0
  225. package/examples/native-zlib/main.aug.md +13 -0
  226. package/examples/new-syntax/.aug-spec/manifest.json +3 -3
  227. package/examples/new-syntax/console.aug.md +2 -2
  228. package/examples/new-syntax/greeter.aug.md +3 -3
  229. package/examples/new-syntax/logger.aug.md +2 -2
  230. package/examples/new-syntax/main.aug.md +2 -2
  231. package/examples/oidc-login/aug.lock.json +6 -6
  232. package/examples/ownership-transfer/.aug-spec/manifest.json +3 -3
  233. package/examples/ownership-transfer/main.aug.md +2 -2
  234. package/examples/ownership-transfer/resource.aug.md +2 -2
  235. package/examples/packages/math/aug-package.json +1 -1
  236. package/native/compiler-packs.json +43 -0
  237. package/package.json +3 -2
  238. package/runtime/aug_http.c +48 -21
  239. package/runtime/aug_http_ir.c +30 -0
  240. package/runtime/aug_http_ir.h +18 -0
  241. package/runtime/aug_ir.c +209 -0
  242. package/runtime/aug_ir.h +89 -0
  243. package/runtime/aug_json.c +6 -1
  244. package/runtime/aug_runtime.c +82 -16
  245. package/runtime/aug_runtime.h +16 -2
  246. package/runtime/aug_tasks.c +38 -7
  247. package/runtime/aug_values.c +12 -6
  248. package/scripts/bootstrap-native.mjs +4 -1
  249. package/src/ast.js +1 -1
  250. package/src/checker.js +110 -28
  251. package/src/cli.js +92 -14
  252. package/src/codegen.js +31 -6
  253. package/src/compiler-packs.js +66 -0
  254. package/src/config.js +2 -2
  255. package/src/editor.js +15 -6
  256. package/src/formatter.js +4 -2
  257. package/src/git-http.js +137 -0
  258. package/src/git-packages.js +9 -1
  259. package/src/help.js +10 -2
  260. package/src/ir-types.js +5 -0
  261. package/src/ir-verify.js +277 -0
  262. package/src/ir.js +962 -0
  263. package/src/llvm-debug.js +101 -0
  264. package/src/llvm-native.js +152 -0
  265. package/src/llvm-platform.js +20 -0
  266. package/src/llvm.js +781 -0
  267. package/src/native-artifacts.js +207 -0
  268. package/src/native-bindings.js +189 -0
  269. package/src/native-contracts.js +295 -0
  270. package/src/native-declarations.js +68 -0
  271. package/src/native-facts.js +63 -0
  272. package/src/package-locking.js +43 -0
  273. package/src/package-manager.js +23 -8
  274. package/src/parser.js +20 -2
  275. package/src/project.js +2 -2
  276. package/src/runtime-abi.js +23 -0
  277. package/src/runtime-adapters.js +18 -0
  278. package/src/schemas.js +24 -17
  279. package/src/semantic.js +8 -3
  280. package/src/snippets.js +1 -0
  281. package/src/spec.js +49 -8
  282. /package/examples/approved-design/.aug-spec/august/{0.20.1 → 0.21.0}/io/contracts.aug +0 -0
  283. /package/examples/approved-design/.aug-spec/august/{0.20.1 → 0.21.0}/io/contracts.aug.md +0 -0
  284. /package/examples/developer-workflow/.aug-spec/august/{0.20.1 → 0.21.0}/io/contracts.aug +0 -0
  285. /package/examples/developer-workflow/.aug-spec/august/{0.20.1 → 0.21.0}/io/contracts.aug.md +0 -0
  286. /package/examples/generic-di/.aug-spec/august/{0.20.1 → 0.21.0}/io/contracts.aug +0 -0
  287. /package/examples/generic-di/.aug-spec/august/{0.20.1 → 0.21.0}/io/contracts.aug.md +0 -0
  288. /package/examples/hello/.aug-spec/august/{0.20.1 → 0.21.0}/io/contracts.aug +0 -0
  289. /package/examples/hello/.aug-spec/august/{0.20.1 → 0.21.0}/io/contracts.aug.md +0 -0
  290. /package/examples/interceptors/.aug-spec/august/{0.20.1 → 0.21.0}/io/contracts.aug +0 -0
  291. /package/examples/interceptors/.aug-spec/august/{0.20.1 → 0.21.0}/io/contracts.aug.md +0 -0
  292. /package/examples/new-syntax/.aug-spec/august/{0.20.1 → 0.21.0}/io/contracts.aug +0 -0
  293. /package/examples/new-syntax/.aug-spec/august/{0.20.1 → 0.21.0}/io/contracts.aug.md +0 -0
  294. /package/examples/ownership-transfer/.aug-spec/august/{0.20.1 → 0.21.0}/io/contracts.aug +0 -0
  295. /package/examples/ownership-transfer/.aug-spec/august/{0.20.1 → 0.21.0}/io/contracts.aug.md +0 -0
@@ -1,14 +1,14 @@
1
1
  <?xml version="1.0" encoding="utf-8" standalone="no"?>
2
2
  <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
3
3
  "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
4
- <svg role="img" aria-label="August performance before and after" xmlns:xlink="http://www.w3.org/1999/xlink" width="432pt" height="504pt" viewBox="0 0 432 504" xmlns="http://www.w3.org/2000/svg" version="1.1">
5
- <title>August performance before and after</title>
4
+ <svg role="img" aria-label="Earlier and current August performance" xmlns:xlink="http://www.w3.org/1999/xlink" width="432pt" height="504pt" viewBox="0 0 432 504" xmlns="http://www.w3.org/2000/svg" version="1.1">
5
+ <title>Earlier and current August performance</title>
6
6
  <metadata>
7
7
  <rdf:RDF xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
8
8
  <cc:Work>
9
9
  <dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
10
- <dc:title>August performance before and after</dc:title>
11
- <dc:description>The same CPU, Map/Set, and HTTP programs on the same host and benchmark settings. Lower execution time and higher throughput are faster.</dc:description>
10
+ <dc:title>Earlier and current August performance</dc:title>
11
+ <dc:description>Historical measurements of the same CPU, Map/Set and HTTP programs on this host. Compiler versions and backends differ; current HTTP measurements use five rounds instead of three. Lower execution time and higher throughput are faster.</dc:description>
12
12
  <dc:format>image/svg+xml</dc:format>
13
13
  <dc:creator>
14
14
  <cc:Agent>
@@ -884,24 +884,24 @@ z
884
884
  </g>
885
885
  <g id="patch_6">
886
886
  <path d="M 101.84274 52.155275
887
- L 143.053952 52.155275
888
- L 143.053952 73.612828
887
+ L 145.910736 52.155275
888
+ L 145.910736 73.612828
889
889
  L 101.84274 73.612828
890
890
  z
891
891
  " clip-path="url(#p5807b480e4)" style="fill: #087e8b"/>
892
892
  </g>
893
893
  <g id="patch_7">
894
894
  <path d="M 101.84274 119.210128
895
- L 116.328493 119.210128
896
- L 116.328493 140.667681
895
+ L 117.272933 119.210128
896
+ L 117.272933 140.667681
897
897
  L 101.84274 140.667681
898
898
  z
899
899
  " clip-path="url(#p5807b480e4)" style="fill: #087e8b"/>
900
900
  </g>
901
901
  <g id="patch_8">
902
902
  <path d="M 101.84274 186.264982
903
- L 187.791962 186.264982
904
- L 187.791962 207.722535
903
+ L 197.50859 186.264982
904
+ L 197.50859 207.722535
905
905
  L 101.84274 207.722535
906
906
  z
907
907
  " clip-path="url(#p5807b480e4)" style="fill: #087e8b"/>
@@ -1063,31 +1063,31 @@ z
1063
1063
  </g>
1064
1064
  </g>
1065
1065
  <g id="text_14">
1066
- <!-- 7.24 -->
1067
- <g style="fill: #263445" transform="translate(147.038507 65.643427) scale(0.1 -0.1)">
1066
+ <!-- 7.74 -->
1067
+ <g style="fill: #263445" transform="translate(149.895291 65.643427) scale(0.1 -0.1)">
1068
1068
  <use xlink:href="#DejaVuSans-37"/>
1069
1069
  <use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
1070
- <use xlink:href="#DejaVuSans-32" transform="translate(95.410156 0)"/>
1070
+ <use xlink:href="#DejaVuSans-37" transform="translate(95.410156 0)"/>
1071
1071
  <use xlink:href="#DejaVuSans-34" transform="translate(159.033203 0)"/>
1072
1072
  </g>
1073
1073
  </g>
1074
1074
  <g id="text_15">
1075
- <!-- 2.54 -->
1076
- <g style="fill: #263445" transform="translate(120.313049 132.69828) scale(0.1 -0.1)">
1075
+ <!-- 2.71 -->
1076
+ <g style="fill: #263445" transform="translate(121.257488 132.69828) scale(0.1 -0.1)">
1077
1077
  <use xlink:href="#DejaVuSans-32"/>
1078
1078
  <use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
1079
- <use xlink:href="#DejaVuSans-35" transform="translate(95.410156 0)"/>
1080
- <use xlink:href="#DejaVuSans-34" transform="translate(159.033203 0)"/>
1079
+ <use xlink:href="#DejaVuSans-37" transform="translate(95.410156 0)"/>
1080
+ <use xlink:href="#DejaVuSans-31" transform="translate(159.033203 0)"/>
1081
1081
  </g>
1082
1082
  </g>
1083
1083
  <g id="text_16">
1084
- <!-- 15.10 -->
1085
- <g style="fill: #263445" transform="translate(191.776517 199.753133) scale(0.1 -0.1)">
1084
+ <!-- 16.81 -->
1085
+ <g style="fill: #263445" transform="translate(201.493145 199.753133) scale(0.1 -0.1)">
1086
1086
  <use xlink:href="#DejaVuSans-31"/>
1087
- <use xlink:href="#DejaVuSans-35" transform="translate(63.623047 0)"/>
1087
+ <use xlink:href="#DejaVuSans-36" transform="translate(63.623047 0)"/>
1088
1088
  <use xlink:href="#DejaVuSans-2e" transform="translate(127.246094 0)"/>
1089
- <use xlink:href="#DejaVuSans-31" transform="translate(159.033203 0)"/>
1090
- <use xlink:href="#DejaVuSans-30" transform="translate(222.65625 0)"/>
1089
+ <use xlink:href="#DejaVuSans-38" transform="translate(159.033203 0)"/>
1090
+ <use xlink:href="#DejaVuSans-31" transform="translate(222.65625 0)"/>
1091
1091
  </g>
1092
1092
  </g>
1093
1093
  <g id="text_17">
@@ -1733,18 +1733,18 @@ L -3.5 0
1733
1733
  </g>
1734
1734
  <g id="ytick_5">
1735
1735
  <g id="line2d_24">
1736
- <path d="M 101.84274 427.25781
1737
- L 428.99976 427.25781
1736
+ <path d="M 101.84274 420.218937
1737
+ L 428.99976 420.218937
1738
1738
  " clip-path="url(#p17a8581dbe)" style="fill: none; stroke: #e8edf1; stroke-width: 0.8; stroke-linecap: square"/>
1739
1739
  </g>
1740
1740
  <g id="line2d_25">
1741
1741
  <g>
1742
- <use xlink:href="#m3109c17da4" x="101.84274" y="427.25781" style="fill: #263445; stroke: #263445; stroke-width: 0.8"/>
1742
+ <use xlink:href="#m3109c17da4" x="101.84274" y="420.218937" style="fill: #263445; stroke: #263445; stroke-width: 0.8"/>
1743
1743
  </g>
1744
1744
  </g>
1745
1745
  <g id="text_25">
1746
1746
  <!-- 20 -->
1747
- <g style="fill: #263445" transform="translate(80.84524 431.436951) scale(0.11 -0.11)">
1747
+ <g style="fill: #263445" transform="translate(80.84524 424.398077) scale(0.11 -0.11)">
1748
1748
  <use xlink:href="#DejaVuSans-32"/>
1749
1749
  <use xlink:href="#DejaVuSans-30" transform="translate(63.623047 0)"/>
1750
1750
  </g>
@@ -1752,18 +1752,18 @@ L 428.99976 427.25781
1752
1752
  </g>
1753
1753
  <g id="ytick_6">
1754
1754
  <g id="line2d_26">
1755
- <path d="M 101.84274 385.807735
1756
- L 428.99976 385.807735
1755
+ <path d="M 101.84274 371.729989
1756
+ L 428.99976 371.729989
1757
1757
  " clip-path="url(#p17a8581dbe)" style="fill: none; stroke: #e8edf1; stroke-width: 0.8; stroke-linecap: square"/>
1758
1758
  </g>
1759
1759
  <g id="line2d_27">
1760
1760
  <g>
1761
- <use xlink:href="#m3109c17da4" x="101.84274" y="385.807735" style="fill: #263445; stroke: #263445; stroke-width: 0.8"/>
1761
+ <use xlink:href="#m3109c17da4" x="101.84274" y="371.729989" style="fill: #263445; stroke: #263445; stroke-width: 0.8"/>
1762
1762
  </g>
1763
1763
  </g>
1764
1764
  <g id="text_26">
1765
1765
  <!-- 40 -->
1766
- <g style="fill: #263445" transform="translate(80.84524 389.986876) scale(0.11 -0.11)">
1766
+ <g style="fill: #263445" transform="translate(80.84524 375.909129) scale(0.11 -0.11)">
1767
1767
  <use xlink:href="#DejaVuSans-34"/>
1768
1768
  <use xlink:href="#DejaVuSans-30" transform="translate(63.623047 0)"/>
1769
1769
  </g>
@@ -1771,18 +1771,18 @@ L 428.99976 385.807735
1771
1771
  </g>
1772
1772
  <g id="ytick_7">
1773
1773
  <g id="line2d_28">
1774
- <path d="M 101.84274 344.35766
1775
- L 428.99976 344.35766
1774
+ <path d="M 101.84274 323.24104
1775
+ L 428.99976 323.24104
1776
1776
  " clip-path="url(#p17a8581dbe)" style="fill: none; stroke: #e8edf1; stroke-width: 0.8; stroke-linecap: square"/>
1777
1777
  </g>
1778
1778
  <g id="line2d_29">
1779
1779
  <g>
1780
- <use xlink:href="#m3109c17da4" x="101.84274" y="344.35766" style="fill: #263445; stroke: #263445; stroke-width: 0.8"/>
1780
+ <use xlink:href="#m3109c17da4" x="101.84274" y="323.24104" style="fill: #263445; stroke: #263445; stroke-width: 0.8"/>
1781
1781
  </g>
1782
1782
  </g>
1783
1783
  <g id="text_27">
1784
1784
  <!-- 60 -->
1785
- <g style="fill: #263445" transform="translate(80.84524 348.536801) scale(0.11 -0.11)">
1785
+ <g style="fill: #263445" transform="translate(80.84524 327.420181) scale(0.11 -0.11)">
1786
1786
  <use xlink:href="#DejaVuSans-36"/>
1787
1787
  <use xlink:href="#DejaVuSans-30" transform="translate(63.623047 0)"/>
1788
1788
  </g>
@@ -1790,18 +1790,18 @@ L 428.99976 344.35766
1790
1790
  </g>
1791
1791
  <g id="ytick_8">
1792
1792
  <g id="line2d_30">
1793
- <path d="M 101.84274 302.907585
1794
- L 428.99976 302.907585
1793
+ <path d="M 101.84274 274.752092
1794
+ L 428.99976 274.752092
1795
1795
  " clip-path="url(#p17a8581dbe)" style="fill: none; stroke: #e8edf1; stroke-width: 0.8; stroke-linecap: square"/>
1796
1796
  </g>
1797
1797
  <g id="line2d_31">
1798
1798
  <g>
1799
- <use xlink:href="#m3109c17da4" x="101.84274" y="302.907585" style="fill: #263445; stroke: #263445; stroke-width: 0.8"/>
1799
+ <use xlink:href="#m3109c17da4" x="101.84274" y="274.752092" style="fill: #263445; stroke: #263445; stroke-width: 0.8"/>
1800
1800
  </g>
1801
1801
  </g>
1802
1802
  <g id="text_28">
1803
1803
  <!-- 80 -->
1804
- <g style="fill: #263445" transform="translate(80.84524 307.086725) scale(0.11 -0.11)">
1804
+ <g style="fill: #263445" transform="translate(80.84524 278.931233) scale(0.11 -0.11)">
1805
1805
  <use xlink:href="#DejaVuSans-38"/>
1806
1806
  <use xlink:href="#DejaVuSans-30" transform="translate(63.623047 0)"/>
1807
1807
  </g>
@@ -1957,9 +1957,9 @@ z
1957
1957
  </g>
1958
1958
  </g>
1959
1959
  <g id="line2d_32">
1960
- <path d="M 119.769152 416.328778
1961
- L 186.993197 338.721789
1962
- L 402.110142 405.096832
1960
+ <path d="M 119.769152 407.433984
1961
+ L 186.993197 316.64811
1962
+ L 402.110142 394.294678
1963
1963
  " clip-path="url(#p17a8581dbe)" style="fill: none; stroke-dasharray: 7.4,3.2; stroke-dashoffset: 0; stroke: #8a96a3; stroke-width: 2"/>
1964
1964
  <defs>
1965
1965
  <path id="mc71834a7e5" d="M 0 3
@@ -1975,15 +1975,15 @@ z
1975
1975
  " style="stroke: #8a96a3"/>
1976
1976
  </defs>
1977
1977
  <g clip-path="url(#p17a8581dbe)">
1978
- <use xlink:href="#mc71834a7e5" x="119.769152" y="416.328778" style="fill: #8a96a3; stroke: #8a96a3"/>
1979
- <use xlink:href="#mc71834a7e5" x="186.993197" y="338.721789" style="fill: #8a96a3; stroke: #8a96a3"/>
1980
- <use xlink:href="#mc71834a7e5" x="402.110142" y="405.096832" style="fill: #8a96a3; stroke: #8a96a3"/>
1978
+ <use xlink:href="#mc71834a7e5" x="119.769152" y="407.433984" style="fill: #8a96a3; stroke: #8a96a3"/>
1979
+ <use xlink:href="#mc71834a7e5" x="186.993197" y="316.64811" style="fill: #8a96a3; stroke: #8a96a3"/>
1980
+ <use xlink:href="#mc71834a7e5" x="402.110142" y="394.294678" style="fill: #8a96a3; stroke: #8a96a3"/>
1981
1981
  </g>
1982
1982
  </g>
1983
1983
  <g id="line2d_33">
1984
- <path d="M 119.769152 419.950165
1985
- L 186.993197 316.64811
1986
- L 402.110142 333.23817
1984
+ <path d="M 119.769152 417.682884
1985
+ L 186.993197 326.374022
1986
+ L 402.110142 336.729975
1987
1987
  " clip-path="url(#p17a8581dbe)" style="fill: none; stroke: #087e8b; stroke-width: 2; stroke-linecap: square"/>
1988
1988
  <defs>
1989
1989
  <path id="m97b82aa8ea" d="M 0 3
@@ -1999,9 +1999,9 @@ z
1999
1999
  " style="stroke: #087e8b"/>
2000
2000
  </defs>
2001
2001
  <g clip-path="url(#p17a8581dbe)">
2002
- <use xlink:href="#m97b82aa8ea" x="119.769152" y="419.950165" style="fill: #087e8b; stroke: #087e8b"/>
2003
- <use xlink:href="#m97b82aa8ea" x="186.993197" y="316.64811" style="fill: #087e8b; stroke: #087e8b"/>
2004
- <use xlink:href="#m97b82aa8ea" x="402.110142" y="333.23817" style="fill: #087e8b; stroke: #087e8b"/>
2002
+ <use xlink:href="#m97b82aa8ea" x="119.769152" y="417.682884" style="fill: #087e8b; stroke: #087e8b"/>
2003
+ <use xlink:href="#m97b82aa8ea" x="186.993197" y="326.374022" style="fill: #087e8b; stroke: #087e8b"/>
2004
+ <use xlink:href="#m97b82aa8ea" x="402.110142" y="336.729975" style="fill: #087e8b; stroke: #087e8b"/>
2005
2005
  </g>
2006
2006
  </g>
2007
2007
  <g id="patch_13">
@@ -2011,7 +2011,7 @@ L 428.99976 468.707885
2011
2011
  </g>
2012
2012
  <g id="text_30">
2013
2013
  <!-- 25.3k -->
2014
- <g style="fill: #8a96a3" transform="translate(105.741027 407.328778) scale(0.1 -0.1)">
2014
+ <g style="fill: #8a96a3" transform="translate(105.741027 398.433984) scale(0.1 -0.1)">
2015
2015
  <use xlink:href="#DejaVuSans-32"/>
2016
2016
  <use xlink:href="#DejaVuSans-35" transform="translate(63.623047 0)"/>
2017
2017
  <use xlink:href="#DejaVuSans-2e" transform="translate(127.246094 0)"/>
@@ -2021,7 +2021,7 @@ L 428.99976 468.707885
2021
2021
  </g>
2022
2022
  <g id="text_31">
2023
2023
  <!-- 62.7k -->
2024
- <g style="fill: #8a96a3" transform="translate(172.965072 357.721789) scale(0.1 -0.1)">
2024
+ <g style="fill: #8a96a3" transform="translate(172.965072 307.64811) scale(0.1 -0.1)">
2025
2025
  <use xlink:href="#DejaVuSans-36"/>
2026
2026
  <use xlink:href="#DejaVuSans-32" transform="translate(63.623047 0)"/>
2027
2027
  <use xlink:href="#DejaVuSans-2e" transform="translate(127.246094 0)"/>
@@ -2031,7 +2031,7 @@ L 428.99976 468.707885
2031
2031
  </g>
2032
2032
  <g id="text_32">
2033
2033
  <!-- 30.7k -->
2034
- <g style="fill: #8a96a3" transform="translate(388.082017 424.096832) scale(0.1 -0.1)">
2034
+ <g style="fill: #8a96a3" transform="translate(388.082017 413.294678) scale(0.1 -0.1)">
2035
2035
  <use xlink:href="#DejaVuSans-33"/>
2036
2036
  <use xlink:href="#DejaVuSans-30" transform="translate(63.623047 0)"/>
2037
2037
  <use xlink:href="#DejaVuSans-2e" transform="translate(127.246094 0)"/>
@@ -2040,30 +2040,30 @@ L 428.99976 468.707885
2040
2040
  </g>
2041
2041
  </g>
2042
2042
  <g id="text_33">
2043
- <!-- 23.5k -->
2044
- <g style="fill: #087e8b" transform="translate(105.741027 438.950165) scale(0.1 -0.1)">
2043
+ <!-- 21.0k -->
2044
+ <g style="fill: #087e8b" transform="translate(105.741027 436.682884) scale(0.1 -0.1)">
2045
2045
  <use xlink:href="#DejaVuSans-32"/>
2046
- <use xlink:href="#DejaVuSans-33" transform="translate(63.623047 0)"/>
2046
+ <use xlink:href="#DejaVuSans-31" transform="translate(63.623047 0)"/>
2047
2047
  <use xlink:href="#DejaVuSans-2e" transform="translate(127.246094 0)"/>
2048
- <use xlink:href="#DejaVuSans-35" transform="translate(159.033203 0)"/>
2048
+ <use xlink:href="#DejaVuSans-30" transform="translate(159.033203 0)"/>
2049
2049
  <use xlink:href="#DejaVuSans-6b" transform="translate(222.65625 0)"/>
2050
2050
  </g>
2051
2051
  </g>
2052
2052
  <g id="text_34">
2053
- <!-- 73.4k -->
2054
- <g style="fill: #087e8b" transform="translate(172.965072 307.64811) scale(0.1 -0.1)">
2055
- <use xlink:href="#DejaVuSans-37"/>
2056
- <use xlink:href="#DejaVuSans-33" transform="translate(63.623047 0)"/>
2053
+ <!-- 58.7k -->
2054
+ <g style="fill: #087e8b" transform="translate(172.965072 345.374022) scale(0.1 -0.1)">
2055
+ <use xlink:href="#DejaVuSans-35"/>
2056
+ <use xlink:href="#DejaVuSans-38" transform="translate(63.623047 0)"/>
2057
2057
  <use xlink:href="#DejaVuSans-2e" transform="translate(127.246094 0)"/>
2058
- <use xlink:href="#DejaVuSans-34" transform="translate(159.033203 0)"/>
2058
+ <use xlink:href="#DejaVuSans-37" transform="translate(159.033203 0)"/>
2059
2059
  <use xlink:href="#DejaVuSans-6b" transform="translate(222.65625 0)"/>
2060
2060
  </g>
2061
2061
  </g>
2062
2062
  <g id="text_35">
2063
- <!-- 65.4k -->
2064
- <g style="fill: #087e8b" transform="translate(388.082017 324.23817) scale(0.1 -0.1)">
2065
- <use xlink:href="#DejaVuSans-36"/>
2066
- <use xlink:href="#DejaVuSans-35" transform="translate(63.623047 0)"/>
2063
+ <!-- 54.4k -->
2064
+ <g style="fill: #087e8b" transform="translate(388.082017 327.729975) scale(0.1 -0.1)">
2065
+ <use xlink:href="#DejaVuSans-35"/>
2066
+ <use xlink:href="#DejaVuSans-34" transform="translate(63.623047 0)"/>
2067
2067
  <use xlink:href="#DejaVuSans-2e" transform="translate(127.246094 0)"/>
2068
2068
  <use xlink:href="#DejaVuSans-34" transform="translate(159.033203 0)"/>
2069
2069
  <use xlink:href="#DejaVuSans-6b" transform="translate(222.65625 0)"/>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 460 1282" role="img" aria-labelledby="title description"><title id="title">Eight August and C benchmark programs</title><desc id="description">Median milliseconds including process startup. Each panel has its own scale. Lower is better. Exact results and source links are in the adjacent table.</desc><rect width="460" height="1282" fill="#fff"/><g font-family="system-ui, sans-serif" fill="#17212e"><g transform="translate(20 15)"><text y="18" font-size="17" font-weight="600">Floating-point loop</text><text y="59" font-size="16">August</text><rect x="65" y="42" width="226.09" height="24" rx="3" fill="#1373cc"/><text x="299.09" y="59" font-size="16">2.29 ms</text><text y="97" font-size="16">C</text><rect x="65" y="80" width="166.73" height="24" rx="3" fill="#788594"/><text x="239.73" y="97" font-size="16">1.69 ms</text></g><g transform="translate(20 173)"><text y="18" font-size="17" font-weight="600">Labeled function calls</text><text y="59" font-size="16">August</text><rect x="65" y="42" width="226.09" height="24" rx="3" fill="#1373cc"/><text x="299.09" y="59" font-size="16">2.34 ms</text><text y="97" font-size="16">C</text><rect x="65" y="80" width="170.53" height="24" rx="3" fill="#788594"/><text x="243.53" y="97" font-size="16">1.77 ms</text></g><g transform="translate(20 331)"><text y="18" font-size="17" font-weight="600">List traversal</text><text y="59" font-size="16">August</text><rect x="65" y="42" width="226.09" height="24" rx="3" fill="#1373cc"/><text x="299.09" y="59" font-size="16">1.99 ms</text><text y="97" font-size="16">C</text><rect x="65" y="80" width="136.08" height="24" rx="3" fill="#788594"/><text x="209.08" y="97" font-size="16">1.20 ms</text></g><g transform="translate(20 489)"><text y="18" font-size="17" font-weight="600">String processing</text><text y="59" font-size="16">August</text><rect x="65" y="42" width="226.09" height="24" rx="3" fill="#1373cc"/><text x="299.09" y="59" font-size="16">9.30 ms</text><text y="97" font-size="16">C</text><rect x="65" y="80" width="65.00" height="24" rx="3" fill="#788594"/><text x="138.00" y="97" font-size="16">2.67 ms</text></g><g transform="translate(20 647)"><text y="18" font-size="17" font-weight="600">Map deletion and refill</text><text y="59" font-size="16">August</text><rect x="65" y="42" width="226.09" height="24" rx="3" fill="#1373cc"/><text x="299.09" y="59" font-size="16">4.78 ms</text><text y="97" font-size="16">C</text><rect x="65" y="80" width="197.81" height="24" rx="3" fill="#788594"/><text x="270.81" y="97" font-size="16">4.18 ms</text></g><g transform="translate(20 805)"><text y="18" font-size="17" font-weight="600">Checked failures</text><text y="59" font-size="16">August</text><rect x="65" y="42" width="226.09" height="24" rx="3" fill="#1373cc"/><text x="299.09" y="59" font-size="16">1.37 ms</text><text y="97" font-size="16">C</text><rect x="65" y="80" width="187.04" height="24" rx="3" fill="#788594"/><text x="260.04" y="97" font-size="16">1.13 ms</text></g><g transform="translate(20 963)"><text y="18" font-size="17" font-weight="600">Record allocation</text><text y="59" font-size="16">August</text><rect x="65" y="42" width="226.09" height="24" rx="3" fill="#1373cc"/><text x="299.09" y="59" font-size="16">9.40 ms</text><text y="97" font-size="16">C</text><rect x="65" y="80" width="48.48" height="24" rx="3" fill="#788594"/><text x="121.48" y="97" font-size="16">2.01 ms</text></g><g transform="translate(20 1121)"><text y="18" font-size="17" font-weight="600">Task scheduling</text><text y="59" font-size="16">August</text><rect x="65" y="42" width="226.09" height="24" rx="3" fill="#1373cc"/><text x="299.09" y="59" font-size="16">3.89 ms</text><text y="97" font-size="16">C</text><rect x="65" y="80" width="69.07" height="24" rx="3" fill="#788594"/><text x="142.07" y="97" font-size="16">1.19 ms</text></g></g></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 920 650" role="img" aria-labelledby="title description"><title id="title">Eight August and C benchmark programs</title><desc id="description">Median milliseconds including process startup. Each panel has its own scale. Lower is better. Exact results and source links are in the adjacent table.</desc><rect width="920" height="650" fill="#fff"/><g font-family="system-ui, sans-serif" fill="#17212e"><g transform="translate(20 15)"><text y="18" font-size="17" font-weight="600">Floating-point loop</text><text y="59" font-size="14">August</text><rect x="65" y="42" width="226.09" height="24" rx="3" fill="#1373cc"/><text x="299.09" y="59" font-size="14">2.29 ms</text><text y="97" font-size="14">C</text><rect x="65" y="80" width="166.73" height="24" rx="3" fill="#788594"/><text x="239.73" y="97" font-size="14">1.69 ms</text></g><g transform="translate(480 15)"><text y="18" font-size="17" font-weight="600">Labeled function calls</text><text y="59" font-size="14">August</text><rect x="65" y="42" width="226.09" height="24" rx="3" fill="#1373cc"/><text x="299.09" y="59" font-size="14">2.34 ms</text><text y="97" font-size="14">C</text><rect x="65" y="80" width="170.53" height="24" rx="3" fill="#788594"/><text x="243.53" y="97" font-size="14">1.77 ms</text></g><g transform="translate(20 173)"><text y="18" font-size="17" font-weight="600">List traversal</text><text y="59" font-size="14">August</text><rect x="65" y="42" width="226.09" height="24" rx="3" fill="#1373cc"/><text x="299.09" y="59" font-size="14">1.99 ms</text><text y="97" font-size="14">C</text><rect x="65" y="80" width="136.08" height="24" rx="3" fill="#788594"/><text x="209.08" y="97" font-size="14">1.20 ms</text></g><g transform="translate(480 173)"><text y="18" font-size="17" font-weight="600">String processing</text><text y="59" font-size="14">August</text><rect x="65" y="42" width="226.09" height="24" rx="3" fill="#1373cc"/><text x="299.09" y="59" font-size="14">9.30 ms</text><text y="97" font-size="14">C</text><rect x="65" y="80" width="65.00" height="24" rx="3" fill="#788594"/><text x="138.00" y="97" font-size="14">2.67 ms</text></g><g transform="translate(20 331)"><text y="18" font-size="17" font-weight="600">Map deletion and refill</text><text y="59" font-size="14">August</text><rect x="65" y="42" width="226.09" height="24" rx="3" fill="#1373cc"/><text x="299.09" y="59" font-size="14">4.78 ms</text><text y="97" font-size="14">C</text><rect x="65" y="80" width="197.81" height="24" rx="3" fill="#788594"/><text x="270.81" y="97" font-size="14">4.18 ms</text></g><g transform="translate(480 331)"><text y="18" font-size="17" font-weight="600">Checked failures</text><text y="59" font-size="14">August</text><rect x="65" y="42" width="226.09" height="24" rx="3" fill="#1373cc"/><text x="299.09" y="59" font-size="14">1.37 ms</text><text y="97" font-size="14">C</text><rect x="65" y="80" width="187.04" height="24" rx="3" fill="#788594"/><text x="260.04" y="97" font-size="14">1.13 ms</text></g><g transform="translate(20 489)"><text y="18" font-size="17" font-weight="600">Record allocation</text><text y="59" font-size="14">August</text><rect x="65" y="42" width="226.09" height="24" rx="3" fill="#1373cc"/><text x="299.09" y="59" font-size="14">9.40 ms</text><text y="97" font-size="14">C</text><rect x="65" y="80" width="48.48" height="24" rx="3" fill="#788594"/><text x="121.48" y="97" font-size="14">2.01 ms</text></g><g transform="translate(480 489)"><text y="18" font-size="17" font-weight="600">Task scheduling</text><text y="59" font-size="14">August</text><rect x="65" y="42" width="226.09" height="24" rx="3" fill="#1373cc"/><text x="299.09" y="59" font-size="14">3.89 ms</text><text y="97" font-size="14">C</text><rect x="65" y="80" width="69.07" height="24" rx="3" fill="#788594"/><text x="142.07" y="97" font-size="14">1.19 ms</text></g></g></svg>