Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

APL character issues #54

Closed
mlochbaum opened this issue Oct 10, 2020 · 5 comments
Closed

APL character issues #54

mlochbaum opened this issue Oct 10, 2020 · 5 comments
Labels
enhancement may be implemented as an enhancement

Comments

@mlochbaum
Copy link

mlochbaum commented Oct 10, 2020

The APL programming language uses a set of mostly non-ASCII characters for built-in functionality. Here is an example APL keymap. Julia Mono supports all the characters (hooray!) even in NARS2000 (keymap), the most demanding APL I know of. The glyphs generally look okay, but there are some issues with specific glyphs and a lot of glyphs that are much smaller or lighter than a typical character. Historically (though a very long time ago), many of these glyphs were produced by overstriking—typing two characters on top of each other. In most cases the issues could be fixed by replacing a glyph with a combination of existing ones, like with | and .

  • U+2336 is just the wrong character. It renders as a delete key symbol when it should be "I-beam", usually a stripped-down small-caps I.
  • U+233D is a very unusual rendering; I would expect to see the bar extend past the circle just like a lowercase phi, but maybe more precisely geometrical.
  • U+2372 has its tilde cut off; it should have a full tilde like U+2371 .
  • U+236B is extremely small.
  • U+235E in "quote quad" the quote is almost as big as the quad, making it difficult to recognize. If you're not going to expand the box, the quote should probably be cut off.
  • U+2377 is inconsistent with U+220A (which is very small), although this is something I've seen in other fonts as well.

Since they're not always obvious, here's a table of commonly recognized APL overstrikes. There are also characters with an underscore or box that Julia Mono does seem to use overstrikes for. I would say the circle (U+25CB ) and quad (U+2395 ) should be heavier and the quad larger to match other APL characters better.

   |~∘⋆\-¨

○  ⌽ ⌾⍟⍉⊖⍥
¨   ⍨⍤⍣
∆  ⍋  
∇  ⍒⍫
∧   ⍲
∨   ⍱
0   ⍬
⊥    ⍎
⊤    ⍕
∩    ⍝
,        ⍪
@stale
Copy link

stale bot commented Oct 18, 2020

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions!

@stale stale bot added the stale label Oct 18, 2020
@mlochbaum
Copy link
Author

Thanks for taking a pass through the APL characters (and sorry for contributing to the Hacker News rush). If you decide to come back, here are the ones that I still find to be pretty out of place:

  • U+220A
  • U+2368
  • U+236C
  • U+2371 isn't too small or light like the others, but the tilde being upside-down is kind of jarring.

I would still say many of the APL characters are underweighted, but overall it looks pretty usable now.

@stale stale bot removed the stale label Oct 19, 2020
@cormullion cormullion added the enhancement may be implemented as an enhancement label Oct 19, 2020
@ssfrr
Copy link

ssfrr commented Sep 9, 2022

Another minor APL character issue - the "enclose" (⊂) and "disclose" (⊃) characters don't quite align. They look fine separately, but when right next to each other you can see the issue.

image

@cormullion
Copy link
Owner

Hi Spencer! For the upcoming 0.046 release I've recently been tweaking a few of the maths glyphs , so the APL set currently looks like this:

Screenshot 2022-09-09 at 08 04 34

and placing 0x2282 and 0x2283 side by side (which not many languages can do, I expect) looks like this:

Screenshot 2022-09-09 at 08 00 21

It's difficult to make everything consistent with everything, unfortunately, since there are many different types of consistency possible. So it's always going to be a compromise...

@ssfrr
Copy link

ssfrr commented Sep 9, 2022

That looks lovely. Thanks for all your work on this!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement may be implemented as an enhancement
Projects
None yet
Development

No branches or pull requests

3 participants