You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
def runPluginOnSetup(plugin: Plugin): {system.FFI} Unit
def run(): {system.FFI} Unit
Run the text-editor application.
Expected behavior: No error is thrown.
Actual behavior: The following error is thrown: Effect annotation {system.FFI} on method run is not a subtype of effects that method produces, which are [system.FFI, logger.Update]; at location file wyvern/examples/text-editor/textEditor.wyv on line 134 column 5
The text was updated successfully, but these errors were encountered:
You don't show the implementation of run and runPluginOnSetup, so I can't tell for sure what the issue is.
But if you were expecting system.FFI to be the universal effect (i.e. top in the lattice of effect sets), that is not how I envisioned it. Rather, I see it as a primitive out of which other effects can be built. If you have a strong reason to treat it as Top, we should discuss. Perhaps there should be some other thing that is Top.
In the text-editor application, annotate the logger type and module in the following way:
logger.wyv:
Logger.wyt:
Then annotate textEditor's
run
andrunPluginOnSetup
methods in the following way:In both textEditor.wyv and TextEditor.wyt:
Run the text-editor application.
Expected behavior: No error is thrown.
Actual behavior: The following error is thrown:
Effect annotation {system.FFI} on method run is not a subtype of effects that method produces, which are [system.FFI, logger.Update]; at location file wyvern/examples/text-editor/textEditor.wyv on line 134 column 5
The text was updated successfully, but these errors were encountered: