100 Days of Code Day 64
I did go back and port the Zebra puzzle to C#, it was more difficult than expected since I couldn’t just have everything loosey-goosey in a string. That unblocked the C# track. So, for today I decided to tackle another Hard exercise, but one that was on both the C# and JavaScript tracks.
I did the Zipper on both. The C# version was harder as I needed to go to awkward lengths to change the left subtree, right subtree, or value of a node. Basically instead of copying the tree then editing it, I had to pass in the node I wanted to change and create with edits it in place when reconstructing the tree. I also had problems where object equality was operating on references so I had to override Equals for both the tree and zipper. C# gets mad if you don’t override the GetHashCode() function when you do that so I overrode that too. I also overrode ToString() for debugging.
There are several more exercises that overlap. I should do those in tandem too. Table below with what each track thinks of the difficulty level as they aren’t always the same.
| Javascript | C# | Exercise |
| Hard | Hard | React |
| Easy | Medium | Conway’s Game of Life |
| Easy | Easy | Eliud’s Eggs |
| Medium | Medium | Knapsack |
| Medium | Easy | Square Root |
| Medium | Medium | Killer Sudoku Helper |
| Medium | Medium | Satellite |
I have also done four on the Javascript track but not the C# track. I may be able to leverage the solutions if needed.
| Javascript | C# | Exercise |
| Medium | Medium | Camicia |
| Medium | Medium | Relative Distance |
| Easy | Easy | Reverse String |
| Easy | Easy | RNA Transcription |
That leaves just five without a Javascript counterpart on the C# track. It is very close to done.
| Difficulty | Exercise |
| Hard | POV |
| Medium | Intergalactic Transmission |
| Medium | Split-Second Stopwatch |
| Medium | Baffling Birthdays |
| Medium | Swift Scheduling |
I did do a little on the GameBoy side of things I got sgb_border_base, and sgb_border_base_fixed compiling and running. I did have some problems getting the border images processed. It turns out I was using the wrong conversion program. I was using sgbconv when I should have been using sfcconv. The prior complained of too many colors (SNES allows more).
