id: "miranda" name: "Miranda" info: year: 1983 desc: "Pure, non-strict, polymorphic, higher order functional programming language designed by David Turner in 1983-6" ext: m web: wiki: "https://en.wikipedia.org/wiki/Miranda_(programming_language)" home: "https://www.cs.kent.ac.uk/people/staff/dat/miranda/" source: "https://www.cs.kent.ac.uk/people/staff/dat/miranda/downloads/" category: pure mode: - compiled - interpreted platform: [] syntax: haskell typing: static paradigm: - declarative - functional usage: [] install: apt: - rlwrap manual: | install -d "${pkg}/usr/local/bin" install -d "${pkg}/usr/local/lib" install -d "${pkg}/usr/share/man/man1" url="$(curl -fsSL https://www.cs.kent.ac.uk/people/staff/dat/miranda/downloads/ | grep 'click.php' | grep -Eo 'https?://[^"]+' | head -n1)" wget "${url}" -O miranda.tgz tar -xf miranda.tgz pushd miranda make cleanup make CC="gcc -w -fcommon" mv mira "${pkg}/usr/local/bin/" mv miralib "${pkg}/usr/local/lib/" mv mira.1 "${pkg}/usr/share/man/man1/" popd repl: | rlwrap mira main: "main.m" template: | main = [Stdout "Hello, world!"] run: | echo "[ Type 'main' to run code ]" rlwrap mira main.m helloInput: | main scope: code: | x = 123 * 234