Operation Amethyst - Crystal

Operation Amethyst

Operation Amethyst - YouTube

This is the first operation on the Crystal track, operations aim to deliver bigger content pieces compared to our ongoing work (like fixes, adding exercises etc).

Crystal exercises on Exercism

It is an operation since this will be released over a period (likely 1-2 weeks).


  • Crystal 1.8
  • Representer
  • Fixes

Crystal 1.8.1

Note: This may lead to some current solutions to break

This update has been needed for a while and work has been going on the last few months to make the move to 1.8 as smooth as possible, this mostly includes a lot of new ci scripts. Among other things does this include version-specific tests on our exercises repo and our brand new ci scripts which will test our test runner on all exercises.

This upgrade makes it so you can use the latest tools and hopefully brings some speed improvements, fingers crossed :hand_with_index_finger_and_thumb_crossed:.
Other planned changes are also dependent on this version changes.


The representer has been in development since February and the first version is now ready. It allows us to be able to normalize solutions which involves sorting and generalizing names. This together allows us to give feedback on one solution which we can apply to multiple solutions which works the same way.

This will be a tool for our mentors mainly and their feedback will be able to give to students.

My aim is to have 2nd iteration with various improvements and fixes. Mainly a focus will be to improve macro support (likely to release with the next operation).


For some time has test cases with Int128 been giving warnings due to that a writing style introduced in 1.3 wasn’t available in 1.2. In later Crystal updates a warning was introduced for numbers that is bigger than int32 not being marked as int128. WIth 1.8 we can now write that marking for those exercises so the warning can go away.

Syllabus (Sneak Peak)

The syllabus is still being worked on and isn’t just ready yet.
The content stop was initialized today which means no new concepts will be added until after the first release.
2 Concepts are merged in and another one shall likely be merged this week and work is ongoing.
But hopefully, a release can occur soon.
But here are some sneak peeks of the syllabus:


Amazing work @Meatball! Thanks so much for putting this together :slight_smile:

I really love that you have an operation with a logo and also a youtube video for it. That’s so cool!