Hey, this is my blog

It is somewhat abandoned.

  • Using Custom Packages in NixOs Configuration File

    Here is a problem we encountered with NixOS:

    The nix-channel we were on didn’t have the latest version of something we needed. This happened recently when my coworker upgraded to Postgres 9.5 from 9.4 but the PostGIS version in nixpkgs hadn’t been updated to a 9.5 compatible version.

  • More Scala Groups And Tuples

    Continuing from here, I have lists of tuples and I want to group them. Here I have a list of 4-tuples and I want to group the second tuple by the first. The fact that I need to do this probably represents some greater problem, but that is a story for another time

    import shapeless._
    import syntax.std.tuple._
    import poly._
    
    object GroupLists {
    def group1TwoExtra[A,B,C,D](t : List[(A,B,C,D)]) : List[(A,List[B],C,D)] = {
          val map = LinkedHashMap[A, LinkedHashSet[B]]()
          val mapOther = scala.collection.mutable.Map[A,(C,D)]()
          for (i <- t) {
            val key = i.head
            map(key) = map.lift(key).getOrElse(LinkedHashSet[B]()) + i.drop(1).head
            mapOther += (key -> i.drop(2))
          }
          map.map(b => (b._1, b._2.toList) ++ mapOther(b._1)).toList
        }

Tags

NakedObjectsFramework antlr aop attribute-based-caching bitcoin blog bluetooth books brain_gym c# ci clojure comedy cte data draft emacs ergodox essay euler f# faq field-level-authorization fitness git good-judgement-project gym hakyll haskell haskell-is-hard humor ideas keyboard lets-split merging nix nixos nparsec parsec parser parser-combinator paul-graham planck postgres postsharp prediction presentation release row-level-authorization scala slick tags thinkpad tuples update windows wordpress wssf