-
Notifications
You must be signed in to change notification settings - Fork 4
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
Spec is Inconsistent with Values in Completion Records #6
Comments
As noted in that thread the phrasing "Unless it is otherwise obvious from the context" phrase in section 6.2.2.2 is the trapdoor which allows for union return value types of Completion Records or Specification Values. Although it's hardly "obvious"! |
See also speced/bikeshed#673 |
GADTs a suitable means of typing throwing/non-throwing Completion Records for type inference of specification methods? |
Hi Thomas,
I'm not sure to fully appreciate your question. Are you asking whether
it is a good idea to involve GADTs for the typechecking of the Ocaml
code describing the JS spec?
+
Arthur
…
GADTs a suitable means of typing throwing/non-throwing Completion
Records for type inference of specification methods?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<#6 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/ABvu_LwZUYrg78BgShGLEyrQ9R6V7NIzks5r4xycgaJpZM4K2nxN>.
|
Currently meeting with @johanneskloos, briefly discussing the project. One aim I mentioned that the committee would like would be type inference for whether particular operations can potentially return abrupt completion records. As far as I can tell, the existing types we use cannot infer this at present. Requires further thought. |
References used to be language values (albeit ECMA-262 didn't use this capability and user code couldn't return any either, so it was provided only for callable hosts objects (e.g. methods on hosts objects), and the only use I know of is E4X (ECMA-357)), ES5 changed that. |
Completion record defined as only containing language values, however in a number of places specification values are returned (References, primary example).
ecma262 has a couple of interesting issues open on this topic, where we could potentially help:
tc39/ecma262#496
tc39/ecma262#497
There's also work to add type signatures to the spec here:
tc39/ecma262#545
The text was updated successfully, but these errors were encountered: