jmurmel
advent-of-code
jmurmel | advent-of-code | |
---|---|---|
9 | 25 | |
20 | 5 | |
- | - | |
9.8 | 8.0 | |
1 day ago | 4 months ago | |
Java | Scala | |
MIT License | - |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
jmurmel
- Show HN: I Made a Lisp
-
format vs. formatter - using and implementing
See also format.lisp for what I have so far. This will also run with sbcl and/ or abcl. If you've made it this far I'd also appreciate feedback on whether my chosen subset (see the comment at the top of the file) of Common-Lisp's format is somewhat useful and/ or which features you would miss the most.
-
Murmel 1.4.1
JMurmel also has commandline flags to turn off language features for experimentation purposes, see e.g. implementing cons, car and cdr in Lambda Calculus.
-
Java OSS with the WORST code quality youβve ever seen?
To my defense, I have started my Lisp compiler/ interpreter mostly for recreational purposes to do the exact opposite of what the checkstyle nazis at my $job demand.
-
-π- 2022 Day 10 Solutions -π-
Murmel:
-
-π- 2022 Day 1 Solutions -π-
I may be a little late to the party but here's my Murmel solution:
-
I made a Lisp
Code is on Github, the latest release with a precompiled jar is at Release V 1.3.
-
Would welcome feedback on Murmel 1.0
Re: automated tests; there are JUnit tests in https://github.com/mayerrobert/jmurmel/tree/master/lambda/src/test/java, and the files in https://github.com/mayerrobert/jmurmel/tree/master/lambda/src/test/lisp are run automatically, too, and their output and result is checked. Maybe I should add a file HACKING.md or something that gives an intro of the project structure and build system?
advent-of-code
-
-π- 2022 Day 13 Solutions -π-
Scala using Β΅Json. Really happy with how concise this is. I was able to parse everything into a Packet class that extends Ordered, which gives us the compare function. So once that was implemented recursively according to the rules we were given, I was able to jsut call .sorted for part 2.
-
-π- 2022 Day 12 Solutions -π-
Scala using jgrapht. I thought part 2 would require a different graph (similar to 2018 day 22) since the story said "to avoid needing to get out your climbing gear..." Glad that wasn't the case!
-
-π- 2022 Day 11 Solutions -π-
Scala. Pretty happy with how I parsed these into anonymous instances of my Monkey trait. For me part 2 wasn't hard because of the modulo trick, but because I was using mutable queues. So I had to add a reset() method to get things back the way they were before running part 2
-
-π- 2022 Day 10 Solutions -π-
Scala using tail recursion. Not the prettiest, but it works
-
-π- 2022 Day 9 Solutions -π-
Scala. Not too bad with my Point helper class. After part 1 I refactored the movements into a move helper that just takes 2 arbitrary points; the current point and the one we are moving towards. Then it was easy enough to just apply that in order each iteration for part 2.
-
-π- 2022 Day 8 Solutions -π-
Scala. It's ugly, but it works Β―\_(γ)_/Β―
-
-π- 2022 Day 5 Solutions -π-
Scala. Parsing wasn't as hard as I thought it would be using transpose and then just filtering non-alphanumeric characters. I initially parsed to a Map[Int, mutable.Stack[Char]] but then that bit me in part 2 when I would have to "reset" it (dang mutability!). So instead I parse to Map[Int, String] and just build the mutable stacks twice.
-
-π- 2022 Day 4 Solutions -π-
Updated version using sets instead of ranges
-
-π- 2022 Day 2 Solutions -π-
Scala. A little more verbose than I would like, but it works Β―\_(γ)_/Β―
-
-π- 2022 Day 1 Solutions -π-
Scala
What are some alternatives?
aviatorscript - A high performance scripting language hosted on the JVM.
AdventOfCodeHaskell - Advent of Code in Haskell
OpenJ9 - Eclipse OpenJ9: A Java Virtual Machine for OpenJDK that's optimized for small footprint, fast start-up, and high throughput. Builds on Eclipse OMR (https://github.com/eclipse/omr) and combines with the Extensions for OpenJDK for OpenJ9 repo.
advent-of-code
interpreter - A simple intepreter written in java.
advent-of-code-rust - πStarter template for solving Advent of Code in Rust.
jisp - Small Lisp expression interpreter made in Java
advent-of-code-2022 - π My Advent of Code solutions in Rust. http://adventofcode.com/2022
sof-language - The Stack with Objects and Functions Programming Language, a pure stack-based reverse-polish-notation functional and object-oriented experimental programming language.
adventofcode - Advent of Code challenge solutions
chapel - a Productive Parallel Programming Language
AdventOfCode-Day4-CampCleanup - .NET Core console app that solves the AdventOfCode Day 3 puzzle - Camp Cleanup