I tried some simple examples of Typed Racket recently and then I thought I
could try some things with contracts too.
However, I do not seem to be able to contract-out any Typed Racket struct. For
example:
~~~
#lang typed/racket
(struct WordMetadata
([id : String]
[learned : Boolean]
[description : String]))
(provide (contract-out
[struct WordMetadata
(id string?)
(learned boolean?)
(description string?)]))
~~~
would underline the parenthesis immediately before contract-out, telling me
that:
~~~
contract-out: not a provide sub-form
~~~
The simple examples in the docs always use:
~~~
#lang racket
~~~
After a lot of wondering what I am doing wrong, I am guessing, that because
Typed Racket creates its own contracts for the types of the structs, I cannot
put contracts on them and contract-out does not accept such structs, as opposed
to structs of #lang racket.
However, I am only guessing. (Is this correct?)
And if if is correct or at least something in that direction, does it even make
sense to combine Typed Racket with contracts, or am I maybe trying to do
something which does not really make sense?
--
You received this message because you are subscribed to the Google Groups
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.