chicken-janitors
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Chicken-janitors] #1445: Support parameterised hash table type decl


From: Chicken Trac
Subject: Re: [Chicken-janitors] #1445: Support parameterised hash table type declarations
Date: Thu, 22 Feb 2018 19:46:21 -0000

#1445: Support parameterised hash table type declarations
-------------------------------------+-------------------------------------
            Reporter:  evhan         |      Owner:
                Type:  enhancement   |     Status:  new
            Priority:  not urgent    |  Milestone:  someday
  at all                             |
           Component:  scrutinizer   |    Version:  5.0
          Resolution:                |   Keywords:  scrutiniser, srfi-69
Estimated difficulty:  medium        |
-------------------------------------+-------------------------------------

Comment (by megane):

 Here's another prototype.

 These stay same:
 - (struct foo #f) == (struct foo)
 - (struct foo #f) matches with (struct foo any-list)
 - If A and B are lists, then (struct foo A) and (struct foo B) only match
 if (= (length A) (length B)) and all the elements of A and B match.

 New things
 - does not simplify (struct foo (* * ...))
 - smashes (struct foo (A B ...)) into (struct foo (* * ...))

 I think hash-table-set! cannot be #:clean. For example vector-set! is not.
 So you cannot get key/value related type warnings from setters, unless
 -strict-types is used.

--
Ticket URL: <https://bugs.call-cc.org/ticket/1445#comment:3>
CHICKEN Scheme <https://www.call-cc.org/>
CHICKEN Scheme is a compiler for the Scheme programming language.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]