about summary refs log tree commit diff
AgeCommit message (Collapse)AuthorFilesLines
2020-01-23 Create third_partyWilliam Carroll5-35/+32
Create a third_party subdirectory and a third_party/lisp. This directory layout resembles and is inspired by the layout of Google's mono-repo, Google3. @tazjin borrowed this idea from Google and I'm borrowing the idea from him.
2020-01-23 Nixify repoWilliam Carroll1-0/+33
Using @tazjin's depot/default.nix to bootstrap this project. I'll be borrowing his Nix idioms until I better understand Nix and have preferences of my own.
2020-01-23 Support .envrcWilliam Carroll1-0/+1
Add `NIX_PATH` aliases for `depot` and `universe`.
2020-01-23 Attempt to package CL unit testing with NixWilliam Carroll7-0/+128
My first foray trying to package Common Lisp with Nix. I'm using @tazjin's buildLisp and other libraries, all of which I'm importing as `tpkgs`, and all of which have been a tremendous boon to my productivity.
2020-01-23 Support Common LispWilliam Carroll1-0/+15
Adding some Common Lisp here to get the party started! *cues music*
2020-01-22 Practice dijkstra's algorithmWilliam Carroll1-0/+26
Getting some practice with Python's heapq module (which I'm unsure if I used correctly) to do a priority-first-traversal of a graph: known as Dijkstra's algorithm.
2020-01-22 Complete which-appears-twiceWilliam Carroll1-0/+29
Solves the InterviewCake.com problem that asks us to write a function that returns the number, y, that occurs twice in a list, xs, where xs is an unsorted list of integers from 1..n with a length of n + 1.
2020-01-22 Complete reverse-linked-list problemWilliam Carroll1-0/+74
Completing the deceptively tricky reverse-linked-list problem from InterviewCake.com.
2020-01-22 Create org table of sorting algorithms and their efficiencyWilliam Carroll1-0/+6
This is just a small org table that I created to help me Fun fact: In Emacs, you can insert literal TAB character by pressing `C-q TAB`. For creating tables, using TAB characters feels perfectly acceptable. Perhaps the TAB name comes from TABle.
2020-01-22 Complete find-rotation-pointWilliam Carroll1-0/+55
Solves an InterviewCake.com problem that returns the index of the element in a list that should be the first element in that list. It's an exercise that's useful for seeing other applications of a binary search.
2020-01-22 Complete string permutations problemWilliam Carroll1-0/+56
Solves an InterviewCake.com problem that returns all of the permutations of a string input. The problem states that it's acceptable to assume that your input string will not have repeated characters, which is why using a Set is acceptable. I like this solution because it builds a permutations tree and then assembles all of the permutations by doing a DFT over that tree.
2020-01-22 Complete balanced binary tree problemWilliam Carroll1-0/+123
Supporting a function that returns true if a tree has no two leaf nodes with depth differences greater than 1.
2020-01-18 Begin tests for Haskell File moduleWilliam Carroll2-0/+56
Cameron sent over some property tests for his File.split function, which is a part of a larger effort to port f.el, a nice library for working with file paths, over to Haskell.
2020-01-18 Complete practice algorithms from InterviewCake.comWilliam Carroll3-0/+161
While I've done these algorithms before, I'm preparing for an on-site with DeepMind, so I created a subdirectory called deepmind where I'm storing my second attempts at these problems. The idea of storing them in a second directory is to remove the urge to check my existing solutions that also exist in this repository.
2020-01-17 Add DeepMind subdirectoryWilliam Carroll1-0/+64
I need to prepare for my on-site with DeepMind, so I'll host some attempts to solve data structures and algorithms questions here.
2020-01-15 Beging work to port f.el to HaskellWilliam Carroll3-0/+123
This is a work-in-progress. I'd like to add a README to this project to explain my intention. The goal, roughly, is to port Elisp's fantastic f.el module to Haskell. I consider Haskell APIs to be useful but somewhat sloppily designed. In the same spirit as Elixir wrapping Erlang APIs, many of the functions I intend to define will simply wrap existing Haskell APIs, but with a hopefully cleaner API that I find more intuitive.
2020-01-15 Add InterviewCake.com examplesWilliam Carroll52-0/+3737
Adds some of the code I generated while studying for a role transfer at Google using the fantastic resource, InterviewCake.com. This work predates the mono-repo. I should think of ways to DRY up this code and the code in crack_the_coding_interview, but I'm afraid I'm creating unnecessary work for myself that way.
2020-01-15 Add "Crack the Coding Interview" examplesWilliam Carroll2-0/+51
I believe I have multiple other snippets and attempts scattered across /tmp, ~/programming, and other directories. Again, I created these files and others before the mono-repo.
2020-01-15 Upload my 2019 Advent of Code attemptsWilliam Carroll11-0/+773
Well, unexpectedly (perhaps naively so), I only made it to Day 7. I created these before I stumbled upon the idea of the mono-repository; otherwise, I like to think I would have more granular commits introducing this work.
2020-01-15 Initialize repoWilliam Carroll2-0/+15
Adding a README and a basic .gitignore to initialize this mono-repo. I'm quite excited about this undertaking!