fonts, coercion, compatibility

1 view
Skip to first unread message

Larry Masinter

unread,
Jun 15, 2025, 6:18:46 PMJun 15
to Interlisp core
I've been trying to step back and see if there is a different perspective that would give us some insights on how to deal with fonts.

Requirements:  What are the requirements we're trying to meet with a design for fonts and font handling?

R1: Compatibility -- we want old software written for Medley at some point in the past to continue to run without having to rewrite or patch.. While we don't know exactly what features that entails.
R2: Simplicity -- we'd like the way that fonts are found and brought into a new medley environment to not be overly complex.
R3: Performance -- we'd like to not kill loadups with a font-rendering phase that will take minutes. (Maybe this isn't a requirement)?
R4: Completeness -- We'd like fonts to be somehow complete and accurate ... if someone says they want font "comicsans" with bold italic 17 points for a 75 DPI screen, we'd like to give them that.  
R5: Avoid surprises: it would be good if the behavior of  FONTCREATE for example didn't depend on the state of the file system  over LOGOUT or MAKESYS or distribution -- at least if we're caching something there is a reliable way of invalidating the cache when the cached values change.

Anyway, these are incomplete and likely wrong, but to go through and understand what we're trying to do.   They are also in conflict -- you have trouble when you're trying to be compatible with multiple, incompatible things.

some ideas that come to mind:
-- ideq1: roll back the FONTS directory to the content that was part of some previous release (MEDLEY 2.0, Lyric.) This will give us consistent fonts.  Add a new function (MEDLEY-FONTCREATE or something), and make it work with NEW fonts (with different font family names ) which uses our abuility to construcdt from truetype fonts.    This will give us compatibility with software that deals in TimesRoman, Helvetica, CLassic, Modern, Gacha and Terminal, but also gives us Noto and Robereto and other more recent fonts.

Only one backup font -- If you want no slugs, have _one_  other font that you can pull otherwise glyphless fonts in?

Not quite coherent but I thought i should send this out anyway.

Reply all
Reply to author
Forward
0 new messages