~repos /plum
git clone https://pyrossh.dev/repos/plum.git
A statically typed, imperative programming language inspired by rust, python
test/aoc_2020_1.plum
module aoc2020_1
import std/fsimport std/int
main() -> Unit = input = fs.readFile!("./examples/test/demos/aoc2020/1.txt") numbers = parseNumbers(input) for i in 0...numbers.size a = numbers.get!<u32>(i) for j in 0...numbers.size b = numbers.get!<u32>(j) if a + b == 2020 printLn(a * b) return
parseNumbers(input: Str) -> List<Int> = numbers = List<Int>() current_number = 0 for i in 0..input.length() c = input.charAt(i) if c >= '0' && c <= '9' current_number *= 10 current_number += Int(c - '0') if c == '\n' numbers.push!<u32>(current_number) current_number = 0 numbers