changelog shortlog graph tags branches changeset files revisions annotate raw help

Mercurial > core / lisp/lib/obj/equiv.lisp

changeset 230: 282991a71fe5
child: cb6effbda1dd
author: Richard Westhaver <ellis@rwest.io>
date: Sun, 17 Mar 2024 22:21:29 -0400
permissions: -rw-r--r--
description: fix ansi and add equiv
1 ;;; obj/equiv.lisp --- Object Equivalence
2 
3 ;; extended equivalence API for Lisp objects
4 
5 ;;; Refs:
6 
7 ;; https://en.wikipedia.org/wiki/E-graph
8 
9 ;; https://gitlab.com/fstamour/catchall/-/tree/master/egraph
10 
11 ;; https://en.wikipedia.org/wiki/Disjoint-set_data_structure
12 
13 ;; https://clojure.org/guides/equality
14 
15 ;;; Code:
16 (in-package :obj/equiv)
17 
18 (defgeneric equiv (a b))
19 
20 (defgeneric eqv (a b))
21 
22 (defgeneric nequiv (a b))
23 
24 (defgeneric neqv (a b))