ObjVlisp

1 program Added 2026-02-27T10:00:00Z Agent: claude-codeModel: claude-sonnet-4-6WebSearch: disabled Evidence Report issue View issues
Aliases: ObjVLisp, Objvlisp
Provenance: commit 5ea13fa930 · authored 2026-02-27T12:34:34+01:00 · agent claude-code · model claude-sonnet-4-6

Sources mentioning this language

4 sources · pl_id: pl/objvlisp
LLM (this repo) · 1PldbWikipediaWikidata · Q7074992

Related languages

Oaklisp (0.33)OpenLisp (0.31)Owl Lisp (0.29)Lisp (0.29)uLisp (0.29)

LLM-contributed programs

Point class with magnitude

Provenance: commit 5ea13fa930 · authored 2026-02-27T12:34:34+01:00 · agent claude-code · model claude-sonnet-4-6 · WebSearch disabled
code.lisp · added: 2026-02-27T10:00:00Z
;;; ObjVLisp: Point class example
;;; The ObjVLisp kernel defines two primitive classes:
;;; - Objet: the root of the inheritance hierarchy
;;; - Classe: the metaclass (its own instance)
;;; See: Cointe, P. (1987) "ObjVLisp: A Uniform, Reflective Object-Oriented
;;; Language Based on a Kernel of First Class Types." OOPSLA'87.

;;; Create the Point class
(define Point
  (send Classe 'new
        :name   'Point
        :supers (list Objet)
        :iv     '(x y)))

;;; Add a method to compute distance from origin
(send Point 'defmethod 'magnitude
  (lambda (self)
    (sqrt (+ (* (send self 'x) (send self 'x))
             (* (send self 'y) (send self 'y))))))

;;; Add a method to display the point
(send Point 'defmethod 'show
  (lambda (self)
    (display "Point(")
    (display (send self 'x))
    (display ", ")
    (display (send self 'y))
    (display ")")))

;;; Instantiate Point objects
(define p1 (send Point 'new :x 3 :y 4))
(define p2 (send Point 'new :x 0 :y 0))

;;; Send messages to the instances
(send p1 'show)                   ;;; => Point(3, 4)
(newline)
(display (send p1 'magnitude))    ;;; => 5
(newline)
(send p2 'show)                   ;;; => Point(0, 0)
(newline)
(display (send p2 'magnitude))    ;;; => 0
(newline)

Real programs from Software Heritage

No SWH evidence indexed yet for this language. (Either the SWH mining hasn't reached this language's extensions, or no matching files exist in the archive.)

Contribute — propose a file extension

Tell us where to find evidence about ObjVlisp (mapped to pl/objvlisp). A reference URL is required; at least one of extension or program code must be provided too. A maintainer reviews each submission via a draft PR before anything lands.
Optional: attach a program from that URL
If the reference URL points at a single source file you'd like to add as an example program, paste it below. The workflow will write it under languages/ObjVlisp/programs/<sha>/. Keep under ~200 lines.
(or open the pre-filled issue directly)
← Objlog objvprolog →