Rearrange writeup

This commit is contained in:
2026-07-02 14:44:32 +01:00
parent 11135a56e8
commit 5e1b92e683
+22 -23
View File
@@ -95,26 +95,6 @@ Comparisions of architectures:
^ Godot Engine documentation. (n.d.). Overview of Godots key concepts. [online] Available at: https://docs.godotengine.org/en/stable/getting_started/introduction/key_concepts_overview.html [Accessed 13 May 2026].
^ Godot Engine documentation. (2026). Godots architecture overview. [online] Available at: https://docs.godotengine.org/en/stable/engine_details/architecture/godot_architecture_diagram.html [Accessed 13 May 2026].
## Embedded scripting
This engine does not use a UI builder. And so all gameplay logic, entity behaviour, definitions etc. must be implemented directly through code.
Because of this it is important to use a well established language in which the developer can write their code.
Embedded scripting languages are programming lanaguges that are designed to be embedded in a host programming language. The embedded language is often an interpreted language which the host is a compiled static typed language. They allow adding code to the program that can be modified and interpreted at runtime. They are often used to extend on the functionality of the host language. And they also allow using functions defined in the host language which are usually much more performance optimized.
They are usually very lightweight (so that the final binary doesn't get bloated and runs fast enough). They are very useful for cuztom DSL/syntax.
And according to [this aticle](https://caiorss.github.io/C-Cpp-Notes/embedded_scripting_languages.html) they are particularly useful for game engines.
We can also see a list [list](https://dbohdan.github.io/embedded-scripting-languages/) of embedded scripting languages that exist, common ones being Lua, javascript variants, squirrel, and ruby variants (mruby in particular).
These all have a C-ABI, meaning they can be used by almost any compiled language.
The author [here](https://caiorss.github.io/C-Cpp-Notes/embedded_scripting_languages.html)
^ Rordrigues, C. (2023). Embedded Scripting Languages. [online] caiorss.github.io. Available at: https://caiorss.github.io/C-Cpp-Notes/embedded_scripting_languages.html [Accessed 13 May 2026].
^ Github. (2022). Embedded scripting languages. [online] Available at: https://dbohdan.github.io/embedded-scripting-languages/ [Accessed 13 May 2026].
## Target users
The target users for this project could be one of 2 categories:
@@ -294,13 +274,31 @@ But if i instead use a library that automatically detects and uses the appropria
### Embedded Scripting
#### why do i need an embedded scripting system (use godot and how it does as reference)
#### why do i need an embedded scripting system
(How godot uses a runtime executed scripting language of tehir own called gdscript.)
This engine does not use a UI based builder. And so all gameplay logic, entity behaviour, definitions etc. must be implemented directly through code.
Because of this it is important to use a well established language in which the developer can write their code.
Embedded scripting languages are programming lanaguges that are designed to be embedded in a host programming language. The embedded language is often an interpreted language which the host is a compiled static typed language. They allow adding code to the program that can be modified and interpreted at runtime. They are often used to extend on the functionality of the host language. And they also allow using functions defined in the host language which are usually much more performance optimized.
They are usually very lightweight (so that the final binary doesn't get bloated and runs fast enough). They are very useful for cuztom DSL/syntax.
And according to [this aticle](https://caiorss.github.io/C-Cpp-Notes/embedded_scripting_languages.html) they are particularly useful for game engines.
(elaborate here on that based on how godot also does so)
We can also see a list [list](https://dbohdan.github.io/embedded-scripting-languages/) of embedded scripting languages that exist, common ones being Lua, javascript variants, squirrel, and ruby variants (mruby in particular).
These all have a C-ABI, meaning they can be used by almost any compiled language.
The author [here](https://caiorss.github.io/C-Cpp-Notes/embedded_scripting_languages.html) (finish this sentence)
^ Rordrigues, C. (2023). Embedded Scripting Languages. [online] caiorss.github.io. Available at: https://caiorss.github.io/C-Cpp-Notes/embedded_scripting_languages.html [Accessed 13 May 2026].
^ Github. (2022). Embedded scripting languages. [online] Available at: https://dbohdan.github.io/embedded-scripting-languages/ [Accessed 13 May 2026].
#### What options do i have.
(Find that amazing resource i found on embedded scripting langs, and mention commonality of lua etc.)
(https://caiorss.github.io/C-Cpp-Notes/embedded_scripting_languages.html, and mention commonality of lua etc.)
#### Why use Mruby
Why ruby is great for development for the runtime of this engine:
@@ -324,6 +322,7 @@ The engine could compile the developers scripts into mruby bytecode when buildin
^ Mruby.org. (2026). mruby - Lightweight Ruby. [online] Available at: https://mruby.org/ [Accessed 13 May 2026].
^ Ruby (2019). Ruby Programming Language. [online] Ruby-lang.org. Available at: https://www.ruby-lang.org/en/ [Accessed 13 May 2026].
#### how i plan on using it along with all precompiling/packing plans i have.