Come si impone il tipo di campi in questa struttura?Come impongo che il campo di una struttura sia di qualche tipo?
#lang racket
(struct Car (model year))
Ho provato con un contratto (ma visto che sono nuovo al racket, questo non funziona, ovviamente ...: P)
(provide (contract-out
[Car (string? integer? . -> . Car?)]))
esempio: Questo succeds ma non dovrebbe ...
(define my-car (Car 2008 "A3"))
Purtroppo, non sembra essere scritto da nessuna parte come per ottenere questo fatto.
BTW una cosa bella di contratti è che non si limitano a "tipi" in C/C++ senso. Per esempio se l'automobile fosse stata inventata nel 1769, allora il tuo contratto per 'year' potrebbe essere' (e/c intero? (>/C 1768)) 'invece di solo' intero? '. ;) –
Grazie mille, ha funzionato perfettamente :) – TesX