Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Implement Connect RPC mechanism #24

Open
ikskuh opened this issue Aug 25, 2020 · 0 comments
Open

Implement Connect RPC mechanism #24

ikskuh opened this issue Aug 25, 2020 · 0 comments
Labels
proposal This issue proposes changes to the language that are not yet accepted and need some thinking. runtime library This issue is related to the runtime library

Comments

@ikskuh
Copy link
Owner

ikskuh commented Aug 25, 2020

For the standalone version of LoLa, implement means to allow scripts to be connected via a network interface.

The implementation could have the following interface:

Connect(hostname: string, [port: number]): object|void

Tries to connect to a LoLa script running at hostname:port. If port is not given, 5317 is used.

When the connection has been established, a new object is returned that can be used to access the remote script and invoke functions there.
The object will have all functions defined the remote script.

If no connection could be established, void is returned.

Note that it's not possible to send/receive values of the type object as those are bound to the local script environment, all other values can be serialized and passed as arguments or received as return values.

This API should be a opt-in implementation that can be enabled via command line arguments.

@ikskuh ikskuh added proposal This issue proposes changes to the language that are not yet accepted and need some thinking. runtime library This issue is related to the runtime library labels Aug 25, 2020
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
proposal This issue proposes changes to the language that are not yet accepted and need some thinking. runtime library This issue is related to the runtime library
Projects
None yet
Development

No branches or pull requests

1 participant