about summary refs log tree commit diff
path: root/third_party/lisp/closer-mop.nix
blob: 21fb3ba14befa7b868391880893a037b09df7238 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# Closer to MOP is a compatibility layer that rectifies many of the
# absent or incorrect CLOS MOP features across a broad range of Common
# Lisp implementations
{ depot, pkgs, ... }:

let src = pkgs.fetchFromGitHub {
  owner = "pcostanza";
  repo = "closer-mop";
  rev = "8ec9577029b08ade5978236121c9ac276f78d8be"; # 2021-07-30
  sha256 = "0dm8xsa3hzpxjd7x248pbzd8blw01a8ls7spalzgbg1g7vbn6zg5";
};
in depot.nix.buildLisp.library {
  name = "closer-mop";

  srcs = [
    "${src}/closer-mop-packages.lisp"
    "${src}/closer-mop-shared.lisp"
    {
      sbcl = "${src}/closer-sbcl.lisp";
      ecl = "${src}/closer-ecl.lisp";
      ccl = "${src}/closer-clozure.lisp";
    }
  ];
}