Main.JavaScala History

Hide minor edits - Show changes to output

June 06, 2012, at 10:38 AM by 129.241.249.6 -
Added lines 4-13:

!!Requirements

This family of compilers produces Maven projects, which are then rather easy for users to build and execute. Please make sure you have [[http://maven.apache.org/download.html | Maven correctly installed]] on your computer. In a terminal, type

mvn --version

to check Maven is properly installed.

June 06, 2012, at 08:46 AM by 129.241.249.6 -
Changed line 16 from:
* '''ThingML to Kevoree''': This compiler wraps the results of the previous compiler into Kevoree component. Kevoree is a model-driven dynamic component model. This makes it possible to deploy ThingML components on different nodes, and dynamically manage ThingML applications. [https://github.com/ffleurey/ThingML/blob/master/org.thingml.compilers/src/main/scala/org/thingml/kevoreegenerator/KevoreeGenerator.scala | Source code]].
to:
* '''ThingML to Kevoree''': This compiler wraps the results of the previous compiler into Kevoree component. Kevoree is a model-driven dynamic component model. This makes it possible to deploy ThingML components on different nodes, and dynamically manage ThingML applications. [[https://github.com/ffleurey/ThingML/blob/master/org.thingml.compilers/src/main/scala/org/thingml/kevoreegenerator/KevoreeGenerator.scala | Source code]].
June 06, 2012, at 08:45 AM by 129.241.249.6 -
Changed lines 1-2 from:
!Java/Scala Compiler
to:
!Java/Scala Compilers
Added line 6:
Changed lines 9-17 from:
* '''Implement the server-side application logic''' (running in the Cloud on in Java-based gateways), which should realize complex tasks such as bridging low-level optimized communication/data protocols running on things to high-level standard protocols (like HTTP, REST, SenML) already in use in the Internet of Services.
to:
* '''Implement the server-side application logic''' (running in the Cloud on in Java-based gateways), which should realize complex tasks such as bridging low-level optimized communication/data protocols running on things to high-level standard protocols (like HTTP, REST, SenML) already in use in the Internet of Services.

!! Familly of compilers

All these compilers are implemented in Scala.

* '''ThingML to SMAc''': This is the main compiler of the Java/Scala family. It targets SMAc (State Machine with Actors), a Scala framework for implementing operational state machines. It also defines a lightweight component model. [[https://github.com/ffleurey/ThingML/blob/master/org.thingml.compilers/src/main/scala/org/thingml/scalagenerator/ScalaGenerator.scala | Source code]].
* '''ThingML to Kevoree''': This compiler wraps the results of the previous compiler into Kevoree component. Kevoree is a model-driven dynamic component model. This makes it possible to deploy ThingML components on different nodes, and dynamically manage ThingML applications. [https://github.com/ffleurey/ThingML/blob/master/org.thingml.compilers/src/main/scala/org/thingml/kevoreegenerator/KevoreeGenerator.scala | Source code]].
* ThingML to GUI Mock-ups:
June 06, 2012, at 08:03 AM by 129.241.249.6 -
Changed lines 6-7 from:
* Simulate the behavior of things in a controlled environment (JVM), where it is easy to connect to other tools for visualization, etc. After simulation, the same ThingML model could then be compiled to target microcontrollers.
* Implement the server-side application logic (running in the Cloud on in Java-based gateways), which should realize complex tasks such as bridging low-level optimized communication/data protocols running on things to high-level standard protocols (like HTTP, REST, SenML) already in use in the Internet of Services.
to:
* '''Simulate the behavior of things''' in a controlled environment (JVM), where it is easy to connect to other tools for visualization, etc. After simulation, the same ThingML model could then be compiled to target microcontrollers.
* '''Implement the server-side application logic''' (running in the Cloud on in Java-based gateways), which should realize complex tasks such as bridging low-level optimized communication/data protocols running on things to high-level standard protocols (like HTTP, REST, SenML) already in use in the Internet of Services.
June 06, 2012, at 07:53 AM by 129.241.249.6 -
Changed line 1 from:
!Underlying technologies
to:
!Java/Scala Compiler
Changed lines 4-5 from:

!Goals
to:
!!Goals
Changed line 7 from:
* Implement the server-side application logic
to:
* Implement the server-side application logic (running in the Cloud on in Java-based gateways), which should realize complex tasks such as bridging low-level optimized communication/data protocols running on things to high-level standard protocols (like HTTP, REST, SenML) already in use in the Internet of Services.
June 06, 2012, at 07:43 AM by 129.241.249.6 -
Changed lines 1-2 from:
ThingML models can be compiled to Java/Scala code. [[http://www.scala-lang.org/ | Scala]] is a JVM-based language (hence seamlessly compatible with Java), which extends Object-Oriented principles with functional programming. In particular, Scala provides an [[actor library | http://www.scala-lang.org/node/242]] for lightweight and scalable concurrent and asynchronous programming, very much aligned with ThingML philosophy.
to:
!Underlying technologies
ThingML
models can be compiled to Java/Scala code. [[http://www.scala-lang.org/ | Scala]] is a JVM-based language (hence seamlessly compatible with Java), which extends Object-Oriented principles with functional programming. In particular, Scala provides an [[http://www.scala-lang.org/node/242 | actor library]] for lightweight and scalable concurrent and asynchronous programming, very much aligned with ThingML philosophy.


!Goals
Changed lines 7-8 from:
* Simulate the behavior of things in a controlled environment (JVM), where it is easy to connect to
to:
* Simulate the behavior of things in a controlled environment (JVM), where it is easy to connect to other tools for visualization, etc. After simulation, the same ThingML model could then be compiled to target microcontrollers.
* Implement the server-side application logic
June 06, 2012, at 07:39 AM by 129.241.249.6 -
Changed line 1 from:
ThingML models can be compiled to Java/Scala code. [[Scala | http://www.scala-lang.org/]] is a JVM-based language (hence seamlessly compatible with Java), which extends Object-Oriented principles with functional programming. In particular, Scala provides an [[actor library | http://www.scala-lang.org/node/242]] for lightweight and scalable concurrent and asynchronous programming, very much aligned with ThingML philosophy.
to:
ThingML models can be compiled to Java/Scala code. [[http://www.scala-lang.org/ | Scala]] is a JVM-based language (hence seamlessly compatible with Java), which extends Object-Oriented principles with functional programming. In particular, Scala provides an [[actor library | http://www.scala-lang.org/node/242]] for lightweight and scalable concurrent and asynchronous programming, very much aligned with ThingML philosophy.
June 06, 2012, at 07:39 AM by 129.241.249.6 -
Added lines 1-4:
ThingML models can be compiled to Java/Scala code. [[Scala | http://www.scala-lang.org/]] is a JVM-based language (hence seamlessly compatible with Java), which extends Object-Oriented principles with functional programming. In particular, Scala provides an [[actor library | http://www.scala-lang.org/node/242]] for lightweight and scalable concurrent and asynchronous programming, very much aligned with ThingML philosophy.

The goals of this family of compilers are to:
* Simulate the behavior of things in a controlled environment (JVM), where it is easy to connect to