Do you perhaps have some other binding shadowing the binding of `:` from Typed Racket? That produces the error message you get when I try it.
Sam On Sat, May 30, 2020 at 1:32 PM Hendrik Boom <hend...@topoi.pooq.com> wrote: > > I'm sorry to keep pestering this list, but I'm out of my depth with the > detailed syntax (and semantics) of typed Racket. But I'm doggedly > ploughing on. > > I'm having trouble with the 'let' line in the 'pointer-to' function listed > later: > > (let ([vt : Ffi-type (cast ((inst hash-ref Ffi-type Ffi-type) type-to-vector > type #f) Ffi-type)]) > > Yes, there's an unbalanced parenthesis because this sin't the end of the > let-expression. > > The error message is > > let: expected type-annotated identifier > parsing context: > while parsing annotated-binding > while parsing optionally type-annotated binding in: (vt : Ffi-type (cast > ((inst hash-ref Ffi-type Ffi-type) type-to-vector type #f) Ffi-type)) > > I can't see the error. 'vt : Ffi-type' looks like a type-annotated > identifier to me. And it seems to have the right number of parentheses > in front of it, followed by an expression whose vlue is to be bound to > 'vt'. > > Here's the function it's part of: > > > (define (pointer-to [type : T-Type] . [args : T-Size]) : T-Type ; TODO: > rename args to size-args > (if (and (equal? args '(1)) (not (eq? type '_void))) > (mode-dependent-type > `(_ptr i ,type) `(_ptr o ,type)) > (case type > ((_void) '_pointer/intptr) > ((_byte _uint8) (mode-dependent-type > '_string*/utf-8 > (if (null? args) > '_bytes > `(_bytes o ,@ args)))) > (else > (let ([vt : Ffi-type (cast ((inst hash-ref Ffi-type Ffi-type) > type-to-vector type #f) Ffi-type)]) > (if vt > (mode-dependent-type > `(,vt i) > (if (null? args) > vt > `(,vt o ,@ args))) > (mode-dependent-type > `(_vector i ,type) > (if (null? args) > '_pointer > `(_vector o ,type ,@ args))))))))) > > -- > 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 racket-users+unsubscr...@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/racket-users/20200530173230.bsrp5skkc35ot34h%40topoi.pooq.com. -- 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 racket-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/racket-users/CAK%3DHD%2BYkANXdevMc%3DiSTFaWnpzU-6ofNWF2qJtWyR-f6ES2gLg%40mail.gmail.com.