Gabriel Giordano's functional programming Elixir solutions for Exercism problems.
| Problem | Solution | Categories | Notes | |
|---|---|---|---|---|
| ⭐ | Markdown | .exs | Refactoring | Performatic and recursive O(n) markdown parser with metaprogrammed functions |
| ⭐ | Spiral Matrix | .exs | Lists, Transforming | Math solution |
| ⭐ | OCR Numbers | .exs | Enumerations, Strings | Uses streams and parallel processing with async_stream/2 |
| ⭐ | Queen Attack | .exs | Algorithms, Structs | Performatic and recursive O(64) to_string method to write the chess board |
| Tournament | .exs | Formatting, Sorting, String Processing | ||
| ⭐ | Parallel Letter Frequency | .exs | Concurrency, OTP | Solution using async_stream/2 |
| ⭐ | Robot Simulator | .exs | Structs, Pattern Matching | O(n) solution where n is the string length, with metaprogrammed functions |
| Grade School | .exs | Maps | ||
| Leap | .exs | Algorithms | ||
| Isogram | .exs | Reduce, Algorithms | ||
| Saddle Points | .exs | Matrices, String Processing, Enumeration | ||
| Triangle | .exs | Algorithms | ||
| Hamming | .exs | String Processing | ||
| Nth Prime | .exs | Algorithms, Recursion, Math | Performatic Stream solution | |
| ⭐ | Phone Number | .exs | String Processing, Pattern Matching | Performatic solution without Regex, with bits and binary of string |
| All Your Base | .exs | Translation, Numbers, Math | ||
| ⭐ | Meetup | .exs | Time, Calendar, Pattern Matching | Concise solution working with rem and Date |
| ⭐ | Bracket Push | .exs | Algorithms, Reduce, Enumeration | Recursive O(n) solution |
| ⭐ | Matrix | .exs | String Processing, Structs | Recursive transpose algorithm that supports non-square matrixes, strings and integers conversions of n digits or characters, and efficient string to number implementation |
| Anagram | .exs | Filter, Enumeration | Recursion with Map | |
| Pangram | .exs | Enumerations, Strings | Recursion with MapSet | |
| Sum of Multiples | .exs | Algorithms, Reduce, Math | Recursive solution to sum the multiples of the factors provided | |
| ⭐ | Scrabble Score | .exs | Reduce | Recursive and efficient solution with string's binary |
| ⭐ | Sublist | .exs | Lists, Enumeration | Recursive and efficient solution |
| ⭐ | Run Length Encoding | .exs | Algorithms, Strings | Encode and decode recursively |
| Raindrops | .exs | Conditionals | Ternary operator simulated with && and || | |
| ⭐ | Series | .exs | String Processing | Performative and recursive solution with pattern matching in O(n*2) where n is the length of the String |
| ⭐ | Acronym | .exs | String Processing | Performative and recursive solution using the bits of the String |
| Accumulate | .exs | Recursion, Reduce | Simple solution to map with recursion | |
| Twelve Days | .exs | Enumerations, Reduce, String Formatting | Compose each verse recursively | |
| Space Age | .exs | Pattern Matching | Just pre-multiply the planet orbit by the Earth orbit | |
| Pig Latin | .exs | Pattern Matching, String Processing | Translate recursively | |
| Protein Translation | .exs | Pattern Matching, String Processing | Simple solution to get recursively each codon using the binary of the string | |
| Strain | .exs | Collections | Simple solution to filter an Enum | |
| Rotational Cipher | .exs | String Processing | ||
| ⭐ | Secret Handshake | .exs | Binary Representation | Binary pattern matching, without Bitwise module |
| Nucleotide Count | .exs | Enumerables, Maps, String Processing | ||
| RNA Transcription | .exs | Strings | ||
| List Ops | .exs | Lists, Enumeration, Recursion | ||
| Beer Song | .exs | Recursion, Pattern Matching | ||
| Roman Numerals | .exs | Algorithms, Pattern Matching | Integer's reduce implementation | |
| Word Count | .exs | Lists, Maps, Reduce | ||
| Bob | .exs | Control Flow, String Processing | ||
| Hello World | .exs | Strings |