aboutsummaryrefslogtreecommitdiff
path: root/sandbox
diff options
context:
space:
mode:
authorSébastien Doeraene <sjrdoeraene@gmail.com>2016-02-26 16:30:39 +0100
committerSébastien Doeraene <sjrdoeraene@gmail.com>2016-03-01 15:47:56 +0100
commitcd4004a82d9713bbb0b120aba83b3ed8fc9f1372 (patch)
tree309f090cb79fba02746b7b8a0109e171881d5d27 /sandbox
parent0ebf36b394b00f3f432d8fdedeaa15e7d4df2b06 (diff)
downloaddotty-cd4004a82d9713bbb0b120aba83b3ed8fc9f1372.tar.gz
dotty-cd4004a82d9713bbb0b120aba83b3ed8fc9f1372.tar.bz2
dotty-cd4004a82d9713bbb0b120aba83b3ed8fc9f1372.zip
Initial infrastructure and hello world for the Scala.js back-end.
The Scala.js back-end can be enabled with the `-scalajs` command-line option. Currently, it adds one phase to the pipeline, which emits .sjsir files from trees. A sandbox project `sjsSandbox`, in `sandbox/scalajs/`, can be used to easily test Scala.js compilation. One can run the `main()` method of the `hello.world` object with > sjsSandbox/run The back-end only contains the bare mimimum to compile the hello world application in the sandbox. Anything else will blow up (for example, primitive method calls). It is a work-in-progress.
Diffstat (limited to 'sandbox')
-rw-r--r--sandbox/scalajs/hello.scala15
1 files changed, 15 insertions, 0 deletions
diff --git a/sandbox/scalajs/hello.scala b/sandbox/scalajs/hello.scala
new file mode 100644
index 000000000..bd4aa8cc5
--- /dev/null
+++ b/sandbox/scalajs/hello.scala
@@ -0,0 +1,15 @@
+package hello
+
+import scala.scalajs.js
+
+trait MyTrait {
+ val x = 5
+ def foo(y: Int) = x
+}
+
+object world extends js.JSApp with MyTrait {
+ def main(): Unit = {
+ println("hello dotty.js!")
+ println(foo(4))
+ }
+}