Bug #7061

Document SCL effect semantics

Added by Timo Korvola 11 months ago.

Status:NewStart date:
Priority:4Due date:
Assignee:Hannu Niemistö% Done:

0%

Category:DocumentationSpent time:-
Target version:-
Release notes:
Tags: scl
Story points-
Velocity based estimate-

Description

http://dev.simantics.org/index.php/SCL_Types#Effect_types states that <e> is only valid in the return type of a function. This does not seem to be true: things like while :: <a> Boolean -> <a> b -> <a> () appear in the standard library. I can guess what that does but I'd like a description how it ends up doing that, i.e., what is the semantics of <e> x when it is not the return type of a function. http://dev.simantics.org/index.php/SCL_Tutorial mentions "the strict evaluation strategy" of SCL but evidently it's not strictly strict anymore. So what is it?

I think SCL needs a language specification that is and will be kept up to date with respect to the implementation. It should concisely and completely describe the syntax and semantics of the bare language. Library documentation can be maintained separately using the tools already in place.

Also available in: Atom PDF