anchor.diff:  
       set sessionoptions-=options
   
  -    source ${sha1Vim}/plugin/sha1.vim
  +    function! Sha1(text)
  +      let hash = system('${sha1Cmd} "' . a:text . '"')
  +      return hash
  +    endfunction
   
       function! SessionPath()
  -      return "${variables.homeDir}/.vim-sessions/" . ProjectName() . "-" . sha1#sha1( getcwd() ) . ".vim"
  +      return "${variables.homeDir}/.vim-sessions/" . ProjectName() . "-" . Sha1( getcwd() ) . ".vim"
       endfunction
   
       function! WipeAll()
  
positive.code:         \ execute "mksession! " . SessionPath()
  
      function! MySessionLoad()
        if argc() == 0 && filereadable(SessionPath())
          " call WipeAll()
          execute "source " . SessionPath()
        endif
      endfunction
  
  
negative.code:   all-hies = import (fetchTarball "https://github.com/infinisil/all-hies/tarball/d98bdbff3ebdab408a12a9b7890d4cf400180839") {};
    hie = (all-hies.selection { selector = p: { inherit (p) ghc865; }; });
  
    sha1Cmd = pkgs.writeScript "sha1.sh" ''
      #!${pkgs.stdenv.shell}
      echo -n "$@" | ${pkgs.coreutils}/bin/sha1sum | ${pkgs.gawk}/bin/awk '{printf $1}'
     '';
  
    ginitVim = pkgs.writeText "ginit.vim" ''
      if exists('g:fvim_loaded')
  