From 86f5a24775545805de301ab40bc57ca4b901975e Mon Sep 17 00:00:00 2001 From: Hans-Nikolai Viessmann Date: Sun, 30 Jan 2022 21:50:07 +0100 Subject: [PATCH] add SaC compiler to webui --- config/languages.dhall | 22 +++++++++++++++++++++ static/img/sac.svg | 42 +++++++++++++++++++++++++++++++++++++++++ static/img/sac.svg.png | Bin 0 -> 9770 bytes 3 files changed, 64 insertions(+) create mode 100644 static/img/sac.svg create mode 100644 static/img/sac.svg.png diff --git a/config/languages.dhall b/config/languages.dhall index a983cd4..166deff 100644 --- a/config/languages.dhall +++ b/config/languages.dhall @@ -1029,6 +1029,28 @@ in [ { id = "assembly" } ] : List Book } + , { id = "sac" + , name = "Single-Assignment C" + , logoName = "sac" + , fileExtension = "sac" + , editorConfig = + { defaultFilename = "main.sac" + , mode = "ace/mode/sac" + , useSoftTabs = True + , softTabSize = 4 + , exampleCode = + '' + int main () { + StdIO::show ("Hello World!); + return 0; + }'' + } + , runConfig = Some + { containerImage = "glot/sac:latest" + , runCommand = "sac2c -t seq -o a.out main.sac && ./a.out" + } + , books = [] : List Book + } , { id = "rust" , name = "Rust" , logoName = "rust" diff --git a/static/img/sac.svg b/static/img/sac.svg new file mode 100644 index 0000000..79bed3a --- /dev/null +++ b/static/img/sac.svg @@ -0,0 +1,42 @@ + + + + + + + + C + λ + + + diff --git a/static/img/sac.svg.png b/static/img/sac.svg.png new file mode 100644 index 0000000000000000000000000000000000000000..8dc2f618da23c856ec8f5fff9607e463c9881076 GIT binary patch literal 9770 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 DBeBQq literal 0 HcmV?d00001