basedpl 0.1.35__tar.gz → 0.1.37__tar.gz

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 (417) hide show
  1. {basedpl-0.1.35 → basedpl-0.1.37}/.github/workflows/ci.yml +25 -1
  2. {basedpl-0.1.35 → basedpl-0.1.37}/Cargo.lock +7 -7
  3. {basedpl-0.1.35 → basedpl-0.1.37}/Cargo.toml +1 -1
  4. {basedpl-0.1.35 → basedpl-0.1.37}/PKG-INFO +4 -4
  5. {basedpl-0.1.35 → basedpl-0.1.37}/README.md +3 -3
  6. {basedpl-0.1.35/python/basedpl → basedpl-0.1.37/editors/jetbrains/BPL.tmbundle/Syntaxes}/bpl.tmLanguage.json +1 -1
  7. basedpl-0.1.37/editors/jetbrains/BPL.tmbundle/info.plist +8 -0
  8. basedpl-0.1.37/editors/jetbrains/BPL.xml +1047 -0
  9. basedpl-0.1.37/editors/jetbrains/README.md +43 -0
  10. {basedpl-0.1.35 → basedpl-0.1.37}/editors/macos/BasedPL-de.bundle/Contents/Resources/BasedPL-de.keylayout +4 -5
  11. {basedpl-0.1.35 → basedpl-0.1.37}/editors/macos/BasedPL-de.txt +4 -0
  12. {basedpl-0.1.35 → basedpl-0.1.37}/editors/macos/BasedPL-es.bundle/Contents/Resources/BasedPL-es.keylayout +7 -16
  13. {basedpl-0.1.35 → basedpl-0.1.37}/editors/macos/BasedPL-es.txt +7 -0
  14. {basedpl-0.1.35 → basedpl-0.1.37}/editors/macos/BasedPL-fr.bundle/Contents/Resources/BasedPL-fr.keylayout +2 -3
  15. {basedpl-0.1.35 → basedpl-0.1.37}/editors/macos/BasedPL-fr.txt +2 -0
  16. {basedpl-0.1.35 → basedpl-0.1.37}/editors/macos/BasedPL-uk.bundle/Contents/Resources/BasedPL-uk.keylayout +9 -10
  17. {basedpl-0.1.35 → basedpl-0.1.37}/editors/macos/BasedPL-uk.txt +9 -0
  18. {basedpl-0.1.35 → basedpl-0.1.37}/editors/macos/BasedPL-us.bundle/Contents/Resources/BasedPL-us.keylayout +10 -11
  19. {basedpl-0.1.35 → basedpl-0.1.37}/editors/macos/BasedPL-us.txt +10 -0
  20. {basedpl-0.1.35 → basedpl-0.1.37}/editors/vim/syntax/bpl.vim +1 -1
  21. basedpl-0.1.37/editors/windows/BasedPL-us.klc +0 -0
  22. basedpl-0.1.37/editors/windows/README.md +33 -0
  23. basedpl-0.1.37/editors/windows/build.ps1 +18 -0
  24. basedpl-0.1.37/editors/windows/install.ps1 +25 -0
  25. {basedpl-0.1.35 → basedpl-0.1.37}/lib/array.bpl +3 -3
  26. {basedpl-0.1.35 → basedpl-0.1.37}/lib/dyalog.bpl +38 -38
  27. {basedpl-0.1.35 → basedpl-0.1.37}/lib/graph.bpl +10 -10
  28. {basedpl-0.1.35 → basedpl-0.1.37}/lib/numeric.bpl +10 -10
  29. {basedpl-0.1.35 → basedpl-0.1.37}/lib/string.bpl +4 -4
  30. {basedpl-0.1.35 → basedpl-0.1.37}/lib/tree.bpl +8 -8
  31. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/bpl.xml +1 -1
  32. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/comparison.qmd +7 -7
  33. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/evaluation.qmd +9 -9
  34. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/gallery/boids.bpl +1 -1
  35. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/gallery/dragon.bpl +1 -1
  36. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/gallery/mandelbrot.bpl +1 -1
  37. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/getting-started.ipynb +3 -3
  38. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/assign.qmd +1 -1
  39. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/axis.qmd +6 -0
  40. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/each.qmd +1 -1
  41. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/find.qmd +1 -1
  42. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/hash.qmd +2 -2
  43. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/over.qmd +1 -1
  44. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/power.qmd +7 -7
  45. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/rank.qmd +6 -0
  46. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/slash.qmd +2 -2
  47. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/squad.qmd +1 -1
  48. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/stencil.qmd +6 -0
  49. basedpl-0.1.37/nbs/glyphs/under.qmd +91 -0
  50. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs.qmd +6 -7
  51. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/index.ipynb +3 -3
  52. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/keyboard.qmd +3 -3
  53. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/keyed.ipynb +1 -1
  54. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/llms.txt +7 -7
  55. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/numbers.qmd +1 -1
  56. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/overview.ipynb +1 -1
  57. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/principles.ipynb +5 -5
  58. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/processes.qmd +3 -3
  59. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/python.ipynb +3 -3
  60. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/regex.ipynb +1 -1
  61. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/repl.qmd +3 -3
  62. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/scripts.ipynb +2 -2
  63. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/styles.css +2 -0
  64. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/syntax.qmd +4 -4
  65. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/date.qmd +1 -1
  66. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/path.qmd +1 -1
  67. basedpl-0.1.37/nbs/terms.qmd +56 -0
  68. basedpl-0.1.37/python/basedpl/bpl.tmLanguage.json +108 -0
  69. {basedpl-0.1.35 → basedpl-0.1.37}/python/basedpl/editors.py +19 -4
  70. {basedpl-0.1.35 → basedpl-0.1.37}/python/basedpl/input.js +1 -1
  71. {basedpl-0.1.35 → basedpl-0.1.37}/python/basedpl/keyboards.py +10 -7
  72. {basedpl-0.1.35 → basedpl-0.1.37}/python/basedpl/layout.json +12 -1
  73. {basedpl-0.1.35 → basedpl-0.1.37}/python/basedpl/printing.py +1 -1
  74. basedpl-0.1.37/python/basedpl/windows_keyboard.py +50 -0
  75. {basedpl-0.1.35 → basedpl-0.1.37}/src/eval/assign.rs +2 -2
  76. {basedpl-0.1.35 → basedpl-0.1.37}/src/eval/binder.rs +2 -2
  77. {basedpl-0.1.35 → basedpl-0.1.37}/src/eval/operators.rs +59 -37
  78. {basedpl-0.1.35 → basedpl-0.1.37}/src/eval.rs +36 -19
  79. {basedpl-0.1.35 → basedpl-0.1.37}/src/primitive/indexing.rs +11 -17
  80. {basedpl-0.1.35 → basedpl-0.1.37}/src/primitive/search.rs +0 -27
  81. {basedpl-0.1.35 → basedpl-0.1.37}/src/primitive.rs +7 -10
  82. {basedpl-0.1.35 → basedpl-0.1.37}/src/protocol.rs +5 -7
  83. {basedpl-0.1.35 → basedpl-0.1.37}/tests/core.rs +2 -2
  84. {basedpl-0.1.35 → basedpl-0.1.37}/tests/highlighting.mjs +1 -1
  85. {basedpl-0.1.35 → basedpl-0.1.37}/tests/reference/aplcart.bpl +43 -43
  86. {basedpl-0.1.35 → basedpl-0.1.37}/tests/reference/april.bpl +6 -6
  87. {basedpl-0.1.35 → basedpl-0.1.37}/tests/reference/bqn.bpl +30 -30
  88. {basedpl-0.1.35 → basedpl-0.1.37}/tests/reference/core.bpl +12 -16
  89. {basedpl-0.1.35 → basedpl-0.1.37}/tests/test_api.py +2 -2
  90. {basedpl-0.1.35 → basedpl-0.1.37}/tests/test_keylayout.py +4 -0
  91. basedpl-0.1.37/tests/test_windows_keyboard.py +23 -0
  92. basedpl-0.1.35/nbs/glyphs/at.qmd +0 -36
  93. basedpl-0.1.35/nbs/glyphs/under.qmd +0 -51
  94. basedpl-0.1.35/nbs/terms.qmd +0 -32
  95. {basedpl-0.1.35 → basedpl-0.1.37}/.cargo/config.toml +0 -0
  96. {basedpl-0.1.35 → basedpl-0.1.37}/.gitattributes +0 -0
  97. {basedpl-0.1.35 → basedpl-0.1.37}/.github/workflows/docs.yml +0 -0
  98. {basedpl-0.1.35 → basedpl-0.1.37}/.gitignore +0 -0
  99. {basedpl-0.1.35 → basedpl-0.1.37}/CONTRIBUTING.md +0 -0
  100. {basedpl-0.1.35 → basedpl-0.1.37}/LICENSE +0 -0
  101. {basedpl-0.1.35 → basedpl-0.1.37}/_config.yml +0 -0
  102. {basedpl-0.1.35 → basedpl-0.1.37}/_layouts/default.html +0 -0
  103. {basedpl-0.1.35 → basedpl-0.1.37}/build.rs +0 -0
  104. {basedpl-0.1.35 → basedpl-0.1.37}/editors/macos/BasedPL-de.bundle/Contents/Info.plist +0 -0
  105. {basedpl-0.1.35 → basedpl-0.1.37}/editors/macos/BasedPL-de.bundle/Contents/Resources/BasedPL-de.icns +0 -0
  106. {basedpl-0.1.35 → basedpl-0.1.37}/editors/macos/BasedPL-de.bundle/Contents/Resources/en.lproj/InfoPlist.strings +0 -0
  107. {basedpl-0.1.35 → basedpl-0.1.37}/editors/macos/BasedPL-de.bundle/Contents/version.plist +0 -0
  108. {basedpl-0.1.35 → basedpl-0.1.37}/editors/macos/BasedPL-es.bundle/Contents/Info.plist +0 -0
  109. {basedpl-0.1.35 → basedpl-0.1.37}/editors/macos/BasedPL-es.bundle/Contents/Resources/BasedPL-es.icns +0 -0
  110. {basedpl-0.1.35 → basedpl-0.1.37}/editors/macos/BasedPL-es.bundle/Contents/Resources/en.lproj/InfoPlist.strings +0 -0
  111. {basedpl-0.1.35 → basedpl-0.1.37}/editors/macos/BasedPL-es.bundle/Contents/version.plist +0 -0
  112. {basedpl-0.1.35 → basedpl-0.1.37}/editors/macos/BasedPL-fr.bundle/Contents/Info.plist +0 -0
  113. {basedpl-0.1.35 → basedpl-0.1.37}/editors/macos/BasedPL-fr.bundle/Contents/Resources/BasedPL-fr.icns +0 -0
  114. {basedpl-0.1.35 → basedpl-0.1.37}/editors/macos/BasedPL-fr.bundle/Contents/Resources/en.lproj/InfoPlist.strings +0 -0
  115. {basedpl-0.1.35 → basedpl-0.1.37}/editors/macos/BasedPL-fr.bundle/Contents/version.plist +0 -0
  116. {basedpl-0.1.35 → basedpl-0.1.37}/editors/macos/BasedPL-uk.bundle/Contents/Info.plist +0 -0
  117. {basedpl-0.1.35 → basedpl-0.1.37}/editors/macos/BasedPL-uk.bundle/Contents/Resources/BasedPL-uk.icns +0 -0
  118. {basedpl-0.1.35 → basedpl-0.1.37}/editors/macos/BasedPL-uk.bundle/Contents/Resources/en.lproj/InfoPlist.strings +0 -0
  119. {basedpl-0.1.35 → basedpl-0.1.37}/editors/macos/BasedPL-uk.bundle/Contents/version.plist +0 -0
  120. {basedpl-0.1.35 → basedpl-0.1.37}/editors/macos/BasedPL-us.bundle/Contents/Info.plist +0 -0
  121. {basedpl-0.1.35 → basedpl-0.1.37}/editors/macos/BasedPL-us.bundle/Contents/Resources/BasedPL-us.icns +0 -0
  122. {basedpl-0.1.35 → basedpl-0.1.37}/editors/macos/BasedPL-us.bundle/Contents/Resources/en.lproj/InfoPlist.strings +0 -0
  123. {basedpl-0.1.35 → basedpl-0.1.37}/editors/macos/BasedPL-us.bundle/Contents/version.plist +0 -0
  124. {basedpl-0.1.35 → basedpl-0.1.37}/editors/vim/ftdetect/bpl.vim +0 -0
  125. {basedpl-0.1.35 → basedpl-0.1.37}/index_files/figure-commonmark/cell-17-output-1.svg +0 -0
  126. {basedpl-0.1.35 → basedpl-0.1.37}/index_files/figure-commonmark/cell-18-output-1.svg +0 -0
  127. {basedpl-0.1.35 → basedpl-0.1.37}/index_files/figure-html/cell-17-output-1.svg +0 -0
  128. {basedpl-0.1.35 → basedpl-0.1.37}/index_files/figure-html/cell-18-output-1.svg +0 -0
  129. {basedpl-0.1.35 → basedpl-0.1.37}/lib/LICENSE-april +0 -0
  130. {basedpl-0.1.35 → basedpl-0.1.37}/lib/README.md +0 -0
  131. {basedpl-0.1.35 → basedpl-0.1.37}/lib/power.bpl +0 -0
  132. {basedpl-0.1.35 → basedpl-0.1.37}/lib/regex.bpl +0 -0
  133. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/.gitignore +0 -0
  134. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/_quarto.yml +0 -0
  135. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/arrays.ipynb +0 -0
  136. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/assignment.ipynb +0 -0
  137. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/bqn.xml +0 -0
  138. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/bracket-types.ipynb +0 -0
  139. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/cli.qmd +0 -0
  140. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/data.ipynb +0 -0
  141. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/dfns.ipynb +0 -0
  142. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/distributions.ipynb +0 -0
  143. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/driver.js +0 -0
  144. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/dyalog.ipynb +0 -0
  145. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/dyalog.xml +0 -0
  146. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/fonts/LICENSE-SAX2 +0 -0
  147. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/fonts/README.md +0 -0
  148. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/fonts/SAX2B.ttf +0 -0
  149. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/fonts/SAX2B.woff2 +0 -0
  150. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/fonts.css +0 -0
  151. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/gallery/attractor.bpl +0 -0
  152. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/gallery/flow.bpl +0 -0
  153. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/gallery/orbits.bpl +0 -0
  154. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/gallery/phyllotaxis.bpl +0 -0
  155. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/gallery/reaction.bpl +0 -0
  156. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/gallery.qmd +0 -0
  157. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/_metadata.yml +0 -0
  158. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/add.qmd +0 -0
  159. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/after.qmd +0 -0
  160. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/agenda.qmd +0 -0
  161. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/alpha-underbar.qmd +0 -0
  162. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/alpha.qmd +0 -0
  163. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/and.qmd +0 -0
  164. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/atop.qmd +0 -0
  165. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/backslash-bar.qmd +0 -0
  166. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/backslash.qmd +0 -0
  167. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/before.qmd +0 -0
  168. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/braces.qmd +0 -0
  169. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/brackets.qmd +0 -0
  170. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/bullet.qmd +0 -0
  171. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/ceiling.qmd +0 -0
  172. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/circle.qmd +0 -0
  173. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/colon.qmd +0 -0
  174. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/comma.qmd +0 -0
  175. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/comment.qmd +0 -0
  176. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/commute.qmd +0 -0
  177. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/dash.qmd +0 -0
  178. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/decode.qmd +0 -0
  179. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/del-diaeresis.qmd +0 -0
  180. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/del.qmd +0 -0
  181. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/derivative.qmd +0 -0
  182. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/diamond.qmd +0 -0
  183. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/div.qmd +0 -0
  184. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/domino.qmd +0 -0
  185. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/dot.qmd +0 -0
  186. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/drop.qmd +0 -0
  187. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/enclose.qmd +0 -0
  188. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/encode.qmd +0 -0
  189. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/equal.qmd +0 -0
  190. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/error-guard.qmd +0 -0
  191. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/execute.qmd +0 -0
  192. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/factor.qmd +0 -0
  193. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/factorial.qmd +0 -0
  194. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/floor.qmd +0 -0
  195. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/format.qmd +0 -0
  196. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/grade-down.qmd +0 -0
  197. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/grade-up.qmd +0 -0
  198. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/greater-or-equal.qmd +0 -0
  199. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/greater.qmd +0 -0
  200. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/infinity.qmd +0 -0
  201. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/intersection.qmd +0 -0
  202. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/inverse-pair.qmd +0 -0
  203. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/inverted-question.qmd +0 -0
  204. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/iota.qmd +0 -0
  205. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/key.qmd +0 -0
  206. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/left.qmd +0 -0
  207. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/less-or-equal.qmd +0 -0
  208. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/less.qmd +0 -0
  209. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/log.qmd +0 -0
  210. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/match.qmd +0 -0
  211. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/member.qmd +0 -0
  212. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/mix.qmd +0 -0
  213. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/mul.qmd +0 -0
  214. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/nand.qmd +0 -0
  215. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/nest.qmd +0 -0
  216. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/nor.qmd +0 -0
  217. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/not-equal.qmd +0 -0
  218. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/omega-underbar.qmd +0 -0
  219. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/omega.qmd +0 -0
  220. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/or.qmd +0 -0
  221. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/outer-product.qmd +0 -0
  222. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/overbar.qmd +0 -0
  223. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/parentheses.qmd +0 -0
  224. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/pi.qmd +0 -0
  225. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/polynomial.qmd +0 -0
  226. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/prime.qmd +0 -0
  227. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/quad.qmd +0 -0
  228. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/question.qmd +0 -0
  229. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/quote.qmd +0 -0
  230. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/range.qmd +0 -0
  231. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/reverse-first.qmd +0 -0
  232. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/reverse.qmd +0 -0
  233. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/rho.qmd +0 -0
  234. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/right.qmd +0 -0
  235. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/root.qmd +0 -0
  236. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/slash-bar.qmd +0 -0
  237. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/star.qmd +0 -0
  238. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/stile.qmd +0 -0
  239. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/table.qmd +0 -0
  240. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/take.qmd +0 -0
  241. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/tally.qmd +0 -0
  242. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/tilde.qmd +0 -0
  243. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/transpose.qmd +0 -0
  244. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/union.qmd +0 -0
  245. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/valences.qmd +0 -0
  246. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/where.qmd +0 -0
  247. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/windows.qmd +0 -0
  248. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/glyphs/zilde.qmd +0 -0
  249. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/introspection.ipynb +0 -0
  250. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/magics.ipynb +0 -0
  251. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/modules.qmd +0 -0
  252. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/nbdev.yml +0 -0
  253. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/notebooks.ipynb +0 -0
  254. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/papers/aplwiki-arrays.md +0 -0
  255. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/papers/brickman-depth-1-scalars.md +0 -0
  256. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/papers/mercer-based-system.md +0 -0
  257. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/playground/bpl.js +0 -0
  258. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/playground/gallery.js +0 -0
  259. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/playground/monaco-worker.js +0 -0
  260. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/playground/page.js +0 -0
  261. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/playground/worker.js +0 -0
  262. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/playground.qmd +0 -0
  263. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/plot.ipynb +0 -0
  264. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/puppy.jpg +0 -0
  265. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/sidebar.yml +0 -0
  266. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/strings.ipynb +0 -0
  267. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/_metadata.yml +0 -0
  268. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/c.qmd +0 -0
  269. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/canvas.qmd +0 -0
  270. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/constants.qmd +0 -0
  271. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/copy.qmd +0 -0
  272. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/csv.qmd +0 -0
  273. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/decompose.qmd +0 -0
  274. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/deflate.qmd +0 -0
  275. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/delay.qmd +0 -0
  276. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/distribution.qmd +0 -0
  277. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/element.qmd +0 -0
  278. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/ex.qmd +0 -0
  279. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/fetch.qmd +0 -0
  280. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/hash.qmd +0 -0
  281. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/host.qmd +0 -0
  282. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/image.qmd +0 -0
  283. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/js.qmd +0 -0
  284. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/json.qmd +0 -0
  285. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/literal.qmd +0 -0
  286. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/load.qmd +0 -0
  287. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/metadata.qmd +0 -0
  288. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/mime.qmd +0 -0
  289. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/mkdir.qmd +0 -0
  290. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/nc.qmd +0 -0
  291. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/nget.qmd +0 -0
  292. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/nl.qmd +0 -0
  293. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/normalize.qmd +0 -0
  294. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/nput.qmd +0 -0
  295. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/plot.qmd +0 -0
  296. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/prefs.qmd +0 -0
  297. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/r.qmd +0 -0
  298. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/rand.qmd +0 -0
  299. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/readdir.qmd +0 -0
  300. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/remove.qmd +0 -0
  301. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/rename.qmd +0 -0
  302. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/signal.qmd +0 -0
  303. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/src.qmd +0 -0
  304. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/storage.qmd +0 -0
  305. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/svg.qmd +0 -0
  306. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/time.qmd +0 -0
  307. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/ucs.qmd +0 -0
  308. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/uuid.qmd +0 -0
  309. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/vfi.qmd +0 -0
  310. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system/xml.qmd +0 -0
  311. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/system-functions.qmd +0 -0
  312. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/web.ipynb +0 -0
  313. {basedpl-0.1.35 → basedpl-0.1.37}/nbs/xml.ipynb +0 -0
  314. {basedpl-0.1.35 → basedpl-0.1.37}/provenance/README.md +0 -0
  315. {basedpl-0.1.35 → basedpl-0.1.37}/provenance/aplcart.jsonl +0 -0
  316. {basedpl-0.1.35 → basedpl-0.1.37}/provenance/april.jsonl +0 -0
  317. {basedpl-0.1.35 → basedpl-0.1.37}/provenance/bqn.jsonl +0 -0
  318. {basedpl-0.1.35 → basedpl-0.1.37}/provenance/core.jsonl +0 -0
  319. {basedpl-0.1.35 → basedpl-0.1.37}/provenance/dyalog.jsonl +0 -0
  320. {basedpl-0.1.35 → basedpl-0.1.37}/provenance/ngn.jsonl +0 -0
  321. {basedpl-0.1.35 → basedpl-0.1.37}/py/Cargo.toml +0 -0
  322. {basedpl-0.1.35 → basedpl-0.1.37}/py/build.rs +0 -0
  323. {basedpl-0.1.35 → basedpl-0.1.37}/py/src/lib.rs +0 -0
  324. {basedpl-0.1.35 → basedpl-0.1.37}/pyproject.toml +0 -0
  325. {basedpl-0.1.35 → basedpl-0.1.37}/python/basedpl/__init__.py +0 -0
  326. {basedpl-0.1.35 → basedpl-0.1.37}/python/basedpl/_modidx.py +0 -0
  327. {basedpl-0.1.35 → basedpl-0.1.37}/python/basedpl/bpltests.py +0 -0
  328. {basedpl-0.1.35 → basedpl-0.1.37}/python/basedpl/dyalog.py +0 -0
  329. {basedpl-0.1.35 → basedpl-0.1.37}/python/basedpl/font.py +0 -0
  330. {basedpl-0.1.35 → basedpl-0.1.37}/python/basedpl/fonts.css +0 -0
  331. {basedpl-0.1.35 → basedpl-0.1.37}/python/basedpl/functions.py +0 -0
  332. {basedpl-0.1.35 → basedpl-0.1.37}/python/basedpl/ipython.py +0 -0
  333. {basedpl-0.1.35 → basedpl-0.1.37}/python/basedpl/keyboards.json +0 -0
  334. {basedpl-0.1.35 → basedpl-0.1.37}/python/basedpl/lb.js +0 -0
  335. {basedpl-0.1.35 → basedpl-0.1.37}/python/basedpl/notebook_runner.py +0 -0
  336. {basedpl-0.1.35 → basedpl-0.1.37}/python/basedpl/notebooks.py +0 -0
  337. {basedpl-0.1.35 → basedpl-0.1.37}/python/basedpl/reference.py +0 -0
  338. {basedpl-0.1.35 → basedpl-0.1.37}/python/basedpl/syntax.py +0 -0
  339. {basedpl-0.1.35 → basedpl-0.1.37}/python/basedpl/worker.py +0 -0
  340. {basedpl-0.1.35 → basedpl-0.1.37}/rustfmt.toml +0 -0
  341. {basedpl-0.1.35 → basedpl-0.1.37}/scripts/install-macos.sh +0 -0
  342. {basedpl-0.1.35 → basedpl-0.1.37}/scripts/prep.py +0 -0
  343. {basedpl-0.1.35 → basedpl-0.1.37}/src/agreement.rs +0 -0
  344. {basedpl-0.1.35 → basedpl-0.1.37}/src/array/storage.rs +0 -0
  345. {basedpl-0.1.35 → basedpl-0.1.37}/src/array/text.rs +0 -0
  346. {basedpl-0.1.35 → basedpl-0.1.37}/src/array.rs +0 -0
  347. {basedpl-0.1.35 → basedpl-0.1.37}/src/canvas.js +0 -0
  348. {basedpl-0.1.35 → basedpl-0.1.37}/src/canvas.rs +0 -0
  349. {basedpl-0.1.35 → basedpl-0.1.37}/src/csv.rs +0 -0
  350. {basedpl-0.1.35 → basedpl-0.1.37}/src/data.rs +0 -0
  351. {basedpl-0.1.35 → basedpl-0.1.37}/src/date.rs +0 -0
  352. {basedpl-0.1.35 → basedpl-0.1.37}/src/display.rs +0 -0
  353. {basedpl-0.1.35 → basedpl-0.1.37}/src/distribution.rs +0 -0
  354. {basedpl-0.1.35 → basedpl-0.1.37}/src/element.rs +0 -0
  355. {basedpl-0.1.35 → basedpl-0.1.37}/src/error.rs +0 -0
  356. {basedpl-0.1.35 → basedpl-0.1.37}/src/eval/dissect.rs +0 -0
  357. {basedpl-0.1.35 → basedpl-0.1.37}/src/eval/session.rs +0 -0
  358. {basedpl-0.1.35 → basedpl-0.1.37}/src/execution.rs +0 -0
  359. {basedpl-0.1.35 → basedpl-0.1.37}/src/files.rs +0 -0
  360. {basedpl-0.1.35 → basedpl-0.1.37}/src/host.rs +0 -0
  361. {basedpl-0.1.35 → basedpl-0.1.37}/src/host_web.rs +0 -0
  362. {basedpl-0.1.35 → basedpl-0.1.37}/src/image.rs +0 -0
  363. {basedpl-0.1.35 → basedpl-0.1.37}/src/inspection.rs +0 -0
  364. {basedpl-0.1.35 → basedpl-0.1.37}/src/js.rs +0 -0
  365. {basedpl-0.1.35 → basedpl-0.1.37}/src/json.rs +0 -0
  366. {basedpl-0.1.35 → basedpl-0.1.37}/src/keyed.rs +0 -0
  367. {basedpl-0.1.35 → basedpl-0.1.37}/src/lib.rs +0 -0
  368. {basedpl-0.1.35 → basedpl-0.1.37}/src/number.rs +0 -0
  369. {basedpl-0.1.35 → basedpl-0.1.37}/src/number_theory.rs +0 -0
  370. {basedpl-0.1.35 → basedpl-0.1.37}/src/pervasive.rs +0 -0
  371. {basedpl-0.1.35 → basedpl-0.1.37}/src/plot.rs +0 -0
  372. {basedpl-0.1.35 → basedpl-0.1.37}/src/polynomial.rs +0 -0
  373. {basedpl-0.1.35 → basedpl-0.1.37}/src/primitive/numeric.rs +0 -0
  374. {basedpl-0.1.35 → basedpl-0.1.37}/src/primitive/structural.rs +0 -0
  375. {basedpl-0.1.35 → basedpl-0.1.37}/src/reference.rs +0 -0
  376. {basedpl-0.1.35 → basedpl-0.1.37}/src/regex.rs +0 -0
  377. {basedpl-0.1.35 → basedpl-0.1.37}/src/search.rs +0 -0
  378. {basedpl-0.1.35 → basedpl-0.1.37}/src/selection.rs +0 -0
  379. {basedpl-0.1.35 → basedpl-0.1.37}/src/symbols.rs +0 -0
  380. {basedpl-0.1.35 → basedpl-0.1.37}/src/syntax.rs +0 -0
  381. {basedpl-0.1.35 → basedpl-0.1.37}/src/system.rs +0 -0
  382. {basedpl-0.1.35 → basedpl-0.1.37}/src/xml.rs +0 -0
  383. {basedpl-0.1.35 → basedpl-0.1.37}/tests/conftest.py +0 -0
  384. {basedpl-0.1.35 → basedpl-0.1.37}/tests/input.mjs +0 -0
  385. {basedpl-0.1.35 → basedpl-0.1.37}/tests/reference/LICENSE-aplcart +0 -0
  386. {basedpl-0.1.35 → basedpl-0.1.37}/tests/reference/LICENSE-april +0 -0
  387. {basedpl-0.1.35 → basedpl-0.1.37}/tests/reference/LICENSE-bqn +0 -0
  388. {basedpl-0.1.35 → basedpl-0.1.37}/tests/reference/LICENSE-bqncrate +0 -0
  389. {basedpl-0.1.35 → basedpl-0.1.37}/tests/reference/LICENSE-dyalog +0 -0
  390. {basedpl-0.1.35 → basedpl-0.1.37}/tests/reference/LICENSE-ngn +0 -0
  391. {basedpl-0.1.35 → basedpl-0.1.37}/tests/reference/README.md +0 -0
  392. {basedpl-0.1.35 → basedpl-0.1.37}/tests/reference/distributions.bpl +0 -0
  393. {basedpl-0.1.35 → basedpl-0.1.37}/tests/reference/dyalog.bpl +0 -0
  394. {basedpl-0.1.35 → basedpl-0.1.37}/tests/reference/graphics.bpl +0 -0
  395. {basedpl-0.1.35 → basedpl-0.1.37}/tests/reference/lib.bpl +0 -0
  396. {basedpl-0.1.35 → basedpl-0.1.37}/tests/reference/ngn.bpl +0 -0
  397. {basedpl-0.1.35 → basedpl-0.1.37}/tests/reference/regex.bpl +0 -0
  398. {basedpl-0.1.35 → basedpl-0.1.37}/tests/reference/support/april.bpl +0 -0
  399. {basedpl-0.1.35 → basedpl-0.1.37}/tests/reference/support/avl.bpl +0 -0
  400. {basedpl-0.1.35 → basedpl-0.1.37}/tests/reference/support/redblack.bpl +0 -0
  401. {basedpl-0.1.35 → basedpl-0.1.37}/tests/reference/support/sbst.bpl +0 -0
  402. {basedpl-0.1.35 → basedpl-0.1.37}/tests/reference/support/splay.bpl +0 -0
  403. {basedpl-0.1.35 → basedpl-0.1.37}/tests/reference.rs +0 -0
  404. {basedpl-0.1.35 → basedpl-0.1.37}/tests/scaling.rs +0 -0
  405. {basedpl-0.1.35 → basedpl-0.1.37}/tests/speed.rs +0 -0
  406. {basedpl-0.1.35 → basedpl-0.1.37}/tests/test_basic.py +0 -0
  407. {basedpl-0.1.35 → basedpl-0.1.37}/tests/test_bpltests.py +0 -0
  408. {basedpl-0.1.35 → basedpl-0.1.37}/tests/test_glyphs.py +0 -0
  409. {basedpl-0.1.35 → basedpl-0.1.37}/tests/test_graphics.py +0 -0
  410. {basedpl-0.1.35 → basedpl-0.1.37}/tests/test_ipython.py +0 -0
  411. {basedpl-0.1.35 → basedpl-0.1.37}/tests/test_kernel.py +0 -0
  412. {basedpl-0.1.35 → basedpl-0.1.37}/tests/test_notebooks.py +0 -0
  413. {basedpl-0.1.35 → basedpl-0.1.37}/tests/test_reference.py +0 -0
  414. {basedpl-0.1.35 → basedpl-0.1.37}/tests/test_repl.py +0 -0
  415. {basedpl-0.1.35 → basedpl-0.1.37}/tests/test_worker.py +0 -0
  416. {basedpl-0.1.35 → basedpl-0.1.37}/tests/wasm.mjs +0 -0
  417. {basedpl-0.1.35 → basedpl-0.1.37}/wheel/data/share/jupyter/kernels/bpl/kernel.json +0 -0
@@ -79,6 +79,30 @@ jobs:
79
79
  name: bpl-${{ matrix.os }}
80
80
  path: bin
81
81
 
82
+ windows-keyboard:
83
+ if: startsWith(github.ref, 'refs/tags/v')
84
+ runs-on: windows-2025
85
+ steps:
86
+ - uses: actions/checkout@v7
87
+ - name: Extract Microsoft's keyboard compiler
88
+ shell: pwsh
89
+ run: |
90
+ $archive = "$env:RUNNER_TEMP\MSKLC.exe"
91
+ $toolkit = "$env:RUNNER_TEMP\msklc"
92
+ Invoke-WebRequest 'https://download.microsoft.com/download/6/f/5/6f5ce43a-e892-4fd1-b9a6-1a0cbb64e6e2/MSKLC.exe' -OutFile $archive
93
+ if ((Get-FileHash $archive -Algorithm SHA256).Hash -ne 'CD12A6B08066133DC4AD71BDCACCF1492E3D9A1DE93CF84B7B2824309F0D7255') { throw 'MSKLC download checksum changed.' }
94
+ 7z x $archive "-o$toolkit" -y
95
+ if ($LASTEXITCODE -ne 0) { throw 'MSKLC archive extraction failed.' }
96
+ $msi = Get-ChildItem $toolkit -Filter MSKLC.msi -Recurse | Select-Object -First 1
97
+ $result = Start-Process msiexec.exe -ArgumentList "/a `"$($msi.FullName)`" /qn TARGETDIR=`"$toolkit\image`"" -Wait -PassThru
98
+ if ($result.ExitCode -ne 0) { throw "MSKLC administrative extraction failed: $($result.ExitCode)" }
99
+ $compiler = Get-ChildItem "$toolkit\image" -Filter kbdutool.exe -Recurse | Where-Object { $_.Directory.Name -eq 'i386' } | Select-Object -First 1
100
+ ./editors/windows/build.ps1 -Compiler $compiler.FullName
101
+ - uses: actions/upload-artifact@v7
102
+ with:
103
+ name: bpl-keyboard-windows-x64
104
+ path: dist/basedpl-keyboard-us-windows-x64.zip
105
+
82
106
  sdist:
83
107
  if: startsWith(github.ref, 'refs/tags/v')
84
108
  runs-on: ubuntu-latest
@@ -95,7 +119,7 @@ jobs:
95
119
 
96
120
  publish:
97
121
  if: startsWith(github.ref, 'refs/tags/v')
98
- needs: [test, build, sdist]
122
+ needs: [test, build, sdist, windows-keyboard]
99
123
  runs-on: ubuntu-latest
100
124
  permissions:
101
125
  id-token: write
@@ -90,7 +90,7 @@ checksum = "ac07cdecf99051d9a5238b80f35af32cdeba5b336e55d957b318b50137e18da5"
90
90
 
91
91
  [[package]]
92
92
  name = "basedpl"
93
- version = "0.1.35"
93
+ version = "0.1.37"
94
94
  dependencies = [
95
95
  "base64 0.23.1",
96
96
  "bytemuck",
@@ -136,7 +136,7 @@ dependencies = [
136
136
 
137
137
  [[package]]
138
138
  name = "basedpl-cli"
139
- version = "0.1.35"
139
+ version = "0.1.37"
140
140
  dependencies = [
141
141
  "async-trait",
142
142
  "basedpl",
@@ -149,7 +149,7 @@ dependencies = [
149
149
 
150
150
  [[package]]
151
151
  name = "basedpl-py"
152
- version = "0.1.35"
152
+ version = "0.1.37"
153
153
  dependencies = [
154
154
  "basedpl",
155
155
  "bytemuck",
@@ -163,7 +163,7 @@ dependencies = [
163
163
 
164
164
  [[package]]
165
165
  name = "basedpl-wasm"
166
- version = "0.1.35"
166
+ version = "0.1.37"
167
167
  dependencies = [
168
168
  "basedpl",
169
169
  "js-sys",
@@ -2298,9 +2298,9 @@ checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821"
2298
2298
 
2299
2299
  [[package]]
2300
2300
  name = "uuid"
2301
- version = "1.27.0"
2301
+ version = "1.28.0"
2302
2302
  source = "registry+https://github.com/rust-lang/crates.io-index"
2303
- checksum = "97277d36b9c3ace13e58fa6e753f8b0bbbf302a18dd193240d70f9e29681059a"
2303
+ checksum = "7cc1186384beb7dd8eedea376413fd654937285ea6c9cfbb928dc3043ea4b606"
2304
2304
  dependencies = [
2305
2305
  "atomic",
2306
2306
  "getrandom",
@@ -2574,7 +2574,7 @@ checksum = "3ad82d2a33cdc9674dc7465672f271e096168fcdbe0f799d9e6db8c5892679dc"
2574
2574
 
2575
2575
  [[package]]
2576
2576
  name = "xtask"
2577
- version = "0.1.35"
2577
+ version = "0.1.37"
2578
2578
  dependencies = [
2579
2579
  "anyhow",
2580
2580
  "serde_json",
@@ -2,7 +2,7 @@
2
2
  members = ["py"]
3
3
 
4
4
  [workspace.package]
5
- version = "0.1.35"
5
+ version = "0.1.37"
6
6
  edition = "2021"
7
7
  rust-version = "1.98"
8
8
  license = "Apache-2.0"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: basedpl
3
- Version: 0.1.35
3
+ Version: 0.1.37
4
4
  Classifier: Programming Language :: Rust
5
5
  Classifier: Programming Language :: Python :: Implementation :: CPython
6
6
  Requires-Dist: fastcore
@@ -72,7 +72,7 @@ In Jupyter, select the installed **BasedPL** kernel. Cells share definitions and
72
72
 
73
73
  APL is a language built around operations on whole arrays and notation for combining functions. Here is a taste of that style in BPL.
74
74
 
75
- Numbers separated by spaces form a vector. Arithmetic applies to every element:
75
+ Numbers separated by spaces form a vector. Arithmetic applies to every item:
76
76
 
77
77
  ``` bpl
78
78
  10+1 2 3
@@ -180,10 +180,10 @@ A vector of counts keeps the history: one state for each count, where count 0 is
180
180
 
181
181
  1 2 4 8 16
182
182
 
183
- Under (`⌾`) transforms the argument, applies a function, then reverses the transformation. Scale by ten, floor, and scale back to round down to tenths:
183
+ Under (`@`) transforms the argument, applies a function, then reverses the transformation. Scale by ten, floor, and scale back to round down to tenths:
184
184
 
185
185
  ``` bpl
186
- ⌊⌾ 10× 1.25 2.78
186
+ ⌊@ 10× 1.25 2.78
187
187
  ```
188
188
 
189
189
  1.2 2.7
@@ -44,7 +44,7 @@ In Jupyter, select the installed **BasedPL** kernel. Cells share definitions and
44
44
 
45
45
  APL is a language built around operations on whole arrays and notation for combining functions. Here is a taste of that style in BPL.
46
46
 
47
- Numbers separated by spaces form a vector. Arithmetic applies to every element:
47
+ Numbers separated by spaces form a vector. Arithmetic applies to every item:
48
48
 
49
49
  ``` bpl
50
50
  10+1 2 3
@@ -152,10 +152,10 @@ A vector of counts keeps the history: one state for each count, where count 0 is
152
152
 
153
153
  1 2 4 8 16
154
154
 
155
- Under (`⌾`) transforms the argument, applies a function, then reverses the transformation. Scale by ten, floor, and scale back to round down to tenths:
155
+ Under (`@`) transforms the argument, applies a function, then reverses the transformation. Scale by ten, floor, and scale back to round down to tenths:
156
156
 
157
157
  ``` bpl
158
- ⌊⌾ 10× 1.25 2.78
158
+ ⌊@ 10× 1.25 2.78
159
159
  ```
160
160
 
161
161
  1.2 2.7
@@ -93,7 +93,7 @@
93
93
  "name": "keyword.operator.monadic.bpl"
94
94
  },
95
95
  {
96
- "match": "[↣⍤∘⍠⍥↢\\.⍣⇄⊘⌾⍚@⌺]",
96
+ "match": "[↣⍤∘⍠⍥↢\\.⍣⇄⊘@⍚⌺]",
97
97
  "name": "keyword.operator.dyadic.bpl"
98
98
  },
99
99
  {
@@ -0,0 +1,8 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3
+ <plist version="1.0">
4
+ <dict>
5
+ <key>name</key>
6
+ <string>BPL</string>
7
+ </dict>
8
+ </plist>