Re: [racket-users] Re: Package layout in docs

2017-02-07 Thread Ethan Estrada
On Mon, Jan 30, 2017 at 3:33 PM, Leif Andersen  wrote:
>
> So, I really don't care how it work. Logo is fine, seperate website is
> fine. Checkboxes that lets users say what packages come in are fine.
> Yelp reviews are fine (although if we go down that route can we also
> add Edit buttons. ;) )

It seems the discussion about splitting out packages has moved to
another thread. To wrap this thread, I just want to echo what Leif
said: in the end, I am pretty much happy with whatever solution is
decided. Being somewhat new to the community, I don't know who is the
person (or persons) in charge of green-lighting any given plan.

So my questions at this point are:

1) What direction is this headed? (the conversation seemed to hint
at implementing the planned ring system, but please correct me if I am
wrong)
2) What are the ways that I (and others in the community) can help
make it happen?

--
Ethan Estrada

-- 
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] Re: Package layout in docs

2017-01-31 Thread Ethan Estrada
On Mon, Jan 30, 2017 at 6:17 PM, Hendrik Boom  wrote:
> While we were talking about "core" and non-"core"packages, there was
> controversy.  Now that we have changed words, and are talking about
> "rings", we seem to be happier.  What a difference a word makes!  Or
> is there a technical distinction I am missing?

On Jan 31, 2017 06:28, "Jay McCarthy"  wrote:
> I think most people read "core" as "made by people who are in Matthias
> Felleisen's academic family tree", but the idea of "ring" is that
> there's some quasi-objective standard that anyone can meet and get
> blessed by the community as a great package.

The "ring" approach sounds like a good direction to me. I think the
problem of "What do I already have and what do I need to go out and
fetch" still isn't fully resolved by rings, but I think it easily can
be addressed. One way could be by adding an extra option to 'raco pkg
install' that would simply install all ring0 packages. As I'm writing
this though, I realize that the one issue is that as the package index
gets bigger, this puts serious strain on both the package server(s)
and the user's network bandwidth.

Possibly the best may me to be clear on the docs about it. It is very
different from any other software ecosystem, which isn't necessarily a
bad thing; in fact, I would say it is a good thing. However, this
means that it probably should have an explanation available to
newcomers. I would add something like the following to the main docs
page or in a docs FAQ or wherever it is obvious and accessible. In FAQ
style:

- "Hey, where's the standard library?

Although Racket ships with some module code maintained by the core
team, it isn't a standard library. Instead the Racket ecosystem
utilizes a package "ring" system; you can learn more about it here:
(some link). If you aren't certain a frequently mentioned package is
already available, simply attempt to install it with 'raco pkg install
--skip-installed --ring0-only '."

--
Ethan Estrada

-- 
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] Re: Package layout in docs

2017-01-31 Thread Neil Van Dyke

Jack Firth wrote on 01/31/2017 03:11 PM:
If the package build server and catalog hosted built packages for 
multiple Racket versions, I think we could go a long ways towards 
removing the need to split packages completely.


If there's important requirements driving that, and if that's a good 
solution.


I've seen a lot of effort put into infrastructure size bloat 
(e.g., creating several separate implementation variations for 
essentially the same thing, in case anyone ever wants to do it one of 
those many ways) that looks like it will likely encumber solving actual 
very important ongoing problems.


Sometimes size/complexity bloat is worthwhile or at least benign, 
sometimes closer to malignant.


--
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] Re: Package layout in docs

2017-01-31 Thread Jack Firth
On Tuesday, January 31, 2017 at 11:25:31 AM UTC-8, Neil Van Dyke wrote:
> For the benefit of the tightwad people, packages could optionally 
> include metadata about any docs and tests that can be stripped -- 
> anything nonessential to "run-only" the package.  This metadata could be 
> used by either the installation tools or by a package file transformer 
> tool that people can run themselves.  (And, eventually, these tests and 
> documentation might normally be linguistic constructs anyway, embedded 
> within the code, not something in their own files that can be maintained 
> in a separate package from the implementation.)  The package catalog 
> still only lists the one canonical package, though.

This currently exists. All dependencies used in test and doc submodules and 
scribblings/ modules are build dependencies (defined in `build-deps` in 
info.rkt) and when installing a pre-built package, you can optionally omit 
build dependencies by installing the package with the `--binary` and 
`--binary-lib` flags. The package build server also creates a separate "built 
packages" catalog that hosts pre-built versions of packages. Unfortunately, 
pre-built packages are specific to a Racket version so this catalog is only 
usable if you're using the latest Racket version.

If the package build server and catalog hosted built packages for multiple 
Racket versions, I think we could go a long ways towards removing the need to 
split packages completely.

-- 
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] Re: Package layout in docs

2017-01-31 Thread Neil Van Dyke

Greg Trzeciak wrote on 01/31/2017 01:24 PM:

Speaking of packages - there seems to be a trend recently in racket packages to create 
separate packages for main, lib, doc, test, etc. This causes an artificial inflation in 
available packages and IMHO may cause some confusion for newcomers as instead of finding 
eg. "PackageX" we now get the following instead:


I agree with Greg that this looks like people are going out of their way 
to make clutter.  I don't think that ever should have been encouraged.


I think the "lightweight languages" way to do this is to do this in most 
cases is to distribute a single package that includes the 
implementation+tests+scribble, not split up the package.  The normal 
case should be to include everything in a package as a developer or 
library user, including modifying it.  Packages only rarely are big, and 
hardly anyone is working on tiny microcontrollers or other tight 
deployments.


For the benefit of the tightwad people, packages could optionally 
include metadata about any docs and tests that can be stripped -- 
anything nonessential to "run-only" the package.  This metadata could be 
used by either the installation tools or by a package file transformer 
tool that people can run themselves.  (And, eventually, these tests and 
documentation might normally be linguistic constructs anyway, embedded 
within the code, not something in their own files that can be maintained 
in a separate package from the implementation.)  The package catalog 
still only lists the one canonical package, though.


A rare special case would be things like demos that pull in big 
dependencies that are often not wanted (e.g., neural nets library that 
has a GUI demo).  That demo you might put in a separate package, for the 
same reasons you might put a big neural nets GUI visualizer tool in a 
separate package from your neural nets library, even if it wasn't a demo 
-- because it has big different dependencies, and the main functionality 
of the package is very often used without it.  (Of course, not all demos 
have to be in a separate package.  The `charterm` demo has a small 
implementation, and doesn't pull in big additional dependencies, so I 
just threw it into the main package, and documented it that way: 
"http://www.neilvandyke.org/racket/charterm/#%28part._.Demo%29;.)


Another rare special case is when you have big "test data" that you 
can't trim down and you really think should be distributed with the 
package.  Offhand, I can think of only one example I'm aware of this in 
Racket, though I assume there are some situations I don't know about, 
and it does occur with real-world research data.  When it's research 
data, this might also involve open scientific data archiving/sharing 
efforts, and you might want to look at those efforts in your field.  Of 
course, big real-world data might not be that good as software 
engineering regression tests anyway, even if you ran the data through 
"as a test" or as a practical application of your code for your thesis, 
so maybe that data doesn't belong in the package anyway.


Again, I think the normal case is one package that includes all 
implementation+tests+scribbles.


--
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] Re: Package layout in docs

2017-01-31 Thread Greg Trzeciak
On Tuesday, January 31, 2017 at 7:29:44 PM UTC+1, Jay McCarthy wrote:
> I think it would be nice to change the frontend to collapse them
> together in some meaningful way to help read the catalog.
> 
> Jay

+1
That would solve the issue.

-- 
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] Re: Package layout in docs

2017-01-31 Thread Jay McCarthy
I think it would be nice to change the frontend to collapse them
together in some meaningful way to help read the catalog.

Jay

On Tue, Jan 31, 2017 at 1:29 PM, Jay McCarthy  wrote:
> On Tue, Jan 31, 2017 at 1:24 PM, Greg Trzeciak  wrote:
>> Other than package creator's convenience - is their any rationale for this 
>> trend I don't see?
>
> Actually, it is INCONVENIENT for the creator. It provides to the users
> the ability to install the library without docs (good for deployment)
> or without tests (good for users), etc.
>
> Jay
>
> --
> Jay McCarthy
> Associate Professor
> PLT @ CS @ UMass Lowell
> http://jeapostrophe.github.io
>
>"Wherefore, be not weary in well-doing,
>   for ye are laying the foundation of a great work.
> And out of small things proceedeth that which is great."
>   - D 64:33



-- 
Jay McCarthy
Associate Professor
PLT @ CS @ UMass Lowell
http://jeapostrophe.github.io

   "Wherefore, be not weary in well-doing,
  for ye are laying the foundation of a great work.
And out of small things proceedeth that which is great."
  - D 64:33

-- 
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] Re: Package layout in docs

2017-01-31 Thread Jay McCarthy
On Tue, Jan 31, 2017 at 1:24 PM, Greg Trzeciak  wrote:
> Other than package creator's convenience - is their any rationale for this 
> trend I don't see?

Actually, it is INCONVENIENT for the creator. It provides to the users
the ability to install the library without docs (good for deployment)
or without tests (good for users), etc.

Jay

-- 
Jay McCarthy
Associate Professor
PLT @ CS @ UMass Lowell
http://jeapostrophe.github.io

   "Wherefore, be not weary in well-doing,
  for ye are laying the foundation of a great work.
And out of small things proceedeth that which is great."
  - D 64:33

-- 
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] Re: Package layout in docs

2017-01-31 Thread Jay McCarthy
On Mon, Jan 30, 2017 at 6:17 PM, Hendrik Boom  wrote:
> While we were talking about "core" and non-"core"packages, there was
> controversy.  Now that we have changed words, and are talking about
> "rings", we seem to be happier.  What a difference a word makes!  Or
> is there a technical distinction I am missing?

I think most people read "core" as "made by people who are in Matthias
Felleisen's academic family tree", but the idea of "ring" is that
there's some quasi-objective standard that anyone can meet and get
blessed by the community as a great package.

Jay

-- 
Jay McCarthy
Associate Professor
PLT @ CS @ UMass Lowell
http://jeapostrophe.github.io

   "Wherefore, be not weary in well-doing,
  for ye are laying the foundation of a great work.
And out of small things proceedeth that which is great."
  - D 64:33

-- 
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] Re: Package layout in docs

2017-01-31 Thread Hendrik Boom
On Tue, Jan 31, 2017 at 01:37:41PM +0800, WarGrey Gyoudmon Ju wrote:
> Hello.
> 
> This is one of the culture shocks that a new Racketeer would face, and so
> was I.
> But this statement makes it clear to me: Racket is an operating system that
> pretend to a programming language;

Much like emacs, also based on Lisp.  It's a wonderful operating 
system and user-interface for machines with just an old-style 
characters-only CRT.

And it too is based on Lisp.

> 
> Yes, it may totally be a kind of over reading here.
> 
> Say, I do not care if a manual page is the one shipped with unix
> distribution or installed by user, same to shell commands and shared
> objects, all entries should globally unique.

The important distinctions are the level of maturity of the API, its
long-term stablity and the availability of maintainers to fix problems 
if they should arise.

-- hendrik

> 
> Okay, the documentation system is a little different here, it can be
> provided with a different front page, and obviously there is no way to
> satisfy all.
> Actually I am afraid of where to insert the entry of my package as well.
> 
> Of my preference, I would suggest putting status icons (or even emojis) in
> front of every entry in the index page based on the ring system.
> 
> On Tue, Jan 31, 2017 at 11:57 AM, Philip McGrath 
> wrote:
> 
> > I was also going to suggest the ring system as a way of giving more
> > information without imposing an unnecessary artificial distinction. In
> > general I'm enthusiastic about the benefits of not having a sharp dividing
> > line, but it would be useful to show more clearly in the documentation
> > which packages have been vetted to "ring zero" standards.
> >
> >
> >
> >
> > On Mon, Jan 30, 2017 at 8:46 PM, Jack Firth  wrote:
> >
> >> Rather than splitting "core packages" from "community packages", what if
> >> we used the package ring system? [1] We could establish a way for the
> >> Racket community to bless packages with "ring zero" status, then provide a
> >> --catalog argument to Scribble to lookup ring information in when deciding
> >> how to style package documentation. The docs would remain unified, we'd
> >> have a centralized place to curate packages, and there's no artificial
> >> barrier that prevents user-contributed packages from living alongside
> >> main-distribution packages.

While we were talking about "core" and non-"core"packages, there was 
controversy.  Now that we have changed words, and are talking about 
"rings", we seem to be happier.  What a difference a word makes!  Or 
is there a technical distinction I am missing?

> >>
> >> [1] http://docs.racket-lang.org/pkg/Future_Plans.html?q=ring
> >>

-- hendrik

-- 
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] Re: Package layout in docs

2017-01-30 Thread WarGrey Gyoudmon Ju
Hello.

This is one of the culture shocks that a new Racketeer would face, and so
was I.
But this statement makes it clear to me: Racket is an operating system that
pretend to a programming language;

Yes, it may totally be a kind of over reading here.

Say, I do not care if a manual page is the one shipped with unix
distribution or installed by user, same to shell commands and shared
objects, all entries should globally unique.

Okay, the documentation system is a little different here, it can be
provided with a different front page, and obviously there is no way to
satisfy all.
Actually I am afraid of where to insert the entry of my package as well.

Of my preference, I would suggest putting status icons (or even emojis) in
front of every entry in the index page based on the ring system.


On Tue, Jan 31, 2017 at 11:57 AM, Philip McGrath 
wrote:

> I was also going to suggest the ring system as a way of giving more
> information without imposing an unnecessary artificial distinction. In
> general I'm enthusiastic about the benefits of not having a sharp dividing
> line, but it would be useful to show more clearly in the documentation
> which packages have been vetted to "ring zero" standards.
>
>
>
>
> On Mon, Jan 30, 2017 at 8:46 PM, Jack Firth  wrote:
>
>> Rather than splitting "core packages" from "community packages", what if
>> we used the package ring system? [1] We could establish a way for the
>> Racket community to bless packages with "ring zero" status, then provide a
>> --catalog argument to Scribble to lookup ring information in when deciding
>> how to style package documentation. The docs would remain unified, we'd
>> have a centralized place to curate packages, and there's no artificial
>> barrier that prevents user-contributed packages from living alongside
>> main-distribution packages.
>>
>> [1] http://docs.racket-lang.org/pkg/Future_Plans.html?q=ring
>>
>> --
>> 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.
>

-- 
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] Re: Package layout in docs

2017-01-30 Thread Philip McGrath
I was also going to suggest the ring system as a way of giving more
information without imposing an unnecessary artificial distinction. In
general I'm enthusiastic about the benefits of not having a sharp dividing
line, but it would be useful to show more clearly in the documentation
which packages have been vetted to "ring zero" standards.



On Mon, Jan 30, 2017 at 8:46 PM, Jack Firth  wrote:

> Rather than splitting "core packages" from "community packages", what if
> we used the package ring system? [1] We could establish a way for the
> Racket community to bless packages with "ring zero" status, then provide a
> --catalog argument to Scribble to lookup ring information in when deciding
> how to style package documentation. The docs would remain unified, we'd
> have a centralized place to curate packages, and there's no artificial
> barrier that prevents user-contributed packages from living alongside
> main-distribution packages.
>
> [1] http://docs.racket-lang.org/pkg/Future_Plans.html?q=ring
>
> --
> 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.