[HN Gopher] APL386 Unicode - An APL Font ___________________________________________________________________ APL386 Unicode - An APL Font Author : chrispsn Score : 84 points Date : 2020-08-18 07:11 UTC (15 hours ago) (HTM) web link (abrudz.github.io) (TXT) w3m dump (abrudz.github.io) | cogburnd02 wrote: | I intend to obtain an IBM 2741 terminal and APL typeball before I | start learning how to write APL--Anyone got any leads, other than | ebay? | jrochkind1 wrote: | Is "with a fun, whimsical look, inspired by Comic Sans Serif" | something someone wanted? | snicker7 wrote: | Absolutely. See Fantasque for example. | ColanR wrote: | The original APL385 font is one of my favorites for coding. | jrochkind1 wrote: | Is it also a fun, whimsical look inspired by Comic Sans? | ColanR wrote: | It definitely looks like it could be. | musicale wrote: | It reminds me of some old-school typewriter and printer fonts, | and indeed it's a lot like Consolas. | | I like it, though some of the spacing is odd (might be able to | fix it even if it is a monospaced font.) | fwip wrote: | When I'm in the right mood, I use Comic Code[1] for my | terminal, along with a different palette than my normal | "working" environment. Even if it's just placebo, it helps me | shake up my thinking a bit. | | [1] https://www.myfonts.com/fonts/tabular-type-foundry/comic- | cod... | gnulinux wrote: | I sorta dig it, looks fun and artistic. I don't know what's | wrong with "W" though. Not sure if my browser is rendering is | bad or there is a bug, because it doesn't look like rest of the | ligatures, it looks nothing like "M". | | EDIT: In case people are wondering this is what I see: | https://imgur.com/a/P3npCYW | | As you see W looks "bolder" (?) than others. | [deleted] | beervirus wrote: | Would look right at home on a 1990 Mac. | xashor wrote: | Still hoping for someone to design a font for J with ligatures so | it can match APL's beauty for reading without making it more | difficult to type, i.e. automatically rendering /: as [?], |: as | [?], |. as [?], etc. | specialist wrote: | Agree this is a good idea. | | To clarify: it'd be cool if language's supported multiple | lexemes (?) for a single token. So -> and - (U-2192) are | equivalent. | moonchild wrote: | Ligatures are an abomination. But a unicode j that uses those | symbols natively would be cool; it's not the 90s anymore. | zerocrates wrote: | Keyboards are awfully similar to how they were in the 90s, is | I think the salient point. Representing the symbols in the | source isn't now an issue really, but typing them still would | be. | kps wrote: | I don't know J, but an APL keyboard layout is not a problem | for any major current OS, nor is a layout with ISO Layer 3 | (Mac Option, Windows AltGraph) mnemonically allocated to | useful symbols. | snicker7 wrote: | I think it comes down to accessibility. Requiring users | to memorize a second keyboard layout is very demanding. | WorldMaker wrote: | Though modern "emoji pickers" have extended the range of | IME and soft keyboard tools that regular users use (often | daily). I've been joking that the next APL is probably | made from emoji, but it's not entirely a joke: the | Windows emoji keyboard (Win+. or Win+;) has a pretty full | Unicode math symbol section (click the Omega top-level | tab and then flip through the bottom level tabs), and | while it is missing some of the nice search features of | the more colorful emoji, gives relatively quick access to | a lot of options. | moonchild wrote: | Is it more demanding than asking them to memorize a | collection of (mostly arbitrary) ascii symbols and | digraphs? If you learn apl, you have to remember that | grade up is [?] (s-S-4); if you learn j, you have to | remember that grade up is /:. The primary barrier to | entry is remembering what operations you can do and how | you can do them, not how to type them. | moonchild wrote: | Typing symbols is not really an issue. First off, you can | configure your text editing environment to automatically | replace digraphs with their associated symbols (e.g. when | you type i. replace it with [?] automatically). But second | of all, memorizing an alternate keyboard layout isn't that | big of a deal. Is it really harder to remember that grade | up is super+shift+4 ([?]) than that it's slash+shift+; | (/:)? | | I would argue that difficulty in _reading_ code and knowing | what symbols represent what operations is a much more | pertinent consideration. And though neither is especially | mnemonic (can you really have a mnemonic for something as | abstract as 'sort'?), it's much clearer that single- | character grade down ([?]) is the reverse of single- | character grade up ([?]), than for digraphs (/: and \:). | (It's also easier to parse symbols when they're only one | character.) Not least because unqualified / and \ represent | very different operations--the first is reduce, and the | second is either scan or prefix--as do /. and \\.; so | there's no precedent for it. | | And so, assuming you accept the obvious superiority of | graphical/unicode representation of symbols, the digraph | method for typing them becomes superfluous. You now have to | associate the mental concept of grade with two completely | separate representations: the graphical representation of | the completed character ([?]) and the ascii representation | which you type (/:). You can't escape the latter, because | every time you type a grade, you'll see the '/' on screen | for a moment before you type the ':' and the character gets | digraphed. | | I mentioned in the beginning that you can configure your | editor (and repl) to automatically replace digraphs with | their associated symbols (so /: automatically gets replaced | with [?]). On face, this seems functionally equivalent to | the ligature suggestion, but it's not. Mainly, it affords | flexibility. If you want to type digraphs in your | environment, you _can_ , all my criticisms aside. But I can | configure my environment to use an alternate keyboard | layout, avoid complicating my editor environment by | introducing ligatures, and we can work together | _seamlessly_. Doing it that way also adds flexibility to | the language; if [?] is the single canonical representation | of 'grade up', and / and : are separate symbols with their | own unique semantics, then they can be freely juxtaposed. | It'd also be somewhat of a pointless indirection, to have | ascii digraphs underlying what are essentially unicode- | pictorial representations. | | (Note: I said only 'digraphs', for clarity, but everything | I said applies also to trigraphs, of which j has a couple.) | brudgers wrote: | Unicomp sells APL keycaps...and the good type of 90's | keyboards. | | https://www.pckeyboard.com/page/product/USAPLSET | Camillo wrote: | I don't know if it's intentional, but the clumsy character | shapes, the haphazard line weights and the "bleeding ink" effect | whenever there is a curve or a corner give it a strong "early | DTP" aura. Or possibly even earlier, like a mimeographed pamphlet | in the late 1960s, when APL was new. | anonymfus wrote: | Kerning on Cyrillic is pretty much awful with this font. Ever on | the example string it looks like there is a space between ' and | E, and Sh and Shch are almost glued together. | tobyjsullivan wrote: | Isn't this a monospaced font? | AceJohnny2 wrote: | It's interesting to me to see these projects as alt-history, and | see them as the dead-end technical choice that they were. | | Has any programming language since then tried to use more than | ASCII for its keywords? | ColanR wrote: | Mathematica does this, and they solve the keyboard problem with | floating palettes of symbols. | jonjacky wrote: | The Z ("zed") notation -- but that is a non-executable | specification language: | | https://en.wikipedia.org/wiki/Z_notation | gnulinux wrote: | I program in Agda pretty often and community usually uses | Unicode characters for most things, so I do too. | | The impl of AVL trees in stdlib: https://github.com/agda/agda- | stdlib/blob/master/src/Data/Tre... | | Some basic properties of natural numbers: | https://github.com/agda/agda-stdlib/blob/master/src/Data/Nat... | | It makes the code look absolutely gorgeous, readable and it's | very easy to type too. I use Emacs agda-mode so it just | automatically replaces e.g. \r with - or \== with [?] etc... | | I don't use Agda for theorem proving, I make real life programs | in Agda, I compile them to Haskell and compile with GHC to | executables. | fwip wrote: | That's pretty cool. What kind of problems do you find | yourself solving with your Agda code? (Or, asked another way, | what sort of stuff do your programs do?) | ColanR wrote: | What font do you use for this? It looks weird with my | defaults. | | I once seriously considered trying to build something that | included math symbols in the syntax. It's pretty cool to see | that I don't have to. | arthurcolle wrote: | Julia also allows Unicode characters, which I think is great | for math-heavy programs. I love that about it. I always | forget the keybindings for them though. | AceJohnny2 wrote: | Obviously it belies a very anglo-centric view of the computer | engineering landscape, but frankly I think that's a good thing, | as it allows easier exchange. | brudgers wrote: | Racket uses l for "lambda" and it's pretty common in Racket | code. ___________________________________________________________________ (page generated 2020-08-18 23:00 UTC)