5 ms·
Ask HN: Do I need a special keyboard layout to learn array programming?
Array programming paradigm fascinates me. As much as I want to learn it, whenever I search any info about it, I find APL tutorials. Now well APL uses so many special symbols that it needs a keyboard layout with those symbols.
Is there another way? Do I really need to setup a keyboard layout to learn array programming?
Are there other APL-like languages that are easier to program with normal keyboards?
- t-3 3y agoNo.
- Jtsummers 3y agoYou can program in APL without a special keyboard. Most editors offer a prefix key (commonly `, but I switch it to . since that's easier to type) so you can type .i and get ι as a result. It's an extra character, but once you get accustomed to it the typing is pretty fast and avoids changing keyboard layouts or key chord. In fairness, I already type at about 120 wpm so adding an extra character per special character in an already terse language doesn't significantly impact my typing speed.
- sargstuff 3y agoTake advantage of conciseness of apl programs. Modify [0][1][2][3][4] for alternate keyboard needs. aka assemble appropriate qr symbol corresponding to apl symbol from voice command(s). Chain a few together, snap shot with camera for instant program upload. Paste apl symbol/qr code in around room. Use [5] to orient self to select symbol to enter. Substituting smart glasses for monitor highly recommended. -------- [0] : https://hackaday.com/2023/10/26/tims-draw-bot-gets-around-with-a-pen/ https://hackaday.com/2023/10/26/tims-draw-bot-gets-around-wi... [1] : https://hackaday.com/2023/10/26/a-tiny-board-for-driving-leds-in-whatever/ https://hackaday.com/2023/10/26/a-tiny-board-for-driving-led... [2] : https://hackaday.com/2023/10/26/a-paper-printer-for-qr-code-menus/ https://hackaday.com/2023/10/26/a-paper-printer-for-qr-code-... [3] : spin up appropirate apl symbol, less noise than apl hayes modem commands : https://www.instructables.com/Spinner-Jog-Wheel-Inside-of-a-VCR-Head/ https://www.instructables.com/Spinner-Jog-Wheel-Inside-of-a-... [4] : shoe fits department : https://hackaday.com/2023/10/25/keebin-with-kristina-the-one-with-the-foot-keyboard/ https://hackaday.com/2023/10/25/keebin-with-kristina-the-one... [5] : https://www.youtube.com/watch?v=6C2xUxm7c_M https://www.youtube.com/watch?v=6C2xUxm7c_M
- sargstuff 3y agoEmacs isn't APL, but can be setup for apl programming with normal keyboards.
- sargstuff 3y agoTraditional physical keyboard options: * Spend $$ for apl specific keyboard [0] * Standard keyboard modifications: use macros/insert unicode chacters via keyboard[1]; stickers[2], change keycaps. --- " ... another way?" : Most things in life can be approached in different ways (doesn't mean it's practical / realistic for given situation). "setting up keyobard layout": No, but do need to pick a specific method/approach to use. Some examples: a) Cursorless[3] uses spoken language to edit code. b) Using and IDE/editor that does apl auto complete [4] c) Pick from on-screen keyboard doesn't require a physical keyboard setup. Knowing the layout of the virutal screen keyboard may help to quickly find/narrow down the key(s) for selection (eyeball, mouse) --------- Above results found with basic web search. --------- [0] : https://www.dyalog.com/apl-font-keyboard.htm https://www.dyalog.com/apl-font-keyboard.htm [1] :a) https://dangerruss-things.blogspot.com/2021/03/getting-started-with-apl-keyboard.html https://dangerruss-things.blogspot.com/2021/03/getting-start... :b) https://aplwiki.com/wiki/Typing_glyphs :c) http://xahlee.info/kbd/creating_apl_keyboard_layout.html :d) https://github.com/abrudz/Kbd [2] : https://deskthority.net/viewtopic.php?t=8944 https://deskthority.net/viewtopic.php?t=8944 [3] : cursorless (audio editor) : https://www.youtube.com/watch?v=NcUJnmBqHTY https://www.youtube.com/watch?v=NcUJnmBqHTY [4] : https://apl.ninja/xeladotbe/blog/intelli-sense-apl-resources-afqt https://apl.ninja/xeladotbe/blog/intelli-sense-apl-resources... ***
- Tomte 3y agoJ is ASCII-only: https://www.jsoftware.com/#/ https://www.jsoftware.com/#/
- brudgers 3y agoYes, J. Start with the Primer. It is here: https://www.jsoftware.com/help/primer/contents.htm https://www.jsoftware.com/help/primer/contents.htm
- tacostakohashi 3y agohttps://code.kx.com/q/learn/ https://code.kx.com/q/learn/