Re: [racket-users] Change how to print builtins

2017-06-23 Thread David Storrs
For myself, I would like some better pretty-printing of nested data
structures and for structs to have their field names included with the
values so that they printed in a more hash-like format.

On Thu, Jun 22, 2017 at 9:39 PM, Sam Waxman  wrote:

> Hello,
>
> I was having trouble figuring out how to get racket to print values
> however I wanted. In particular, I was hoping to make exact nums print as
> decimals and true print as true (and not #t or #true). It would also be
> nice if I could custom print procedures so that + printed as plain old + or
> in some other yet-to-be-decided format. There might be other minor cosmetic
> things I'd like to do in the future, so if there's a general way to write
> my own printer, that would be preferred, but if there are builtin features
> just to do the first two specific things, that would be pretty helpful too.
>
> (I have to imagine there are pretty good ways to do this considering
> user-defined #langs could print out all sorts of things, and they're not
> just wrapping all their values in structs with custom print settings are
> they?)
>
> Many thanks in advance
>
> --
> 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.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
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.
For more options, visit https://groups.google.com/d/optout.


[racket-users] GLPK: how many chickens to invite to your picnic?

2017-06-23 Thread 'John Clements' via users-redirect
Doing some operations research in Racket? Frustrated by the lack of linear 
programming libraries? Well, be frustrated no more!

Actually, this is just a package announcement: I built a nice clean 
one-function interface to GLPK, the Gnu Linear Programming Kit, allowing primal 
simplex to do optimization on linear functions subject to linear constraints on 
variables with arbitrary bounds. Hope it’s useful!

John Clements



-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: [racket-users] GLPK: how many chickens to invite to your picnic?

2017-06-23 Thread 'John Clements' via users-redirect

> On Jun 23, 2017, at 10:25, Robby Findler  wrote:
> 
> Docs link with examples? :)

But of course!

http://docs.racket-lang.org/glpk/index.html

John

> 
> On Fri, Jun 23, 2017 at 1:13 PM 'John Clements' via users-redirect 
>  wrote:
> Doing some operations research in Racket? Frustrated by the lack of linear 
> programming libraries? Well, be frustrated no more!
> 
> Actually, this is just a package announcement: I built a nice clean 
> one-function interface to GLPK, the Gnu Linear Programming Kit, allowing 
> primal simplex to do optimization on linear functions subject to linear 
> constraints on variables with arbitrary bounds. Hope it’s useful!
> 
> John Clements
> 
> 
> 
> --
> 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.
> For more options, visit https://groups.google.com/d/optout.



-- 
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.
For more options, visit https://groups.google.com/d/optout.


[racket-users] Re: GLPK: how many chickens to invite to your picnic?

2017-06-23 Thread Jack Firth
On Friday, June 23, 2017 at 10:13:36 AM UTC-7, 'John Clements' via 
users-redirect wrote:
> Doing some operations research in Racket? Frustrated by the lack of linear 
> programming libraries? Well, be frustrated no more!
> 
> Actually, this is just a package announcement: I built a nice clean 
> one-function interface to GLPK, the Gnu Linear Programming Kit, allowing 
> primal simplex to do optimization on linear functions subject to linear 
> constraints on variables with arbitrary bounds. Hope it’s useful!
> 
> John Clements

Hooray! Thanks for the package! The docs are great for teaching linear 
programming too; I haven't done that since a college class years ago and 
appreciate the refresher.

Pot-stirring question: do you think it would make more sense to name the 
collection `math/glpk` instead of just `glpk`? I don't have a preference, just 
idly wondering.

-- 
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.
For more options, visit https://groups.google.com/d/optout.


package naming (Was: [racket-users] Re: GLPK: how many chickens to invite to your picnic?)

2017-06-23 Thread Neil Van Dyke

Jack Firth wrote on 06/23/2017 04:47 PM:
Pot-stirring question: do you think it would make more sense to name 
the collection `math/glpk` instead of just `glpk`?


You're exactly right, it's a controversial question. :)

In general, for a flexible, decentralized ecology of third-party 
packages, I think one usually wants either a flat namespace of package 
names, or (like PLaneT or Java) a namespace that's qualified by the 
package's origin.   (Qualified by one of the developer's identities, and 
whatever additional qualification the developer chooses to add.  In the 
case of Java, from the very start, they elegantly outsourced the 
namespace qualification authority to the Internet domain name 
registrations [*], but PlaneT's simple method was also reasonablee.)


One mitigating factor, in this particular case, is that the author is a 
core Racket person, and there's an ancient legacy in core Racket, of 
sometimes using hierarchical package names for purely topical taxonomy 
purposes.  IMHO, this is suboptimal, but it's ancient precedent, so I 
wouldn't try debating it if core Racket continued to do this.


Just know that, every time I gaze upon a new hierarchical package name 
used for purely topical taxonomy purposes, a single tear rolls down my 
somber face.


[*] Java used the domain name registration system only to the extent 
that, if you owned a domain name, you were socially considered to have 
authority to name packages qualified with that name and subdomains.  
They didn't use DNS itself at all, although you could imagine how DNS 
*could* later be used to implement package signature authentication in a 
distributed way, atop existing DNS infrastructure.  (Not that I'm 
advocating using DNS that way for Racket -- there some other ways of 
implementing authentication that make more pragmatic sense, given where 
we are.  And I'm not going to argue for Java-like use of domain 
registration authority in Racket, at least not unless it's part of 
implementing a trust system for packages.)


--
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.
For more options, visit https://groups.google.com/d/optout.


Re: package naming (Was: [racket-users] Re: GLPK: how many chickens to invite to your picnic?)

2017-06-23 Thread David Storrs
On this subject:  I have some code that I've been meaning to post for quite
a while, but I have held off because it's currently in the 'dstorrs'
namespace and the package docs request that you not name a package after
the developer.  I can rename it easily enough but I don't want to change
all the production code that's using it and I don't want to maintain two
separate copies of it.  Once I get the tuits I'll rename it and post it but
I've been putting it off.

What is the objection to naming a package for its author?  Is it simply
that the author's name is not descriptive of the functionality?


On Fri, Jun 23, 2017 at 5:57 PM, Neil Van Dyke  wrote:

> Jack Firth wrote on 06/23/2017 04:47 PM:
>
>> Pot-stirring question: do you think it would make more sense to name the
>> collection `math/glpk` instead of just `glpk`?
>>
>
> You're exactly right, it's a controversial question. :)
>
> In general, for a flexible, decentralized ecology of third-party packages,
> I think one usually wants either a flat namespace of package names, or
> (like PLaneT or Java) a namespace that's qualified by the package's
> origin.   (Qualified by one of the developer's identities, and whatever
> additional qualification the developer chooses to add.  In the case of
> Java, from the very start, they elegantly outsourced the namespace
> qualification authority to the Internet domain name registrations [*], but
> PlaneT's simple method was also reasonablee.)
>
> One mitigating factor, in this particular case, is that the author is a
> core Racket person, and there's an ancient legacy in core Racket, of
> sometimes using hierarchical package names for purely topical taxonomy
> purposes.  IMHO, this is suboptimal, but it's ancient precedent, so I
> wouldn't try debating it if core Racket continued to do this.
>
> Just know that, every time I gaze upon a new hierarchical package name
> used for purely topical taxonomy purposes, a single tear rolls down my
> somber face.
>
> [*] Java used the domain name registration system only to the extent that,
> if you owned a domain name, you were socially considered to have authority
> to name packages qualified with that name and subdomains.  They didn't use
> DNS itself at all, although you could imagine how DNS *could* later be used
> to implement package signature authentication in a distributed way, atop
> existing DNS infrastructure.  (Not that I'm advocating using DNS that way
> for Racket -- there some other ways of implementing authentication that
> make more pragmatic sense, given where we are.  And I'm not going to argue
> for Java-like use of domain registration authority in Racket, at least not
> unless it's part of implementing a trust system for packages.)
>
> --
> 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.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: package naming (Was: [racket-users] Re: GLPK: how many chickens to invite to your picnic?)

2017-06-23 Thread Deren Dohoda
I already screwed up my uploaded package by using a plural and then later
read that the style guide suggests singulars. Embarrassing.

On Fri, Jun 23, 2017 at 5:57 PM, Neil Van Dyke  wrote:

> Jack Firth wrote on 06/23/2017 04:47 PM:
>
>> Pot-stirring question: do you think it would make more sense to name the
>> collection `math/glpk` instead of just `glpk`?
>>
>
> You're exactly right, it's a controversial question. :)
>
> In general, for a flexible, decentralized ecology of third-party packages,
> I think one usually wants either a flat namespace of package names, or
> (like PLaneT or Java) a namespace that's qualified by the package's
> origin.   (Qualified by one of the developer's identities, and whatever
> additional qualification the developer chooses to add.  In the case of
> Java, from the very start, they elegantly outsourced the namespace
> qualification authority to the Internet domain name registrations [*], but
> PlaneT's simple method was also reasonablee.)
>
> One mitigating factor, in this particular case, is that the author is a
> core Racket person, and there's an ancient legacy in core Racket, of
> sometimes using hierarchical package names for purely topical taxonomy
> purposes.  IMHO, this is suboptimal, but it's ancient precedent, so I
> wouldn't try debating it if core Racket continued to do this.
>
> Just know that, every time I gaze upon a new hierarchical package name
> used for purely topical taxonomy purposes, a single tear rolls down my
> somber face.
>
> [*] Java used the domain name registration system only to the extent that,
> if you owned a domain name, you were socially considered to have authority
> to name packages qualified with that name and subdomains.  They didn't use
> DNS itself at all, although you could imagine how DNS *could* later be used
> to implement package signature authentication in a distributed way, atop
> existing DNS infrastructure.  (Not that I'm advocating using DNS that way
> for Racket -- there some other ways of implementing authentication that
> make more pragmatic sense, given where we are.  And I'm not going to argue
> for Java-like use of domain registration authority in Racket, at least not
> unless it's part of implementing a trust system for packages.)
>
> --
> 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.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: package naming (Was: [racket-users] Re: GLPK: how many chickens to invite to your picnic?)

2017-06-23 Thread Neil Van Dyke

Deren Dohoda wrote on 06/23/2017 06:52 PM:
I already screwed up my uploaded package by using a plural and then 
later read that the style guide suggests singulars.


Conscientiousness in a community is admirable.  But my opinion is to not 
worry too much about that particular perceived faux pas. :)


The Racket style guides/guidelines I've seen are relatively recent 
inventions, and I believe they're oriented more towards contributions to 
core Racket.


There's a lot of diverse thinking within the broad Racket community, on 
a whole lot of Racket topics, since long before the guidelines I've 
seen, and it's ongoing.


People can say (and I certainly do!) "I think it's generally best if 
people do X", and also "I personally prefer to do X" or "my 
project/company does X", but (outside of core Racket itself) there's not 
a lot of "all Racket users have to do X".[*]  Also, if you look at the 
history of Scheme and then Racket, there's a lot of individualist 
thinking, and some good things have happened because people were able to 
say "I'm doing X", and the languages and communities usually said "cool" 
or "whatever", not put up barriers.


I suspect everyone wants to see more good stuff in the default package 
catalog, more than they want to force any particular style dogma on 
everyone.


[*] My gosh, you can make unhygienic syntax transformers, and use `eval` 
with wild abandon!  I've even seen people put close-parentheses 
characters on their own lines! :)


--
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.
For more options, visit https://groups.google.com/d/optout.