changelog shortlog graph tags branches changeset files file revisions raw help

Mercurial > core / annotate lisp/lib/obj/temperature.lisp

changeset 698: 96958d3eb5b0
parent: 956fe7929a7c
author: Richard Westhaver <ellis@rwest.io>
date: Fri, 04 Oct 2024 22:04:59 -0400
permissions: -rw-r--r--
description: fixes
226
956fe7929a7c temps, db, etc
Richard Westhaver <ellis@rwest.io>
parents: 224
diff changeset
1
 ;;; obj/temperature.lisp --- Temperature objects and conversions
956fe7929a7c temps, db, etc
Richard Westhaver <ellis@rwest.io>
parents: 224
diff changeset
2
 
956fe7929a7c temps, db, etc
Richard Westhaver <ellis@rwest.io>
parents: 224
diff changeset
3
 ;; In most cases you're better off using the direct conversion
956fe7929a7c temps, db, etc
Richard Westhaver <ellis@rwest.io>
parents: 224
diff changeset
4
 ;; functions on literal numbers, but defining structs is good for
956fe7929a7c temps, db, etc
Richard Westhaver <ellis@rwest.io>
parents: 224
diff changeset
5
 ;; printing and other utility methods.
956fe7929a7c temps, db, etc
Richard Westhaver <ellis@rwest.io>
parents: 224
diff changeset
6
 
956fe7929a7c temps, db, etc
Richard Westhaver <ellis@rwest.io>
parents: 224
diff changeset
7
 ;;; Code:
224
fdea20982c25 deferror
Richard Westhaver <ellis@rwest.io>
parents: 220
diff changeset
8
 (in-package :obj/temperature)
226
956fe7929a7c temps, db, etc
Richard Westhaver <ellis@rwest.io>
parents: 224
diff changeset
9
 
956fe7929a7c temps, db, etc
Richard Westhaver <ellis@rwest.io>
parents: 224
diff changeset
10
 (defvar *default-temperature-unit* :fahrenheit)
956fe7929a7c temps, db, etc
Richard Westhaver <ellis@rwest.io>
parents: 224
diff changeset
11
 
956fe7929a7c temps, db, etc
Richard Westhaver <ellis@rwest.io>
parents: 224
diff changeset
12
 (deftype temperature-unit-designator () '(member :fahrenheit :celsius :kelvin :rankine))
956fe7929a7c temps, db, etc
Richard Westhaver <ellis@rwest.io>
parents: 224
diff changeset
13
 
956fe7929a7c temps, db, etc
Richard Westhaver <ellis@rwest.io>
parents: 224
diff changeset
14
 (defstruct temperature
956fe7929a7c temps, db, etc
Richard Westhaver <ellis@rwest.io>
parents: 224
diff changeset
15
   (degrees 0 :type single-float)
956fe7929a7c temps, db, etc
Richard Westhaver <ellis@rwest.io>
parents: 224
diff changeset
16
   (scale *default-temperature-unit* :type temperature-unit-designator))