[ prog / sol / mona ]

prog


Interactive constraint satisfaction

1 2024-01-12 20:15

At times, I need to make a list with several items and ensure that the contents of the list follow some arbitrary rules. Typically, a few items will be non-negotiable (so to speak) but the others can be arbitrary, and I can invent alternatives on the fly.

As an example, suppose I'm working with a list of colors. Two are decided by some outside context. I need to come up with four more within the same perceptual brightness range, and no pair of colors can be too similar in hue.

For each item in the list, I want to be able to store alternatives, even if they currently conflict with something else in the list. I also want to be able to quickly switch from the currently chosen alternative to any of the others, and see live updates as new conflicts appear.

My intuition is that there's already some way to do all this with an Emacs mode, maybe org-mode. If not, I could implement it as a GUI tool of some kind, but if it can already be done through Emacs, I'd rather use Emacs.

7


VIP:

do not edit these