JaroslavTulach: /* Getting Started with DukeScript and TeaVM */ - 2015-06-28 04:50:34

Getting Started with DukeScript and TeaVM

←Older revision Revision as of 04:50, 28 June 2015
Line 12: Line 12:
$ hg clone http://source.apidesign.org/hg/html~demo/
$ hg clone http://source.apidesign.org/hg/html~demo/
$ cd html~demo/
$ cd html~demo/
-
$ hg up -C teavm # or directly to version 908708015f61 which is known to work
+
$ hg up -C b157a20a6945 # version b157a20a6945 is known to work
$ mvn clean install -DskipTests
$ mvn clean install -DskipTests
$ cd minesweeper/
$ cd minesweeper/
-
$ mvn -Pteabrwsr clean package bck2brwsr:brwsr
+
$ mvn -Pteabrwsr clean package bck2brwsr:show
</source>
</source>

JaroslavTulach: /* Getting Started with DukeScript and TeaVM */ - 2015-02-23 11:35:27

Getting Started with DukeScript and TeaVM

←Older revision Revision as of 11:35, 23 February 2015
Line 18: Line 18:
</source>
</source>
-
And you can repeat the last step once you modify the [[HTML]] or [[Java]] code. And don't forget - the other way to execute the same application is:
+
And you can repeat the last step once you modify the [[HTML]] or [[Java]] code. And don't forget - the other way to execute the same application is [[FXBrwsr]]:
<source lang="bash">
<source lang="bash">

JaroslavTulach: /* Getting Started with DukeScript and TeaVM */ - 2015-02-23 11:34:57

Getting Started with DukeScript and TeaVM

←Older revision Revision as of 11:34, 23 February 2015
Line 7: Line 7:
== Getting Started with [[DukeScript]] and [[TeaVM]] ==
== Getting Started with [[DukeScript]] and [[TeaVM]] ==
-
Once your application is ready, you can then decide how you want to deploy it. Whether you want more feature rich [[Bck2Brwsr]], or lightweight (but not as complete) [[TeaVM]]. The best way to get started is currently to use the [[Minesweeper]] application and modify it to your needs:
+
Once your application is ready, you can then decide how you want to deploy it. Whether you want more feature rich [[Bck2Brwsr]], or lightweight (but not as complete) [[TeaVM]]. The best way to get started is currently to use the [[MineSweeper]] application and modify it to your needs:
<source lang="bash">
<source lang="bash">

JaroslavTulach at 11:34, 23 February 2015 - 2015-02-23 11:34:48

←Older revision Revision as of 11:34, 23 February 2015
Line 1: Line 1:
[[TeaVM]] is a [[bytecode]] to [[JavaScript]] translator written by Alexey Andreev: https://github.com/konsoletyper/teavm
[[TeaVM]] is a [[bytecode]] to [[JavaScript]] translator written by Alexey Andreev: https://github.com/konsoletyper/teavm
-
Alexey contacted [[I|me]] (as the author of [[Bck2Brwsr]]) and we were seeking for a way to cooperate. I suggested Alexey to extend his [[TeaVM]] to understand [[DukeScript]]'s [http://bits.netbeans.org/html+java/0.7.6/net/java/html/js/package-summary.html @JavaScriptBody] annotation and he did it!
+
Alexey contacted [[I|me]] (as the author of [[Bck2Brwsr]]) and we were seeking for a way to cooperate. I suggested Alexey to extend his [[TeaVM]] to understand [[DukeScript]]'s @{{HTML4J|net/java/html/js|JavaScriptBody}} annotation and he did it!
That is amazing! Now we have a [[common ground]] - a way to write [[Java]] libraries that talk to [[JavaScript]] and can execute them in a variety of [[environment]]s (like [[FXBrwsr]], [[DlvkBrwsr]], [[HTML|NetBeans and Eclipse]], via [[Bck2Brwsr]] or [[TeaVM]]). No need to worry about proprietary [[API]] to talk to different [[VM]]s! Use [[DukeScript]] - it is the [[wikipedia:Lingua_franca|ligua franca]] all [[VM]]s understand (well, somebody needs to enhance [[GWT]] and convince the [[Doppio]] guys).
That is amazing! Now we have a [[common ground]] - a way to write [[Java]] libraries that talk to [[JavaScript]] and can execute them in a variety of [[environment]]s (like [[FXBrwsr]], [[DlvkBrwsr]], [[HTML|NetBeans and Eclipse]], via [[Bck2Brwsr]] or [[TeaVM]]). No need to worry about proprietary [[API]] to talk to different [[VM]]s! Use [[DukeScript]] - it is the [[wikipedia:Lingua_franca|ligua franca]] all [[VM]]s understand (well, somebody needs to enhance [[GWT]] and convince the [[Doppio]] guys).
-
Once your application is ready, you can then decide how you want to deploy it. Whether you want more feature rich [[Bck2Brwsr]], or lightweight (but not as complete) [[TeaVM]].
+
== Getting Started with [[DukeScript]] and [[TeaVM]] ==
-
Also now the competition between [[VM]]s can start! We have a way to write a sample application once and then execute it and compare the results. For example here is a ''minesweeper'' (written with [[DukeScript]] [[API]]s) executed by [[TeaVM]]: http://xelfi.cz/minesweeper/teavm/ and here is one executed by [[Bck2Brwsr]]: http://xelfi.cz/minesweeper/bck2brwsr/ - the same [[HTML]] page, the same [[Java]] code - just different [[VM]]s (btw. [[I]] have speeded up the [[Bck2Brwsr]] start a bit; now it should be less than a second):
+
Once your application is ready, you can then decide how you want to deploy it. Whether you want more feature rich [[Bck2Brwsr]], or lightweight (but not as complete) [[TeaVM]]. The best way to get started is currently to use the [[Minesweeper]] application and modify it to your needs:
 +
 
 +
<source lang="bash">
 +
$ hg clone http://source.apidesign.org/hg/html~demo/
 +
$ cd html~demo/
 +
$ hg up -C teavm # or directly to version 908708015f61 which is known to work
 +
$ mvn clean install -DskipTests
 +
$ cd minesweeper/
 +
$ mvn -Pteabrwsr clean package bck2brwsr:brwsr
 +
</source>
 +
 
 +
And you can repeat the last step once you modify the [[HTML]] or [[Java]] code. And don't forget - the other way to execute the same application is:
 +
 
 +
<source lang="bash">
 +
$ mvn exec:java
 +
</source>
 +
 
 +
== Competition is [[Good]]! ==
 +
 
 +
Now the competition between [[VM]]s can start! We have a way to write a sample application once and then execute it and compare the results. For example here is a ''minesweeper'' (written with [[DukeScript]] [[API]]s) executed by [[TeaVM]]: http://xelfi.cz/minesweeper/teavm/ and here is one executed by [[Bck2Brwsr]]: http://xelfi.cz/minesweeper/bck2brwsr/ - the same [[HTML]] page, the same [[Java]] code - just different [[VM]]s (btw. [[I]] have speeded up the [[Bck2Brwsr]] start a bit; now it should be less than a second):
* [http://source.apidesign.org/hg/html~demo/file/4dce5ea7e13a/minesweeper/src/main/java/org/apidesign/demo/minesweeper/MinesModel.java MinesModel]
* [http://source.apidesign.org/hg/html~demo/file/4dce5ea7e13a/minesweeper/src/main/java/org/apidesign/demo/minesweeper/MinesModel.java MinesModel]
* [http://source.apidesign.org/hg/html~demo/file/4dce5ea7e13a/minesweeper/src/main/webapp/pages/index.html HTML]
* [http://source.apidesign.org/hg/html~demo/file/4dce5ea7e13a/minesweeper/src/main/webapp/pages/index.html HTML]
In any case, congratulation Alexey for your [[good]] work and thanks for sharing the [[common ground]]!
In any case, congratulation Alexey for your [[good]] work and thanks for sharing the [[common ground]]!

JaroslavTulach at 13:41, 28 May 2014 - 2014-05-28 13:41:45

←Older revision Revision as of 13:41, 28 May 2014
Line 7: Line 7:
Once your application is ready, you can then decide how you want to deploy it. Whether you want more feature rich [[Bck2Brwsr]], or lightweight (but not as complete) [[TeaVM]].
Once your application is ready, you can then decide how you want to deploy it. Whether you want more feature rich [[Bck2Brwsr]], or lightweight (but not as complete) [[TeaVM]].
-
Also now the competition between [[VM]]s can start! We have a way to write a sample application once and then execute it and compare the results. For example here is a ''minesweeper'' (written with [[DukeScript]] [[API]]s) executed by [[TeaVM]]: http://xelfi.cz/minesweeper/teavm/ and here is one executed by [[Bck2Brwsr]]: http://xelfi.cz/minesweeper/bck2brwsr/ - the same [[HTML]] page, the same [[Java]] code - just different [[VM]]s (and yes, [[I]] should probably speed up the [[Bck2Brwsr]] start a bit):
+
Also now the competition between [[VM]]s can start! We have a way to write a sample application once and then execute it and compare the results. For example here is a ''minesweeper'' (written with [[DukeScript]] [[API]]s) executed by [[TeaVM]]: http://xelfi.cz/minesweeper/teavm/ and here is one executed by [[Bck2Brwsr]]: http://xelfi.cz/minesweeper/bck2brwsr/ - the same [[HTML]] page, the same [[Java]] code - just different [[VM]]s (btw. [[I]] have speeded up the [[Bck2Brwsr]] start a bit; now it should be less than a second):
* [http://source.apidesign.org/hg/html~demo/file/4dce5ea7e13a/minesweeper/src/main/java/org/apidesign/demo/minesweeper/MinesModel.java MinesModel]
* [http://source.apidesign.org/hg/html~demo/file/4dce5ea7e13a/minesweeper/src/main/java/org/apidesign/demo/minesweeper/MinesModel.java MinesModel]
* [http://source.apidesign.org/hg/html~demo/file/4dce5ea7e13a/minesweeper/src/main/webapp/pages/index.html HTML]
* [http://source.apidesign.org/hg/html~demo/file/4dce5ea7e13a/minesweeper/src/main/webapp/pages/index.html HTML]
In any case, congratulation Alexey for your [[good]] work and thanks for sharing the [[common ground]]!
In any case, congratulation Alexey for your [[good]] work and thanks for sharing the [[common ground]]!

JaroslavTulach at 14:29, 20 March 2014 - 2014-03-20 14:29:38

←Older revision Revision as of 14:29, 20 March 2014
Line 7: Line 7:
Once your application is ready, you can then decide how you want to deploy it. Whether you want more feature rich [[Bck2Brwsr]], or lightweight (but not as complete) [[TeaVM]].
Once your application is ready, you can then decide how you want to deploy it. Whether you want more feature rich [[Bck2Brwsr]], or lightweight (but not as complete) [[TeaVM]].
-
Also now the competition between [[VM]]s can start! We have a way to write a sample application once and then execute it and compare the results. For example here is a ''minesweeper'' (written with [[DukeScript]] [[API]]s) executed by [[TeaVM]]: http://xelfi.cz/minesweeper/teavm/ and here is one executed by [[Bck2Brwsr]]: http://xelfi.cz/minesweeper/bck2brwsr/ - the same [[HTML]] page, the same [[Java]] code - just different [[VM]]s (and yes, [[I]] should probably speed up the [[Bck2Brwsr]] start a bit).
+
Also now the competition between [[VM]]s can start! We have a way to write a sample application once and then execute it and compare the results. For example here is a ''minesweeper'' (written with [[DukeScript]] [[API]]s) executed by [[TeaVM]]: http://xelfi.cz/minesweeper/teavm/ and here is one executed by [[Bck2Brwsr]]: http://xelfi.cz/minesweeper/bck2brwsr/ - the same [[HTML]] page, the same [[Java]] code - just different [[VM]]s (and yes, [[I]] should probably speed up the [[Bck2Brwsr]] start a bit):
 +
* [http://source.apidesign.org/hg/html~demo/file/4dce5ea7e13a/minesweeper/src/main/java/org/apidesign/demo/minesweeper/MinesModel.java MinesModel]
 +
* [http://source.apidesign.org/hg/html~demo/file/4dce5ea7e13a/minesweeper/src/main/webapp/pages/index.html HTML]
In any case, congratulation Alexey for your [[good]] work and thanks for sharing the [[common ground]]!
In any case, congratulation Alexey for your [[good]] work and thanks for sharing the [[common ground]]!

JaroslavTulach at 14:21, 20 March 2014 - 2014-03-20 14:21:33

←Older revision Revision as of 14:21, 20 March 2014
Line 7: Line 7:
Once your application is ready, you can then decide how you want to deploy it. Whether you want more feature rich [[Bck2Brwsr]], or lightweight (but not as complete) [[TeaVM]].
Once your application is ready, you can then decide how you want to deploy it. Whether you want more feature rich [[Bck2Brwsr]], or lightweight (but not as complete) [[TeaVM]].
-
Also now the competition between [[VM]]s can start! We have a way to write a sample application once and then execute it and compare the results. For example here is a ''minesweeper'' (written with [[DukeScript]] [[API]]s) executed by [[TeaVM]]: http://xelfi.cz/minesweeper/teavm/ and here is the one executed by [[Bck2Brwsr]]: http://xelfi.cz/minesweeper/bck2brwsr/ - the same [[HTML]] page, the same [[Java]] code - just different [[VM]]s (and yes, [[I]] should probably speed up the [[Bck2Brwsr]] start a bit).
+
Also now the competition between [[VM]]s can start! We have a way to write a sample application once and then execute it and compare the results. For example here is a ''minesweeper'' (written with [[DukeScript]] [[API]]s) executed by [[TeaVM]]: http://xelfi.cz/minesweeper/teavm/ and here is one executed by [[Bck2Brwsr]]: http://xelfi.cz/minesweeper/bck2brwsr/ - the same [[HTML]] page, the same [[Java]] code - just different [[VM]]s (and yes, [[I]] should probably speed up the [[Bck2Brwsr]] start a bit).
In any case, congratulation Alexey for your [[good]] work and thanks for sharing the [[common ground]]!
In any case, congratulation Alexey for your [[good]] work and thanks for sharing the [[common ground]]!

JaroslavTulach at 14:21, 20 March 2014 - 2014-03-20 14:21:07

←Older revision Revision as of 14:21, 20 March 2014
Line 7: Line 7:
Once your application is ready, you can then decide how you want to deploy it. Whether you want more feature rich [[Bck2Brwsr]], or lightweight (but not as complete) [[TeaVM]].
Once your application is ready, you can then decide how you want to deploy it. Whether you want more feature rich [[Bck2Brwsr]], or lightweight (but not as complete) [[TeaVM]].
-
Also now the competition between [[VM]]s can start! We have a way to write a sample application once and then execute it and compare the results. For example here is a ''minesweeper'' executed by [[TeaVM]]: http://xelfi.cz/minesweeper/teavm/ and here is the one executed by [[Bck2Brwsr]]: http://xelfi.cz/minesweeper/bck2brwsr/ - the same [[HTML]] page, the same [[Java]] code - just different [[VM]]s (and yes, [[I]] should probably speed up the [[Bck2Brwsr]] start a bit).
+
Also now the competition between [[VM]]s can start! We have a way to write a sample application once and then execute it and compare the results. For example here is a ''minesweeper'' (written with [[DukeScript]] [[API]]s) executed by [[TeaVM]]: http://xelfi.cz/minesweeper/teavm/ and here is the one executed by [[Bck2Brwsr]]: http://xelfi.cz/minesweeper/bck2brwsr/ - the same [[HTML]] page, the same [[Java]] code - just different [[VM]]s (and yes, [[I]] should probably speed up the [[Bck2Brwsr]] start a bit).
In any case, congratulation Alexey for your [[good]] work and thanks for sharing the [[common ground]]!
In any case, congratulation Alexey for your [[good]] work and thanks for sharing the [[common ground]]!

JaroslavTulach at 14:19, 20 March 2014 - 2014-03-20 14:19:48

←Older revision Revision as of 14:19, 20 March 2014
Line 3: Line 3:
Alexey contacted [[I|me]] (as the author of [[Bck2Brwsr]]) and we were seeking for a way to cooperate. I suggested Alexey to extend his [[TeaVM]] to understand [[DukeScript]]'s [http://bits.netbeans.org/html+java/0.7.6/net/java/html/js/package-summary.html @JavaScriptBody] annotation and he did it!
Alexey contacted [[I|me]] (as the author of [[Bck2Brwsr]]) and we were seeking for a way to cooperate. I suggested Alexey to extend his [[TeaVM]] to understand [[DukeScript]]'s [http://bits.netbeans.org/html+java/0.7.6/net/java/html/js/package-summary.html @JavaScriptBody] annotation and he did it!
-
That is amazing! Now we have a [[common ground]] - a way to write [[Java]] libraries that talk to [[JavaScript]] and execute them in variety of [[environment]]s (like [[FXBrwsr]], [[DlvkBrwsr]], [[HTML|NetBeans and Eclipse]], via [[Bck2Brwsr]] or [[TeaVM]]). No need to worry about proprietary [[API]] to talk to different [[VM]]s! Use [[DukeScript]] - it is the [[wikipedia:Lingua_franca|ligua franca]] all [[VM]]s understand (well, somebody needs to enhance [[GWT]] and convince the [[Doppio]] guys).
+
That is amazing! Now we have a [[common ground]] - a way to write [[Java]] libraries that talk to [[JavaScript]] and can execute them in a variety of [[environment]]s (like [[FXBrwsr]], [[DlvkBrwsr]], [[HTML|NetBeans and Eclipse]], via [[Bck2Brwsr]] or [[TeaVM]]). No need to worry about proprietary [[API]] to talk to different [[VM]]s! Use [[DukeScript]] - it is the [[wikipedia:Lingua_franca|ligua franca]] all [[VM]]s understand (well, somebody needs to enhance [[GWT]] and convince the [[Doppio]] guys).
Once your application is ready, you can then decide how you want to deploy it. Whether you want more feature rich [[Bck2Brwsr]], or lightweight (but not as complete) [[TeaVM]].
Once your application is ready, you can then decide how you want to deploy it. Whether you want more feature rich [[Bck2Brwsr]], or lightweight (but not as complete) [[TeaVM]].

JaroslavTulach at 14:19, 20 March 2014 - 2014-03-20 14:19:01

←Older revision Revision as of 14:19, 20 March 2014
Line 3: Line 3:
Alexey contacted [[I|me]] (as the author of [[Bck2Brwsr]]) and we were seeking for a way to cooperate. I suggested Alexey to extend his [[TeaVM]] to understand [[DukeScript]]'s [http://bits.netbeans.org/html+java/0.7.6/net/java/html/js/package-summary.html @JavaScriptBody] annotation and he did it!
Alexey contacted [[I|me]] (as the author of [[Bck2Brwsr]]) and we were seeking for a way to cooperate. I suggested Alexey to extend his [[TeaVM]] to understand [[DukeScript]]'s [http://bits.netbeans.org/html+java/0.7.6/net/java/html/js/package-summary.html @JavaScriptBody] annotation and he did it!
-
That is amazing! Now we have a [[common ground]] a way to write [[Java]] libraries that talk to [[JavaScript]] and execute them in variety of [[environment]]s (like [[FXBrwsr]], [[DlvkBrwsr]], [[HTML|NetBeans and Eclipse]], via [[Bck2Brwsr]] or [[TeaVM]]). No need to worry about proprietary [[API]] to talk to different [[VM]]s! Use [[DukeScript]] - it is the [[wikipedia:Lingua_franca|ligua franca]] all [[VM]]s understand (well, somebody needs to enhance [[GWT]] and convince the [[Doppio]] guys).
+
That is amazing! Now we have a [[common ground]] - a way to write [[Java]] libraries that talk to [[JavaScript]] and execute them in variety of [[environment]]s (like [[FXBrwsr]], [[DlvkBrwsr]], [[HTML|NetBeans and Eclipse]], via [[Bck2Brwsr]] or [[TeaVM]]). No need to worry about proprietary [[API]] to talk to different [[VM]]s! Use [[DukeScript]] - it is the [[wikipedia:Lingua_franca|ligua franca]] all [[VM]]s understand (well, somebody needs to enhance [[GWT]] and convince the [[Doppio]] guys).
Once your application is ready, you can then decide how you want to deploy it. Whether you want more feature rich [[Bck2Brwsr]], or lightweight (but not as complete) [[TeaVM]].
Once your application is ready, you can then decide how you want to deploy it. Whether you want more feature rich [[Bck2Brwsr]], or lightweight (but not as complete) [[TeaVM]].