This is inherited from template for Advent of Code contest.
After >40 years writing in-countable lines of code in M*/COS/ISOS (and a bunch of archaic languages)
I decided for myself to set a strong signal for the future. We have Embedded Python available
(still pre-release)! I just felt it as a sacrilege to ignore this excellent NEW opportunity and
stay with the old sermon that I had used for decades.
Advent means time of waiting and preparing for something important to come.
So to me, it meant Advent of Embedded Python Code that finally showed up in time.
ALL class methods of 25 exercises + utility are exclusively written using Embedded Python.
And I'm proud that it ranked as #3 completed by registered members of the Developer Community.
For later use I have added also
Clone/git pull the repo into any local directory
git clone https://github.com/rcemper/AoC2021-rcc.git
Open the terminal in this directory and build and run the IRIS container with your project:
docker-compose up -d --build
iris.script will import everything you place under /src into IRIS.
Open IRIS terminal:
$ docker-compose exec iris iris session iris USER>do ##class(dc.aoc2021.Day1).Run()
; to run all exercises use for day=0:1:25 do $classmethod("dc.aoc2021.Day"_day,"Run") ; to run all alteratete exercises use test=0 for day=0:1:25 do $classmethod("dc.aoc2021.Day"_day,"Run",,0) ; to run all first test examples use for day=0:1:25 do $classmethod("dc.aoc2021.Day"_day,"Run",,1) ; to run ALL this with just one line for day=0:1:25 for test=-1:1:1 do $classmethod("dc.aoc2021.Day"_day,"Run",,test)
Some exercises have more then 1 example:
Day8:2, Day12:3, Day16:15, Day18:10, Day22:3, Day24:none
; to run all test examlpes of day 16 for example=1:1:15 do ##class(dc.aoc2021.Day16).Run(,example)
Files /data/ALL*.txt hold all available results
This repository is ready to code in VSCode with ObjectScript plugin.
Install VSCode, Docker and ObjectScript plugin and open the folder in VSCode.
Open /src/cls/aoc2021/******.cls class and try to make changes
The simplest dockerfile which starts IRIS and imports code from /src folder into it.
Use the related docker-compose.yml to easily setup additional parametes
like port number and where you map keys and host folders.
Setup Objectscript code which is being executed during docker build phase
Settings file to let you immediatley code in VSCode with VSCode ObjectScript plugin)