On Tue, Nov 20, 2018 at 4:38 AM komuW <[email protected]> wrote:
>>
>> A contract can also be written in terms of a struct:
>>
>> contract linkedListNode {
>> X struct {
>> next *X
>> }
>> }
>
>
> In this example taken from the linked document; what is X?
X is the name of the struct type. This struct satisfies that contract:
type node struct {
next *node
}
This does not:
type node struct {
next *int
}
>
>
> On Tuesday, 20 November 2018 05:38:31 UTC+3, Burak Serdar wrote:
>>
>> Hi,
>>
>> A while ago I sent an email to this list proposing an alternative way
>> to specify contracts using existing types, with a "like" keyword to
>> represent contracts on primitives. The idea stirred up some
>> discussion, I got some useful feedback, and eventually, it died down.
>> The idea stuck with me though, because it wasn't complete when I
>> proposed it, it had inconsistencies and unresolved problems. It turned
>> into this puzzle that I kept working on on the side, I started writing
>> a contracts/generics simulator, which I never finished, but it allowed
>> me to figure out a way to solve the problems the original idea had. So
>> the latest version of that proposal is now here:
>>
>> https://gist.github.com/bserdar/8f583d6e8df2bbec145912b66a8874b3
>
> --
> You received this message because you are subscribed to the Google Groups
> "golang-nuts" 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.
--
You received this message because you are subscribed to the Google Groups
"golang-nuts" 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.