Re: [racket-dev] Purpose of typed/racket/no-check

2013-04-01 Thread Matthias Felleisen

On Mar 31, 2013, at 9:32 PM, Sam Tobin-Hochstadt wrote:

 My expectation when using typed/racket/no-check is that I won't get
 any type errors.


To me, the words no check mean just that: do not type-check the module. But I 
think it is okay to parse the types. I doubt people use this option when they 
wish to avoid a parse error in the type expressions. 



  While `define-predicate` can't work in that sense,
 we could just make `cast` always succeed, which I think would be
 helpful.
 
 I only use no-check to take a file that won't typecheck due to some
 problem I hope to fix, and just run it.  I think what you're
 suggesting would reduce its usefulness for some of those cases, and
 increase it in others.
 
 On Sun, Mar 31, 2013 at 5:44 PM, Eric Dobson eric.n.dob...@gmail.com wrote:
 There have been a couple recent bug reports because certain features
 need a type, such as cast and define-predicate.
 
 I was wondering whether TR/no-check should check that the types are
 well formed, but not check that the expressions are well typed? I'm
 thinking this would be less surprising to users, but wondering whether
 users would expect that type definition errors to still work in
 TR/no-check.
 _
  Racket Developers list:
  http://lists.racket-lang.org/dev
 _
  Racket Developers list:
  http://lists.racket-lang.org/dev


_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] Add Teachpack dialog can be very confusing

2013-04-01 Thread Matthias Felleisen

Tell 12 year old middle school students. 


On Mar 31, 2013, at 9:15 PM, Sam Tobin-Hochstadt wrote:

 I said this to you in person, but I continue to think that 2htdp should just 
 do away with the concept of teachpacks, and just use the require form always. 
 Even today, it could insert a require instead of modifying hidden state.
 
 Sam
 
 On Mar 31, 2013 6:45 PM, Matthias Felleisen matth...@ccs.neu.edu wrote:
 
 Correct, and we have run into this image problem for a while now.
 
 I think the most important improvements are:
 
 1. to swap the teachpack menus for 2e and 1e
 2. to increase the titles of all three panes so that it becomes clear what 
 you are dealing with
 
 Eventually the pane for 1e should become something almost hidden
 but we are not there yet.
 
 -- Matthias
 
 p.s. And yes, it would be nice if the window had a title such as add 
 teachpacks
 
 
 
 
 On Mar 23, 2013, at 5:49 PM, Sam Tobin-Hochstadt wrote:
 
  Opening up the Add Teachpack dialog presents the user with two lists
  of libraries, which overlap in exactly one case: image.ss. This
  makes it very easy for the user to choose the old image.ss library
  when working with HtDP2e. Further, there's no indication in DrRacket
  as to which one of these was chosen.
 
  I can think of a couple ways this could be improved: the HtDP2e
  prologue could be explicit about which pane of the dialog to look in,
  and the dialog itself could ask the user which book they're using.
  Also, it would be great if DrRacket said Teachpack: image.ss (from
  HtDP) in the language position. Or we could just hide the old
  teachpack.
 
  Sam
 
  PS: the Add Teachpack dialog has no title on my machine, or rather
  it's just titled DrRacket.
  _
   Racket Developers list:
   http://lists.racket-lang.org/dev
 

_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] Purpose of typed/racket/no-check

2013-04-01 Thread Eli Barzilay
20 minutes ago, Matthias Felleisen wrote:
 
 On Mar 31, 2013, at 9:32 PM, Sam Tobin-Hochstadt wrote:
 
  My expectation when using typed/racket/no-check is that I won't
  get any type errors.
 
 To me, the words no check mean just that: do not type-check the
 module. But I think it is okay to parse the types. I doubt people
 use this option when they wish to avoid a parse error in the type
 expressions.

As a semi-random data point, I sometime use my no-check language
(which is built on top of TR's) to show how things work in class
without getting all the types right (or when there's some problem with
the types).  In these cases I sometime use bogus type declarations
like (All (A B) ...), which IIUC wouldn't work anymore.  It's just
technically simpler and clearer to still use `:' instead of going back
to comments.  (But it's obviously a weak point.)

-- 
  ((lambda (x) (x x)) (lambda (x) (x x)))  Eli Barzilay:
http://barzilay.org/   Maze is Life!
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] Add Teachpack dialog can be very confusing

2013-04-01 Thread Sam Tobin-Hochstadt
I don't see why middle school students would have more trouble with
`require` than with any other aspect of the system.

Also, WeScheme just provides graphics libraries by default, which is
another option we could consider.

On Mon, Apr 1, 2013 at 9:10 AM, Matthias Felleisen matth...@ccs.neu.edu wrote:

 Tell 12 year old middle school students.


 On Mar 31, 2013, at 9:15 PM, Sam Tobin-Hochstadt wrote:

 I said this to you in person, but I continue to think that 2htdp should just
 do away with the concept of teachpacks, and just use the require form
 always. Even today, it could insert a require instead of modifying hidden
 state.

 Sam

 On Mar 31, 2013 6:45 PM, Matthias Felleisen matth...@ccs.neu.edu wrote:


 Correct, and we have run into this image problem for a while now.

 I think the most important improvements are:

 1. to swap the teachpack menus for 2e and 1e
 2. to increase the titles of all three panes so that it becomes clear what
 you are dealing with

 Eventually the pane for 1e should become something almost hidden
 but we are not there yet.

 -- Matthias

 p.s. And yes, it would be nice if the window had a title such as add
 teachpacks




 On Mar 23, 2013, at 5:49 PM, Sam Tobin-Hochstadt wrote:

  Opening up the Add Teachpack dialog presents the user with two lists
  of libraries, which overlap in exactly one case: image.ss. This
  makes it very easy for the user to choose the old image.ss library
  when working with HtDP2e. Further, there's no indication in DrRacket
  as to which one of these was chosen.
 
  I can think of a couple ways this could be improved: the HtDP2e
  prologue could be explicit about which pane of the dialog to look in,
  and the dialog itself could ask the user which book they're using.
  Also, it would be great if DrRacket said Teachpack: image.ss (from
  HtDP) in the language position. Or we could just hide the old
  teachpack.
 
  Sam
 
  PS: the Add Teachpack dialog has no title on my machine, or rather
  it's just titled DrRacket.
  _
   Racket Developers list:
   http://lists.racket-lang.org/dev


_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] Add Teachpack dialog can be very confusing

2013-04-01 Thread Stephen Bloch

On Apr 1, 2013, at 9:45 AM, Sam Tobin-Hochstadt sa...@ccs.neu.edu wrote:

 I don't see why middle school students would have more trouble with
 `require` than with any other aspect of the system.

I tend to agree with Sam on this one.  I haven't taught 12-year-old middle 
school students, but if they can handle (ellipse 50 30 solid purple), 
surely they can handle a boilerplate (require picturing-programs) or (require 
2htdp/image).

And as Sam points out, even if we keep the Add Teachpack dialog, it could 
work by inserting a require into the code.

 Also, WeScheme just provides graphics libraries by default, which is
 another option we could consider.

Bad idea; somebody might want to teach with his/her own version of the graphics 
libraries.  (I was in this boat before we bundled picturing-programs.)


Stephen Bloch
sbl...@adelphi.edu


_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] Purpose of typed/racket/no-check

2013-04-01 Thread David Van Horn

On 4/1/13 11:16 AM, Robby Findler wrote:

You could change the ellipsis to Integer. :)


Or no-check could bind ellipsis to some type.  This would be useful for 
sketching types out in no-check and then refining them to actual types 
in TR.


David



Robby


On Mon, Apr 1, 2013 at 8:23 AM, Eli Barzilay e...@barzilay.org
mailto:e...@barzilay.org wrote:

20 minutes ago, Matthias Felleisen wrote:
 
  On Mar 31, 2013, at 9:32 PM, Sam Tobin-Hochstadt wrote:
 
   My expectation when using typed/racket/no-check is that I won't
   get any type errors.
 
  To me, the words no check mean just that: do not type-check the
  module. But I think it is okay to parse the types. I doubt people
  use this option when they wish to avoid a parse error in the type
  expressions.

As a semi-random data point, I sometime use my no-check language
(which is built on top of TR's) to show how things work in class
without getting all the types right (or when there's some problem with
the types).  In these cases I sometime use bogus type declarations
like (All (A B) ...), which IIUC wouldn't work anymore.  It's just
technically simpler and clearer to still use `:' instead of going back
to comments.  (But it's obviously a weak point.)

--
   ((lambda (x) (x x)) (lambda (x) (x x)))  Eli
Barzilay:
http://barzilay.org/   Maze is Life!
_
   Racket Developers list:
http://lists.racket-lang.org/dev




_
   Racket Developers list:
   http://lists.racket-lang.org/dev



_
 Racket Developers list:
 http://lists.racket-lang.org/dev


Re: [racket-dev] Purpose of typed/racket/no-check

2013-04-01 Thread Eli Barzilay
An hour and a half ago, David Van Horn wrote:
 On 4/1/13 11:16 AM, Robby Findler wrote:
  You could change the ellipsis to Integer. :)

The time that I'd spend explaining why I wrote `Integer' makes the
comment route more appealing...


 Or no-check could bind ellipsis to some type.  This would be useful
 for sketching types out in no-check and then refining them to actual
 types in TR.

Well, I used ... in the natural sense of some stuff.  Having it
bound to some type sounds cute, but definitely too much work than it's
worth.  (At least IMO.)

-- 
  ((lambda (x) (x x)) (lambda (x) (x x)))  Eli Barzilay:
http://barzilay.org/   Maze is Life!
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] Add Teachpack dialog can be very confusing

2013-04-01 Thread Eli Barzilay
Two hours ago, Stephen Bloch wrote:
 
 I tend to agree with Sam on this one.  I haven't taught 12-year-old
 middle school students, but if they can handle (ellipse 50 30
 solid purple), surely they can handle a boilerplate (require
 picturing-programs) or (require 2htdp/image).

It could be simplified into some new simplified `require' that is
easier for kids -- like (use image).

-- 
  ((lambda (x) (x x)) (lambda (x) (x x)))  Eli Barzilay:
http://barzilay.org/   Maze is Life!
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] Add Teachpack dialog can be very confusing

2013-04-01 Thread Robby Findler
On Mon, Apr 1, 2013 at 9:49 AM, Stephen Bloch bl...@adelphi.edu wrote:


 On Apr 1, 2013, at 9:45 AM, Sam Tobin-Hochstadt sa...@ccs.neu.edu wrote:

  I don't see why middle school students would have more trouble with
  `require` than with any other aspect of the system.

 I tend to agree with Sam on this one.  I haven't taught 12-year-old middle
 school students, but if they can handle (ellipse 50 30 solid purple),
 surely they can handle a boilerplate (require picturing-programs) or
 (require 2htdp/image).

 And as Sam points out, even if we keep the Add Teachpack dialog, it
 could work by inserting a require into the code.

  Also, WeScheme just provides graphics libraries by default, which is
  another option we could consider.

 Bad idea; somebody might want to teach with his/her own version of the
 graphics libraries.  (I was in this boat before we bundled
 picturing-programs.)


But picturing-programs didn't have to change the existing image functions,
right? It could either just give a new set or augment the existing set and
still have worked for you?

Robby
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] Add Teachpack dialog can be very confusing

2013-04-01 Thread Stephen Bloch

On Apr 1, 2013, at 3:43 PM, Robby Findler ro...@eecs.northwestern.edu wrote:

 On Mon, Apr 1, 2013 at 9:49 AM, Stephen Bloch bl...@adelphi.edu wrote:
 
  Also, WeScheme just provides graphics libraries by default, which is
  another option we could consider.
 
 Bad idea; somebody might want to teach with his/her own version of the 
 graphics libraries.  (I was in this boat before we bundled 
 picturing-programs.)
 
 
 But picturing-programs didn't have to change the existing image functions, 
 right? It could either just give a new set or augment the existing set and 
 still have worked for you?

There were a few that I tweaked while keeping the names the same.

Stephen Bloch
sbl...@adelphi.edu

_
  Racket Developers list:
  http://lists.racket-lang.org/dev