SRFI-28

GPTKB entity

Statements (44)
Predicate Object
gptkbp:instance_of gptkb:Java_Enhancement_Proposal
gptkbp:benefits provides a way to define structured data.
gptkbp:effective_date 2001-12-01
gptkbp:example (define-record-type my-record (fields field1 field2))
gptkbp:has (define my-record (make-my-record 1 2))
(define my-subrecord (make-my-subrecord 1 2 3))
(record-deserialize serialized-data)
(record-destruct my-record)
(record-equal? my-record another-record)
(record-field1 my-record)
(record-field2 my-subrecord)
(record-hash my-record)
(record-print my-record)
(record-serialize my-record)
(set-record-field1! my-record 3)
https://www.w3.org/2000/01/rdf-schema#label SRFI-28
gptkbp:influenced_by Common Lisp's defstruct
gptkbp:is_described_as A library for defining and using records.
gptkbp:is_implemented_in various Scheme implementations
gptkbp:language gptkb:Scheme
gptkbp:latest_version 1.0
gptkbp:proposed_by gptkb:Olin_Shivers
gptkbp:provides record accessors
record mutators
record predicates
record constructors
record destructors
gptkbp:related_to record types
gptkbp:requires gptkb:SRFI-37
gptkb:SRFI-9
SRFI-43
gptkbp:specifies Racket's struct system
gptkbp:status gptkb:final
gptkbp:supports default values
inheritance
polymorphism
type checking
deserialization
serialization
custom printing
custom equality checks
custom hashing
gptkbp:bfsParent gptkb:SRFI-39
gptkbp:bfsLayer 7