From 907715475d3d5ecdb7c63ed4051862110130a01c Mon Sep 17 00:00:00 2001 From: Radon Rosborough Date: Thu, 15 Jul 2021 06:58:24 +0000 Subject: [PATCH] [#25] New language: Odin --- langs/odin.yaml | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 langs/odin.yaml diff --git a/langs/odin.yaml b/langs/odin.yaml new file mode 100644 index 0000000..bff0c76 --- /dev/null +++ b/langs/odin.yaml @@ -0,0 +1,49 @@ +id: "odin" +name: "Odin" + +info: + year: 2016 + desc: "Alternative to C with goals of simplicity, high performance, built for modern systems, and joy of programming" + ext: + - odin + web: + home: "https://odin-lang.org/" + source: "https://github.com/odin-lang/Odin" + category: general + mode: compiled + platform: [] + syntax: lua + typing: static + paradigm: + - imperative + usage: [] + +install: + apt: + - libllvm11 + manual: | + install -d "${pkg}/opt" + install -d "${pkg}/usr/local/bin" + + ver="$(latest_release odin-lang/Odin)" + wget "https://github.com/odin-lang/Odin/releases/download/${ver}/odin-ubuntu-amd64-${ver}.zip" -O odin.zip + unzip odin.zip + + mv -T ubuntu_artifacts "${pkg}/opt/odin" + chmod +x "${pkg}/opt/odin/odin" + ln -s /opt/odin/odin "${pkg}/usr/local/bin/" + +main: "main.odin" +template: | + package main + + import "core:fmt" + + main :: proc() { + fmt.printf("Hello, world!\n"); + } + +compile: | + odin build main.odin +run: | + ./main