Type strategy for Scheme
Lassi Kortela
(09 Nov 2022 22:54 UTC)
|
Re: Type strategy for Scheme
Marc Nieper-Wißkirchen
(10 Nov 2022 07:07 UTC)
|
Re: Type strategy for Scheme
Marc Nieper-Wißkirchen
(10 Nov 2022 07:42 UTC)
|
Re: Type strategy for Scheme
Peter Bex
(10 Nov 2022 08:05 UTC)
|
Re: Type strategy for Scheme
Philip McGrath
(10 Nov 2022 08:54 UTC)
|
Re: Type strategy for Scheme Lassi Kortela (10 Nov 2022 09:49 UTC)
|
Re: Type strategy for Scheme
Lassi Kortela
(10 Nov 2022 09:08 UTC)
|
Re: Type strategy for Scheme
Marc Feeley
(10 Nov 2022 23:34 UTC)
|
Re: Type strategy for Scheme
Lassi Kortela
(11 Nov 2022 19:17 UTC)
|
Re: Type strategy for Scheme
Marc Feeley
(11 Nov 2022 21:34 UTC)
|
Re: Type strategy for Scheme
Lassi Kortela
(12 Nov 2022 21:58 UTC)
|
Re: Type strategy for Scheme
Marc Nieper-Wißkirchen
(12 Nov 2022 22:52 UTC)
|
Re: Type strategy for Scheme
Lassi Kortela
(12 Nov 2022 23:14 UTC)
|
Re: Type strategy for Scheme
Marc Nieper-Wißkirchen
(13 Nov 2022 09:41 UTC)
|
Re: Type strategy for Scheme
Lassi Kortela
(13 Nov 2022 11:59 UTC)
|
Re: Type strategy for Scheme
John Cowan
(13 Nov 2022 19:52 UTC)
|
Re: Type strategy for Scheme
Lassi Kortela
(13 Nov 2022 20:22 UTC)
|
Re: Type strategy for Scheme
Marc Nieper-Wißkirchen
(13 Nov 2022 20:35 UTC)
|
Re: Type strategy for Scheme
Lassi Kortela
(13 Nov 2022 21:41 UTC)
|
Re: Type strategy for Scheme
Marc Feeley
(14 Nov 2022 00:03 UTC)
|
Re: Type strategy for Scheme
Lassi Kortela
(14 Nov 2022 09:36 UTC)
|
Re: Type strategy for Scheme
Marc Feeley
(14 Nov 2022 16:27 UTC)
|
Re: Type strategy for Scheme
Lassi Kortela
(14 Nov 2022 19:58 UTC)
|
Re: Type strategy for Scheme
John Cowan
(13 Nov 2022 20:40 UTC)
|
Re: Type strategy for Scheme
Marc Nieper-Wißkirchen
(13 Nov 2022 20:42 UTC)
|
Re: Type strategy for Scheme
Panicz Maciej Godek
(20 Nov 2022 21:59 UTC)
|
Re: Type strategy for Scheme
Per Bothner
(20 Nov 2022 22:58 UTC)
|
>> (vector 1 'foo '()) Cannot be typed in H-M. The type of (values 1 'foo '()) would be (values integer symbol (list 'a)). >> #0=(#0#) Does not terminate / "bottom" of some flavor. >> (syntax (let ((x 1)) (+ x x))) Syntax object. > And, not to forget, what if you do (vector-set! x 1 "bar") later in the > program. Common Lisp: > (setf (aref (make-array 3 :element-type '(unsigned-byte 8)) 0) "new value") *** - SYSTEM::STORE: "new value" does not fit into #(0 0 0), bad type The Scheme equivalent of (make-array 3 :element-type '(unsigned-byte 8)) is (make-u8vector 3). You can have a general vector type (vector any) if type system has an "any" type, as CL does. Racket has one too; I'm reading the materials linked by Philip to try to understand how it combines the "any" type with type inference.