Hi Matthew,
I don't understand why this is the right fix. In particular, the
keyword application form still uses the inferred name in a way that
doesn't make sense to me. Can you say more?
Sam
On Sat, Dec 14, 2013 at 11:35 PM, Matthew Flatt mfl...@cs.utah.edu wrote:
I've pushed a repair.
Sorry --- it looks like I fixed the problem for a similar example,
(let ([foo ((lambda (x #:a a) 1) 1 2)]) 5)
but not for your examples. I'll try again.
At Sun, 15 Dec 2013 14:26:09 -0500, Sam Tobin-Hochstadt wrote:
Hi Matthew,
I don't understand why this is the right fix. In particular,
I've pushed a repair.
At Mon, 9 Dec 2013 16:56:49 -0500, Sam Tobin-Hochstadt wrote:
On Mon, Dec 9, 2013 at 4:50 PM, Robby Findler
ro...@eecs.northwestern.edu wrote:
I'm not really familiar with the way the keyword expansion works. I was just
trying to suggest obvious reasons why the code
Currently, this program fails with a somewhat bizarre type error:
#lang typed/racket
(: foo ([#:k Any] - Integer))
(define (foo #:k [s #f]) 0)
(let: ([i : Integer (foo #:k #t)]) i)
The reason is that the expansion of keyword applications generates a
name to use for the function
Is it possible that that name can leak out in an error message?
Robby
On Mon, Dec 9, 2013 at 3:10 PM, Sam Tobin-Hochstadt sa...@cs.indiana.eduwrote:
Currently, this program fails with a somewhat bizarre type error:
#lang typed/racket
(: foo ([#:k Any] - Integer))
(define
I haven't found a way to make it happen yet. But even so, it seems
like the wrong name.
Sam
On Mon, Dec 9, 2013 at 4:16 PM, Robby Findler
ro...@eecs.northwestern.edu wrote:
Is it possible that that name can leak out in an error message?
Robby
On Mon, Dec 9, 2013 at 3:10 PM, Sam
Oh, now I get what you meant in your original message. Right.
Robby
On Mon, Dec 9, 2013 at 3:29 PM, Sam Tobin-Hochstadt sa...@cs.indiana.eduwrote:
I haven't found a way to make it happen yet. But even so, it seems
like the wrong name.
Sam
On Mon, Dec 9, 2013 at 4:16 PM, Robby Findler
Aha, I found the example:
(let ([foo ((lambda (#:kk x) (λ (x) x)) #:k 0)]) (foo 5))
Has this error:
application: procedure does not expect an argument with given keyword
procedure: foo
given keyword: #:k
arguments...:
#:k 0
Note that if you make the keywords the same, `foo` is
Would it work to make it use syntax-local-infer-name but only use the
symbolic part of that name?
Robby
On Mon, Dec 9, 2013 at 3:34 PM, Sam Tobin-Hochstadt sa...@cs.indiana.eduwrote:
Aha, I found the example:
(let ([foo ((lambda (#:kk x) (λ (x) x)) #:k 0)]) (foo 5))
Has this error:
So, you agree that we should just change this?
On Mon, Dec 9, 2013 at 4:35 PM, Robby Findler
ro...@eecs.northwestern.edu wrote:
Oh, now I get what you meant in your original message. Right.
Robby
On Mon, Dec 9, 2013 at 3:29 PM, Sam Tobin-Hochstadt sa...@cs.indiana.edu
wrote:
I haven't
Yes, that would work, but I still don't see why that's a useful name to use.
Sam
On Mon, Dec 9, 2013 at 4:37 PM, Robby Findler
ro...@eecs.northwestern.edu wrote:
Would it work to make it use syntax-local-infer-name but only use the
symbolic part of that name?
Robby
On Mon, Dec 9, 2013 at
I'm not really familiar with the way the keyword expansion works. I was
just trying to suggest obvious reasons why the code would do such a thing.
But if you find that changing the name changes the error message, then
changing that would be bad.
Sorry for the noise.
Robby
On Mon, Dec 9, 2013
On Mon, Dec 9, 2013 at 4:50 PM, Robby Findler
ro...@eecs.northwestern.edu wrote:
I'm not really familiar with the way the keyword expansion works. I was just
trying to suggest obvious reasons why the code would do such a thing.
But if you find that changing the name changes the error message,
You're right. I misread the code. Yes, changing it seems good.
Robby
On Mon, Dec 9, 2013 at 3:56 PM, Sam Tobin-Hochstadt sa...@cs.indiana.eduwrote:
On Mon, Dec 9, 2013 at 4:50 PM, Robby Findler
ro...@eecs.northwestern.edu wrote:
I'm not really familiar with the way the keyword expansion
14 matches
Mail list logo