Re: [racket-users] [racket users] describe variant issue?

2020-09-17 Thread Matthew Flatt
A PR to improve `struct->vector` for CS would be welcome. There
relevant code is here:

https://github.com/racket/racket/blob/master/racket/src/cs/rumble/struct.ss#L1221

As you'll see, the synthesized name is currently whatever comes out of
Chez Scheme's `inspect/object` interface. It could instead involve a
case dispatch on fixnums, bignums, etc., to improve on the `simple`
label that `inspect/object` produces. There may also be Chez Scheme
versus Racket terminology to bridge, such as `byte-string` instead of
`bytevector`.

At Thu, 17 Sep 2020 13:30:02 -0400, Sam Tobin-Hochstadt wrote:
> We may change Racket CS so that it produces the same results, but in
> general the results of `struct->vector` on values that are opaque is
> not something that should be relied on.
> 
> The describe library is, I believe, unmaintained, and hasn't been
> updated in many years.
> 
> Sam
> 
> On Thu, Sep 17, 2020 at 1:17 PM Kevin Forchione  wrote:
> >
> >
> >
> > > On Sep 15, 2020, at 3:11 PM, Sam Tobin-Hochstadt  
> wrote:
> > >
> > > This is a difference in behavior between Racket BC and Racket CS, and
> > > not something in the describe library:
> > >
> > > [samth@homer:~/work/teaching/c211 (master) racket-7.8] racket
> > > Welcome to Racket v7.8.
> > >> (struct->vector 5)
> > > '#(struct:fixnum-integer ...)
> > >> ^D
> > > [samth@homer:~/work/teaching/c211 (master) plt] racket
> > > Welcome to Racket v7.8.0.9 [cs].
> > >> (struct->vector 5)
> > > '#(struct:simple …)
> >
> >
> > Is this going to be the go-forward stance for Racket? Or is this still a 
> work in progress? Will it be left up to the code to determine types through 
> predicate checking?
> >
> > Thanks!
> >
> > Kevin
> >
> > --
> > 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/F42194F9-ADA3-4158-BCBA-3A65F210
> 8AB4%40gmail.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%2BaiK06QrfOc2FLjTCFzvvo
> -cPpbSGChQ9yAnon_tp6wVw%40mail.gmail.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/20200917113349.2e1%40sirmail.smtps.cs.utah.edu.


Re: [racket-users] [racket users] describe variant issue?

2020-09-17 Thread Sam Tobin-Hochstadt
We may change Racket CS so that it produces the same results, but in
general the results of `struct->vector` on values that are opaque is
not something that should be relied on.

The describe library is, I believe, unmaintained, and hasn't been
updated in many years.

Sam

On Thu, Sep 17, 2020 at 1:17 PM Kevin Forchione  wrote:
>
>
>
> > On Sep 15, 2020, at 3:11 PM, Sam Tobin-Hochstadt  
> > wrote:
> >
> > This is a difference in behavior between Racket BC and Racket CS, and
> > not something in the describe library:
> >
> > [samth@homer:~/work/teaching/c211 (master) racket-7.8] racket
> > Welcome to Racket v7.8.
> >> (struct->vector 5)
> > '#(struct:fixnum-integer ...)
> >> ^D
> > [samth@homer:~/work/teaching/c211 (master) plt] racket
> > Welcome to Racket v7.8.0.9 [cs].
> >> (struct->vector 5)
> > '#(struct:simple …)
>
>
> Is this going to be the go-forward stance for Racket? Or is this still a work 
> in progress? Will it be left up to the code to determine types through 
> predicate checking?
>
> Thanks!
>
> Kevin
>
> --
> 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/F42194F9-ADA3-4158-BCBA-3A65F2108AB4%40gmail.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%2BaiK06QrfOc2FLjTCFzvvo-cPpbSGChQ9yAnon_tp6wVw%40mail.gmail.com.


Re: [racket-users] [racket users] describe variant issue?

2020-09-17 Thread Kevin Forchione



> On Sep 15, 2020, at 3:11 PM, Sam Tobin-Hochstadt  wrote:
> 
> This is a difference in behavior between Racket BC and Racket CS, and
> not something in the describe library:
> 
> [samth@homer:~/work/teaching/c211 (master) racket-7.8] racket
> Welcome to Racket v7.8.
>> (struct->vector 5)
> '#(struct:fixnum-integer ...)
>> ^D
> [samth@homer:~/work/teaching/c211 (master) plt] racket
> Welcome to Racket v7.8.0.9 [cs].
>> (struct->vector 5)
> '#(struct:simple …)


Is this going to be the go-forward stance for Racket? Or is this still a work 
in progress? Will it be left up to the code to determine types through 
predicate checking?

Thanks!

Kevin

-- 
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/F42194F9-ADA3-4158-BCBA-3A65F2108AB4%40gmail.com.


Re: [racket-users] [racket users] describe variant issue?

2020-09-15 Thread Sam Tobin-Hochstadt
This is a difference in behavior between Racket BC and Racket CS, and
not something in the describe library:

[samth@homer:~/work/teaching/c211 (master) racket-7.8] racket
Welcome to Racket v7.8.
> (struct->vector 5)
'#(struct:fixnum-integer ...)
> ^D
[samth@homer:~/work/teaching/c211 (master) plt] racket
Welcome to Racket v7.8.0.9 [cs].
> (struct->vector 5)
'#(struct:simple ...)

On Tue, Sep 15, 2020 at 5:47 PM Kevin Forchione  wrote:
>
> Hi guys,
> I’m not sure why the describe library’s variant is always returning ‘simple 
> regardless of numeric value. For instance, the docmentation says:
>
> (variant 1) -> fixnum-integer
>
> But when I run it under Dr Racket 7.8 [cs] it returns ‘simple for this, as 
> well as for 10.3  as well as pi, 2/3, and 0+1i.
>
> Any ideas why this is happening?
>
> Thanks!
>
> Kevin
>
> --
> 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/367E5C0C-FA1C-4546-A586-54135D264C6B%40gmail.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%2Bbwvpu2FGsqTwRkBVJEg9%2B6%2Bb5f1RUzXwofKDjaHsjZNw%40mail.gmail.com.