Jtsummers 3 hours ago

https://www.clipsrules.net - CLIPS handles some of the things discussed in this presentation pretty well.

When the author gets to the portion on priorities, in CLIPS this is (primarily) handled with salience and modules.

Salience is a numeric value assigned to each rule, assuming only one agenda the rules with the highest salience will be processed first.

Modules group rules and there's a "focus" stack of modules. The module at the top of the focus stack has its agenda processed first before any other modules. Focus can be controlled by the programmer.

It then has other mechanisms (selectable by the programmer, default is "depth strategy") for when an agenda has multiple rules of the same salience. Depth strategy is LIFO (last in first out), treating the salience level as a stack. So if a rule with salience 10 is activated and later a second rule is activated with salience 10, the second one will run first.

https://www.clipsrules.net/documentation/v641/bpg641.pdf - Page 26 for conflict resolution strategies.

spencerflem 3 hours ago

Just started getting into logic languages / Answer Set Programming!

Don't know much yet but some interesting things I've found:

Dusa, which promises an easier way to merge constraint languages and answer sets https://dusa.rocks/

Puzzlescript, which isn't exactly the same paradigm (its declarative but not a logic lang) that is beloved by the sokobon puzzle community. Sokobon itself is three lines of code in this and many other games only need to add one or two more. Its genius. https://www.puzzlescript.net/

My goal rn as an art project is to try to combine the two, so every puzzlescript game can be queried for interesting properties in Dusa / Potasscio / Some Logic Language.

hlship 4 hours ago

So close to describing the Dialog IF language it’s almost prescient.

https://linusakesson.net/dialog/index.php

Dialog is a Prolog dialect: it’s like Markdown and Prolog had a baby.

  • tunesmith 3 hours ago

    First I've heard of this one. I never got into Inform7 because I didn't find the language very discoverable; it felt like writing AppleScript. Do you know of any links to larger examples of Dialog code, like a full open source game written in the language?

  • Avshalom 2 hours ago

    I feel like I knew about this at some point but thank you for reminding me especially now that I've got more prolog under my belt.