Re: [racket-dev] make --clone installed pkgs

2015-02-17 Thread Sam Tobin-Hochstadt
On Tue, Feb 17, 2015 at 8:49 PM, Matthias Felleisen
matth...@ccs.neu.edu wrote:

 On Feb 17, 2015, at 7:59 PM, Sam Tobin-Hochstadt wrote:

 I expect that the packages that update for Matthias on `make` are
 packages in main-distribution,


 Personally, I have used the 'same' one-line command
 going back to csv through svn and now git (_update).

 When I write Speaking as the user I am .. I am
 thinking of people like me. Then again, you're
 probably saying that I am the bottom element of
 the lattice of make/update knowledge, so never mind
 what I write.

No, what I mean is that many (all?) of the packages you're thinking of
are ones, like 2htdp, that are part of main-distribution, and thus
you're in a different position than someone who develops packages that
are not part of the distribution.

I certainly don't think you're the bottom element in that lattice --
after all, you've written a shell script to automate your work.

Sam

-- 
You received this message because you are subscribed to the Google Groups 
Racket Developers group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-dev+unsubscr...@googlegroups.com.
To post to this group, send email to racket-...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/racket-dev/CAK%3DHD%2BYwVcHtYc%2BKCOMU4bCsLCyzaFwyB-9E8uPzBV8%2BsJvqdg%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.


Re: [racket-dev] Racket compiler in Racket

2015-02-17 Thread Leif Andersen
Hello,

I am working on porting the racket compiler to racket. But it still has a
bit to go and I have not yet ported the optimizer. So go right ahead.

Thank you.


~Leif Andersen

On Sun, Feb 15, 2015 at 1:36 PM, Gustavo Massaccesi gust...@oma.org.ar
wrote:

 There is project to rewrite the Racket compiler in Racket. I'd like to
 know if it has advanced. In particular, if it's still possible to make
 big changes to the C code or it's better to wait and keep the code
 almost frozen.

 I'm planning to do few refactoring an improvements in the optimizer
 functions that handle predicates (for example expr_implies_predicate
 and check_known2_pred). The changes are small enough to be implemented
 in a pair of days (if I find no surprises) but they are big enough to
 be painful to port if the code is already translated.

 Gustavo

 --
 You received this message because you are subscribed to the Google Groups
 Racket Developers group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to racket-dev+unsubscr...@googlegroups.com.
 To post to this group, send email to racket-...@googlegroups.com.
 To view this discussion on the web visit
 https://groups.google.com/d/msgid/racket-dev/CAPaha9MMSSNLL-30%2B5bUzKgMb8qERN-%3DEOikEV%2B8ySoHcdzSeQ%40mail.gmail.com
 .
 For more options, visit https://groups.google.com/d/optout.


-- 
You received this message because you are subscribed to the Google Groups 
Racket Developers group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-dev+unsubscr...@googlegroups.com.
To post to this group, send email to racket-...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/racket-dev/CAAVaeEBhM-MtW5rZ%2B1Y0f40%2BY_JF3-VAUgLoTUE83v%3DtJYH_fA%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.


Re: [racket-dev] What is the policy on what is included in the core libraries?

2015-02-17 Thread Jens Axel Søgaard
2015-02-17 14:26 GMT+01:00 Robby Findler ro...@eecs.northwestern.edu:
 I don't think the libraries are sufficient as is, but I would resist
 adding aliases.

A alternative: Added the word  zip  to the documentation index,
link it to map and have an example where in (map list ...) is used.

Also: Isn't zip in srfi/1 ?

/Jens Axel

-- 
You received this message because you are subscribed to the Google Groups 
Racket Developers group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-dev+unsubscr...@googlegroups.com.
To post to this group, send email to racket-...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/racket-dev/CABefVgz2g3svHzxg55Y11DWi%3DAKqm21YRvu777owxi4p_tqNNg%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.


Re: [racket-dev] What is the policy on what is included in the core libraries?

2015-02-17 Thread Eli Barzilay
On Tue, Feb 17, 2015 at 8:26 AM, Robby Findler
ro...@eecs.northwestern.edu wrote:
 I don't think the libraries are sufficient as is, but I would resist
 adding aliases.

 Perhaps a better way to get people coming from Haskell would be to
 write an essay specifically aimed there?

   - Step 1: use variables.
   - Step 2: here are `for` loops!

Instead of an essay, this could be a guide for Haskellers/MLers/
Whatever-ers, which would make it easy to get results into documentation
searches, and that would make it easy to address issues that cannot be
resolved with a new binding like the bad argument order in `take` or the
different input function for the folds.

(Another point for avoiding a `zip` binding is that it's much more
likely to collide with user defined functions than it is in other
languages.)

-- 
  ((lambda (x) (x x)) (lambda (x) (x x)))  Eli Barzilay:
http://barzilay.org/   Maze is Life!

-- 
You received this message because you are subscribed to the Google Groups 
Racket Developers group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-dev+unsubscr...@googlegroups.com.
To post to this group, send email to racket-...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/racket-dev/CALO-gusXr5Di4GBb3-xi3R5sL8G1CcAfNs3%2BBOB-7uM_AavGvA%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.


Re: [racket-dev] What is the policy on what is included in the core libraries?

2015-02-17 Thread Sam Tobin-Hochstadt
On Tue, Feb 17, 2015 at 11:31 AM, Jens Axel Søgaard
jensa...@soegaard.net wrote:
 2015-02-17 14:26 GMT+01:00 Robby Findler ro...@eecs.northwestern.edu:
 I don't think the libraries are sufficient as is, but I would resist
 adding aliases.

 A alternative: Added the word  zip  to the documentation index,
 link it to map and have an example where in (map list ...) is used.

Since `zip` isn't an alias for anything, I think we should add it.

Sam

-- 
You received this message because you are subscribed to the Google Groups 
Racket Developers group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-dev+unsubscr...@googlegroups.com.
To post to this group, send email to racket-...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/racket-dev/CAK%3DHD%2BYOu17C96DO0q7HRw5yAQEK0aXurewX%3DeDYEMmHpAz%2BBg%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.


Re: [racket-dev] What is the policy on what is included in the core libraries?

2015-02-17 Thread Vincent St-Amour
I don't think we should add functions to TR that are not in Racket and
that are not clearly type-related (e.g., `cast`).

I also like Jens's solution better. Education vs crutches.

Vincent



At Tue, 17 Feb 2015 10:39:16 -0500,
Matthias Felleisen wrote:
 
 
 I'd add them to Typed Racket. That's what Haskellians are most likely to 
 explore and when they find them, it's a good thing (tm). -- Matthias
 
 
 
 
 On Feb 17, 2015, at 2:18 AM, Alexis King lexi.lam...@gmail.com wrote:
 
  I was just thinking today that I would, for example, find it useful to have 
  a (zip ...) function in racket/list that would be equivalent to (map list 
  ...). Users coming from a Haskell background might even find it useful to 
  have a zip-with function that is simply an alias for map. Admittedly, these 
  are rather trivial, but (especially in the first case) I think they’d still 
  be useful.
  
  I am all for avoiding feature creep and code bloat, but Racket’s “batteries 
  included” approach seems to make functions like these prime candidates for 
  libraries like racket/list. As long as they’re not in racket/base, they 
  seem fairly harmless, especially considering they would only be needed at 
  compile-time.
  
  Should I even consider adding things like this, or is the consensus that 
  the libraries are mostly sufficient as-is?
  
  -- 
  You received this message because you are subscribed to the Google Groups 
  Racket Developers group.
  To unsubscribe from this group and stop receiving emails from it, send an 
  email to racket-dev+unsubscr...@googlegroups.com.
  To post to this group, send email to racket-...@googlegroups.com.
  To view this discussion on the web visit 
  https://groups.google.com/d/msgid/racket-dev/5D941DB1-8A55-4A41-98A2-A3BE1BFE6D40%40gmail.com.
  For more options, visit https://groups.google.com/d/optout.
 
 -- 
 You received this message because you are subscribed to the Google Groups 
 Racket Developers group.
 To unsubscribe from this group and stop receiving emails from it, send an 
 email to racket-dev+unsubscr...@googlegroups.com.
 To post to this group, send email to racket-...@googlegroups.com.
 To view this discussion on the web visit 
 https://groups.google.com/d/msgid/racket-dev/EAAD5B93-DB78-419B-A662-131AD1D3E303%40ccs.neu.edu.
 For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
Racket Developers group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-dev+unsubscr...@googlegroups.com.
To post to this group, send email to racket-...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/racket-dev/87d258qxg8.wl%25stamourv%40ccs.neu.edu.
For more options, visit https://groups.google.com/d/optout.


Re: [racket-dev] What is the policy on what is included in the core libraries?

2015-02-17 Thread Matthias Felleisen

At some point TR will move on, and perhaps the time has come. 


On Feb 17, 2015, at 12:06 PM, Vincent St-Amour stamo...@ccs.neu.edu wrote:

 I don't think we should add functions to TR that are not in Racket and
 that are not clearly type-related (e.g., `cast`).
 
 I also like Jens's solution better. Education vs crutches.
 
 Vincent
 
 
 
 At Tue, 17 Feb 2015 10:39:16 -0500,
 Matthias Felleisen wrote:
 
 
 I'd add them to Typed Racket. That's what Haskellians are most likely to 
 explore and when they find them, it's a good thing (tm). -- Matthias
 
 
 
 
 On Feb 17, 2015, at 2:18 AM, Alexis King lexi.lam...@gmail.com wrote:
 
 I was just thinking today that I would, for example, find it useful to have 
 a (zip ...) function in racket/list that would be equivalent to (map list 
 ...). Users coming from a Haskell background might even find it useful to 
 have a zip-with function that is simply an alias for map. Admittedly, these 
 are rather trivial, but (especially in the first case) I think they’d still 
 be useful.
 
 I am all for avoiding feature creep and code bloat, but Racket’s “batteries 
 included” approach seems to make functions like these prime candidates for 
 libraries like racket/list. As long as they’re not in racket/base, they 
 seem fairly harmless, especially considering they would only be needed at 
 compile-time.
 
 Should I even consider adding things like this, or is the consensus that 
 the libraries are mostly sufficient as-is?
 
 -- 
 You received this message because you are subscribed to the Google Groups 
 Racket Developers group.
 To unsubscribe from this group and stop receiving emails from it, send an 
 email to racket-dev+unsubscr...@googlegroups.com.
 To post to this group, send email to racket-...@googlegroups.com.
 To view this discussion on the web visit 
 https://groups.google.com/d/msgid/racket-dev/5D941DB1-8A55-4A41-98A2-A3BE1BFE6D40%40gmail.com.
 For more options, visit https://groups.google.com/d/optout.
 
 -- 
 You received this message because you are subscribed to the Google Groups 
 Racket Developers group.
 To unsubscribe from this group and stop receiving emails from it, send an 
 email to racket-dev+unsubscr...@googlegroups.com.
 To post to this group, send email to racket-...@googlegroups.com.
 To view this discussion on the web visit 
 https://groups.google.com/d/msgid/racket-dev/EAAD5B93-DB78-419B-A662-131AD1D3E303%40ccs.neu.edu.
 For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
Racket Developers group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-dev+unsubscr...@googlegroups.com.
To post to this group, send email to racket-...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/racket-dev/63C7696A-1532-400A-825D-247BB3E31750%40ccs.neu.edu.
For more options, visit https://groups.google.com/d/optout.


[racket-dev] make --clone installed pkgs

2015-02-17 Thread Robby Findler
Sam and I have run into a situation where `make` fails because we've
set up clone pkgs and made local modifications in a way that makes the
git commands fail [*].

My guess is that the right thing to do is for me to know about these
pkgs and do something special when running make. I'm thinking that I
could let make finish the initial steps until it gets to the step
where it updates the pkgs and then do the update step myself and then
run `make as-is`. But the problem with this is that I don't see what
command I can run that will update all of the pkgs except the
problematic ones. Like I could imagine a `raco pkg update
--all-except-clones` or something, but that feels a bit strange as
there could be other development modes that would also run into
similar problems. Maybe `raco pkg update
--all-things-from-this-catalog
the-catalog-I-currently-get-main-distribution-from` or something
along those lines is the way to go? In general, it seems right for me
to run some commands whose complications are roughly proportional to
the number of pkgs that I have installed as clones (and where I'm
actively developing them) but not to run some commands that require me
to do something special for each pkg that is installed.

Any ideas? Or am I just missing the right command?

Thanks,
Robby

[*] In my case, in case this suggests a better/different approach to a
resolution: the `raco pkg update` step eventually gets to this git
command:

  git merge --ff-only sha1

where the sha1 is the checksum from the pkg server, I believe. In my
case, this is a different branch than is currently checked in my
clone'd pkg and so the git merge command fails (and that command
failing seems like the right behavior for the setup I'd like to be
able to use).

-- 
You received this message because you are subscribed to the Google Groups 
Racket Developers group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-dev+unsubscr...@googlegroups.com.
To post to this group, send email to racket-...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/racket-dev/CAL3TdONOjL3_y8U_A1ZUoz_1Z%3DE3HjVV8by9e%2B2dS-W2mc51pg%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.


Re: [racket-dev] make --clone installed pkgs

2015-02-17 Thread Sam Tobin-Hochstadt
I think there are two seperable issues here:

1. Can we make `raco pkg update -a` better/more robust in this case?

2. Should `make` run `raco pkg update -a`?

In reverse order:

- I think `make`, by default, shouldn't update anything, and that we
should have a different Makefile target which updates things when
people want that explicitly. The current behavior is especially
problematic because it updates things that aren't in
main-distribution, meaning that it's making potentially arbitrary
breaking changes to software on your computer (not just to core
Racket).

This could be more inconvenient for someone working widely on core
packages, but if they wanted the current behavior it would be just
`make update` (or some other name) instead of `make`. As someone who
does work on a lot of core packages, I'd prefer greater explicitness.

- I think `raco pkg update p` where `p` is a cloned package should
only do anything if (a) the currently-checked-out branch is the one in
the pkg source and (b) the `git merge --ff-only` command would
succeed. Otherwise, I think it should just print a message and leave
the repository as it is. I think that's what I wanted all the times
that this operation has failed in my experience.

Sam

On Tue, Feb 17, 2015 at 9:54 AM, Robby Findler
ro...@eecs.northwestern.edu wrote:
 Sam and I have run into a situation where `make` fails because we've
 set up clone pkgs and made local modifications in a way that makes the
 git commands fail [*].

 My guess is that the right thing to do is for me to know about these
 pkgs and do something special when running make. I'm thinking that I
 could let make finish the initial steps until it gets to the step
 where it updates the pkgs and then do the update step myself and then
 run `make as-is`. But the problem with this is that I don't see what
 command I can run that will update all of the pkgs except the
 problematic ones. Like I could imagine a `raco pkg update
 --all-except-clones` or something, but that feels a bit strange as
 there could be other development modes that would also run into
 similar problems. Maybe `raco pkg update
 --all-things-from-this-catalog
 the-catalog-I-currently-get-main-distribution-from` or something
 along those lines is the way to go? In general, it seems right for me
 to run some commands whose complications are roughly proportional to
 the number of pkgs that I have installed as clones (and where I'm
 actively developing them) but not to run some commands that require me
 to do something special for each pkg that is installed.

 Any ideas? Or am I just missing the right command?

 Thanks,
 Robby

 [*] In my case, in case this suggests a better/different approach to a
 resolution: the `raco pkg update` step eventually gets to this git
 command:

   git merge --ff-only sha1

 where the sha1 is the checksum from the pkg server, I believe. In my
 case, this is a different branch than is currently checked in my
 clone'd pkg and so the git merge command fails (and that command
 failing seems like the right behavior for the setup I'd like to be
 able to use).

 --
 You received this message because you are subscribed to the Google Groups 
 Racket Developers group.
 To unsubscribe from this group and stop receiving emails from it, send an 
 email to racket-dev+unsubscr...@googlegroups.com.
 To post to this group, send email to racket-...@googlegroups.com.
 To view this discussion on the web visit 
 https://groups.google.com/d/msgid/racket-dev/CAL3TdONOjL3_y8U_A1ZUoz_1Z%3DE3HjVV8by9e%2B2dS-W2mc51pg%40mail.gmail.com.
 For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
Racket Developers group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-dev+unsubscr...@googlegroups.com.
To post to this group, send email to racket-...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/racket-dev/CAK%3DHD%2BbYrWHAxWssmvXFA%2BA0tco2RDAXwORQj_iwOq%3DpYXzZOA%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.


Re: [racket-dev] What is the policy on what is included in the core libraries?

2015-02-17 Thread Matthias Felleisen

I'd add them to Typed Racket. That's what Haskellians are most likely to 
explore and when they find them, it's a good thing (tm). -- Matthias




On Feb 17, 2015, at 2:18 AM, Alexis King lexi.lam...@gmail.com wrote:

 I was just thinking today that I would, for example, find it useful to have a 
 (zip ...) function in racket/list that would be equivalent to (map list ...). 
 Users coming from a Haskell background might even find it useful to have a 
 zip-with function that is simply an alias for map. Admittedly, these are 
 rather trivial, but (especially in the first case) I think they’d still be 
 useful.
 
 I am all for avoiding feature creep and code bloat, but Racket’s “batteries 
 included” approach seems to make functions like these prime candidates for 
 libraries like racket/list. As long as they’re not in racket/base, they seem 
 fairly harmless, especially considering they would only be needed at 
 compile-time.
 
 Should I even consider adding things like this, or is the consensus that the 
 libraries are mostly sufficient as-is?
 
 -- 
 You received this message because you are subscribed to the Google Groups 
 Racket Developers group.
 To unsubscribe from this group and stop receiving emails from it, send an 
 email to racket-dev+unsubscr...@googlegroups.com.
 To post to this group, send email to racket-...@googlegroups.com.
 To view this discussion on the web visit 
 https://groups.google.com/d/msgid/racket-dev/5D941DB1-8A55-4A41-98A2-A3BE1BFE6D40%40gmail.com.
 For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
Racket Developers group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-dev+unsubscr...@googlegroups.com.
To post to this group, send email to racket-...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/racket-dev/EAAD5B93-DB78-419B-A662-131AD1D3E303%40ccs.neu.edu.
For more options, visit https://groups.google.com/d/optout.


Re: [racket-dev] What is the policy on what is included in the core libraries?

2015-02-17 Thread Robby Findler
I don't think the libraries are sufficient as is, but I would resist
adding aliases.

Perhaps a better way to get people coming from Haskell would be to
write an essay specifically aimed there?

  - Step 1: use variables.
  - Step 2: here are `for` loops!

;)

Robby


On Tue, Feb 17, 2015 at 1:18 AM, Alexis King lexi.lam...@gmail.com wrote:
 I was just thinking today that I would, for example, find it useful to have
 a (zip ...) function in racket/list that would be equivalent to (map list
 ...). Users coming from a Haskell background might even find it useful to
 have a zip-with function that is simply an alias for map. Admittedly, these
 are rather trivial, but (especially in the first case) I think they’d still
 be useful.

 I am all for avoiding feature creep and code bloat, but Racket’s “batteries
 included” approach seems to make functions like these prime candidates for
 libraries like racket/list. As long as they’re not in racket/base, they seem
 fairly harmless, especially considering they would only be needed at
 compile-time.

 Should I even consider adding things like this, or is the consensus that the
 libraries are mostly sufficient as-is?

 --
 You received this message because you are subscribed to the Google Groups
 Racket Developers group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to racket-dev+unsubscr...@googlegroups.com.
 To post to this group, send email to racket-...@googlegroups.com.
 To view this discussion on the web visit
 https://groups.google.com/d/msgid/racket-dev/5D941DB1-8A55-4A41-98A2-A3BE1BFE6D40%40gmail.com.
 For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
Racket Developers group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-dev+unsubscr...@googlegroups.com.
To post to this group, send email to racket-...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/racket-dev/CAL3TdONpdpZX%3D63ZtmPxTytPfw_PrL6gR6dwQXcbnS5_cB2OcQ%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.


Re: [racket-dev] What is the policy on what is included in the core libraries?

2015-02-17 Thread Robby Findler
Yes, that's true.

Robby

On Tue, Feb 17, 2015 at 10:50 AM, Sam Tobin-Hochstadt
sa...@cs.indiana.edu wrote:
 On Tue, Feb 17, 2015 at 11:31 AM, Jens Axel Søgaard
 jensa...@soegaard.net wrote:
 2015-02-17 14:26 GMT+01:00 Robby Findler ro...@eecs.northwestern.edu:
 I don't think the libraries are sufficient as is, but I would resist
 adding aliases.

 A alternative: Added the word  zip  to the documentation index,
 link it to map and have an example where in (map list ...) is used.

 Since `zip` isn't an alias for anything, I think we should add it.

 Sam

-- 
You received this message because you are subscribed to the Google Groups 
Racket Developers group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-dev+unsubscr...@googlegroups.com.
To post to this group, send email to racket-...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/racket-dev/CAL3TdONe3-xhiVrpQ%3D8ZGc9AjYr9NBoxCj5JDVDdr0trckKPpw%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.