Merge branch 'master' of github.com:jeena/GGS-report
This commit is contained in:
commit
a384fa93ce
1 changed files with 31 additions and 28 deletions
59
report.lyx
59
report.lyx
|
@ -6588,7 +6588,8 @@ This section contains three case studies.
|
||||||
GDL VM and receiving a response.
|
GDL VM and receiving a response.
|
||||||
The second case study provides an example of the process of connecting
|
The second case study provides an example of the process of connecting
|
||||||
to the GGS to set up a game.
|
to the GGS to set up a game.
|
||||||
The third and final case study is a section of code from the GGS.
|
The third and final case study is a section of code from a part of a game
|
||||||
|
for the GGS.
|
||||||
The code in the third study shows how a simple chat server can be implemented
|
The code in the third study shows how a simple chat server can be implemented
|
||||||
in the GGS using JavaScript as GDL.
|
in the GGS using JavaScript as GDL.
|
||||||
\end_layout
|
\end_layout
|
||||||
|
@ -7366,11 +7367,12 @@ ons and the flexibility of the language.
|
||||||
\end_layout
|
\end_layout
|
||||||
|
|
||||||
\begin_layout Standard
|
\begin_layout Standard
|
||||||
There are two main JavaScript virtual machines, or
|
There are two JavaScript virtual machines, or
|
||||||
\emph on
|
\emph on
|
||||||
engines
|
engines,
|
||||||
\emph default
|
\emph default
|
||||||
available at the time of the writing of this thesis.
|
with suitable bindings to erlang available at the time of the writing of
|
||||||
|
this thesis.
|
||||||
There is a group of machines developed by Mozilla called
|
There is a group of machines developed by Mozilla called
|
||||||
\emph on
|
\emph on
|
||||||
TraceMonkey, JaegerMonkey, SpiderMonkey
|
TraceMonkey, JaegerMonkey, SpiderMonkey
|
||||||
|
@ -7379,9 +7381,13 @@ and
|
||||||
\emph on
|
\emph on
|
||||||
IonMonkey
|
IonMonkey
|
||||||
\emph default
|
\emph default
|
||||||
, and also there is Google V8.
|
, and also there is Googles
|
||||||
The group of Mozilla machines are largely the same, and are referred to
|
\emph on
|
||||||
as the same machine for simplicity.
|
V8
|
||||||
|
\emph default
|
||||||
|
.
|
||||||
|
The members in the group of Mozilla machines are largely the same, and
|
||||||
|
are referred to as the same machine for simplicity.
|
||||||
\end_layout
|
\end_layout
|
||||||
|
|
||||||
\begin_layout Standard
|
\begin_layout Standard
|
||||||
|
@ -7394,25 +7400,24 @@ erlang_js
|
||||||
\end_layout
|
\end_layout
|
||||||
|
|
||||||
\begin_layout Standard
|
\begin_layout Standard
|
||||||
Erlang_js provides direct communication with the JavaScript VM.
|
erlang_js provides direct communication with the JavaScript VM.
|
||||||
Which is exactly what is desired, however also required is thee possibility
|
Which is exactly what is desired, however also required is the possibility
|
||||||
to communicate from erlang_js to Erlang.
|
to communicate from JavaScript to Erlang.
|
||||||
The ability to communicate from JavaScript to Erlang functionality is not
|
The ability to communicate from JavaScript to Erlang is not yet implemented
|
||||||
yet implemented in erlang_js, due to lack of time on the behalf of the
|
in erlang_js, due to lack of time of the erlang_js developers.
|
||||||
erlang_js developers.
|
|
||||||
\end_layout
|
\end_layout
|
||||||
|
|
||||||
\begin_layout Standard
|
\begin_layout Standard
|
||||||
There were two possible solutions to the problem of the JavaScript to Erlang
|
There were two possible solutions to the problem, either one would implement
|
||||||
communication path missing, the path could be implemented by the GGS project,
|
the missing functionality, or a switch from erlang_js to some other JavaScript
|
||||||
or a switch from erlang_js for some other JavaScript engine could be made.
|
engine with better bindings could be made.
|
||||||
|
|
||||||
\end_layout
|
\end_layout
|
||||||
|
|
||||||
\begin_layout Standard
|
\begin_layout Standard
|
||||||
Attempts at creating the communication path from JavaScript to Erlang were
|
Attempts at implementing the missing functionality were initially made but
|
||||||
initially made, however the communication path never became stable enough
|
never became stable enough for usage in the GGS and the erlang_js software
|
||||||
for usage in the GGS and the erlang_js software was abandoned.
|
was abandoned.
|
||||||
\end_layout
|
\end_layout
|
||||||
|
|
||||||
\begin_layout Subsection
|
\begin_layout Subsection
|
||||||
|
@ -7420,18 +7425,16 @@ erlv8
|
||||||
\end_layout
|
\end_layout
|
||||||
|
|
||||||
\begin_layout Standard
|
\begin_layout Standard
|
||||||
erlv8 is powered by the V8 engine developed by Google rather than the engines
|
erlv8 is powered by the V8 engine developed by Google.
|
||||||
developed by Mozilla.
|
The ability to communicate from JavaScript to Erlang using callbacks (aka
|
||||||
The ability to communicate with Erlang from JavaScript using callbacks
|
NIF) is available in the erlv8 bindings and can be used within the GGS.
|
||||||
is available in the erlv8 bindings, therefore this feature does not have
|
|
||||||
to be added to the bindings in order to be used in the GGS.
|
|
||||||
\end_layout
|
\end_layout
|
||||||
|
|
||||||
\begin_layout Standard
|
\begin_layout Standard
|
||||||
Initial releases of the erlv8 bindings had stability issues, these were
|
Initial releases of the erlv8 bindings had stability issues, these however
|
||||||
however solved by the erlv8 developers during the usage of erlv8 in the
|
were resolved by the erlv8 developers during the development GGS.
|
||||||
GGS.
|
At this point erlv8 is the JavaScript engine powering JavaScript as a GDL
|
||||||
erlv8 is the JavaScript engine powering JavaScript as a GDL in the GGS.
|
in the GGS.
|
||||||
\end_layout
|
\end_layout
|
||||||
|
|
||||||
\begin_layout Standard
|
\begin_layout Standard
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue