-
Notifications
You must be signed in to change notification settings - Fork 0
Feedback #1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: feedback
Are you sure you want to change the base?
Feedback #1
Conversation
Expressions can be seen as clients that either are evaluated to pure result or to request to the server (execution context, effect handler)~\cite{kiselyov2013extensible}. | ||
Server processes the request and resumes expression evaluation with result of the effectful operation. | ||
Handler defines a scope in which specific effectful operations are possible, it interprets them to pure value and effects of an enclosing scope. | ||
E.g.\ handler of the state effect receives a computation that is able to perform state operations and produces a computation that do not require state effect anymore: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Снова e.g. в начале предложения
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Пытался таким образом разнообразить связующие связки ;) а то у меня сплошные moreover, however и for example
More precisely, functions should not use global definitions to perform effects, instead they should receive capability objects as parameters (usually called services) and use method calls on them to perform effects. | ||
Ideally, if there is some implicit parameter passing feature support. | ||
We demonstrate the idea using Scala with implicits feature~\cite{odersky2004scala}. | ||
Last time language evolves to native support for the idea~\cite{odersky2021safer}. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
а?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ну там про CanThrow
, нужно уточнить что support-то, наверное
\end{minted} | ||
|
||
We consider two aspects of encapsulation. | ||
Firstly, the effect system should prevent accidental handling, i.e.,\ it should explicitly track information that p F438 articular effects will be handled, e.g.,\ in the previous example, \texttt{f} type should carry the information about expected \mintinline{scala}|FileException|. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Мне в свое время говорили, что нет таких слов, как "Firstly" и "Secondly", хотя это неправда, иностранцы ими спамят только в путь. Возможно эти слова не совсем академичные? Меня научили использовать "First" и "Second"
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
хз
Firstly, the effect system should prevent accidental handling, i.e.,\ it should explicitly track information that particular effects will be handled, e.g.,\ in the previous example, \texttt{f} type should carry the information about expected \mintinline{scala}|FileException|. | ||
Secondly, there should be a way to mask implementation detail effects from being handled by the innermost handler \mintinline{scala}|mask(f(content))| (in this case, no additional type information is needed). | ||
|
||
Effects are inherently transitive along the edges of the dynamic call-graph, i.e.,\ a function's effects include the effects of all the functions it calls transitively~\cite{odersky2022scoped}. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
То, что я говорил про переписать i.e. и сделать указание на проблему написания систем эффектов чуть более явно написанной.
No description provided.