Open santolucito opened 2 years ago
I'm fact, even better, just turn the tsl-strix-docker https://github.com/Barnard-PL-Labs/tsl-strix-docker into an API service. "Reactive synthesis as a service". Allow API params to request just the .aag or .dot, or further process into code for one of the supported languages, or also deliver the parsedot processed .dot file.
Should actually do the same thing for CVC5 and the translation to JavaScript we have for https://github.com/Barnard-PL-Labs/SequencerLiveCoding
Moving the heavy lifting parts of synthesis on the web is a good idea. It worked well in the live sequencer tool (https://github.com/Barnard-PL-Labs/SequencerLiveCoding/issues/18)
We should move the TSL synthesis to a lambda as well. It is a bit more complicated with the docker container. See directions here: https://docs.aws.amazon.com/lambda/latest/dg/images-create.html#images-create-2
Once the docker image is ready and on a AWS Lambda, we just swap out the call to the shell script here:
https://github.com/Barnard-PL-Labs/TSLSynthesizer/blob/8d6bf9ac9c2a7c17290cfdf3b8da44e2a7dd5db8/server.js#L91
With something like this: https://github.com/Barnard-PL-Labs/SequencerLiveCoding/blob/fa9bcc6ea9e08f41cc05fccca9f1b23c1ab9e802/serverSide/cvc4.js#L58