Looking quickly through the references: you’ve already included the main articles regarding observable sharing in hardware-description languages - that leaves two other possible directions to investigate:
-
Jennifer Hackett and Graham Hutton’s paper about “an alternate semantics for laziness”, to avoid the complicated reasoning associated with using heaps for this task.
-
As for
unsafe
pseudo-definitions being used (more) safely, there was a long thread here about it, with this probably being theleast-opininatedmost useful of my posts there for your purposes: