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
<pclass="SystemRequirements">System Requirements: In all cases, <ahref="http://www.oracle.com/technetwork/java/javase/downloads/index.html">Java 8</a> is required to be installed on your system. <ahref="https://nodejs.org/en/download/">Node.js version 6+</a> is also required. The N4JS plugins require the <ahref="https://www.eclipse.org/downloads/">Eclipse Neon 2 release (4.6.2)</a>.</p>
80
+
<pclass="SystemRequirements">System Requirements: In all cases, <ahref="http://www.oracle.com/technetwork/java/javase/downloads/index.html">Java 8</a> is required to be installed on your system. <ahref="https://nodejs.org/en/download/">Node.js version 8+</a> is also required. The N4JS plugins require the <ahref="https://www.eclipse.org/downloads/">Eclipse Oxygen release (4.7)</a>.</p>
<p>While <code>any+</code> resembles TypeScript’s behavior of <code>any</code>, it is still more restrictive: <code>any+</code> will never be used as a default, it has to be declared explicitly; and a value of type <code>any+</code> still cannot be assigned to variables of other types except <code>any</code>.</p>
<p>the parameter types of overriding methods need to be contra-variant - the type of the parameters of <code>N</code> need to be super types <supclass="footnote">[<aid="_footnoteref_2" class="footnote" href="#_footnote_2" title="View footnote.">2</a>]</sup> of the types of the parameters of <code>M</code></p>
271
+
<p>the parameter types of overriding methods need to be contra-variant - the type of the parameters of <code>N</code> need to be super types <supclass="footnote">[<aid="_footnoteref_2" class="footnote" href="#_footnotedef_2" title="View footnote.">2</a>]</sup> of the types of the parameters of <code>M</code></p>
273
272
</li>
274
273
<li>
275
274
<p>the return type of overriding methods need to be co-variant, that is the type of the parameters of <code>N</code> need to be a sub type of the return type of <code>M</code></p>
<p>As a significant difference between the two languages, N4JS also supports <strong>nominal types</strong> and nominal typing <strong>is the default</strong>.
521
520
Thus, structural types have to be explicitly annotated as being structural, using the <code>~</code> or <code>~~</code> type constructors.</p>
<h2id="_how_does_n4js_compare_to_javascript_ecmascript"><aclass="link" href="#_how_does_n4js_compare_to_javascript_ecmascript">How does N4JS compare to JavaScript/ECMAScript?</a></h2>
95
+
<h2id="_how_does_n4js_compare_to_javascriptecmascript"><aclass="link" href="#_how_does_n4js_compare_to_javascriptecmascript">How does N4JS compare to JavaScript/ECMAScript?</a></h2>
97
96
<divclass="sectionbody">
98
97
<divclass="paragraph">
99
98
<p>N4JS is based on JavaScript/ECMAScript. Feature-wise it is a super set of ECMAScript: It supports all
0 commit comments