From: Mark Wielaard <mark@klomp.org>
To: Andrew Cagney <cagney@redhat.com>
Cc: frysk <frysk@sourceware.org>
Subject: Re: frysk.proc.{ptrace,corefile} -> frysk.proc.{live,dead}
Date: Wed, 20 Jun 2007 09:21:00 -0000 [thread overview]
Message-ID: <1182327683.4501.45.camel@dijkstra.wildebeest.org> (raw)
In-Reply-To: <46785181.7030709@redhat.com>
[-- Attachment #1: Type: text/plain, Size: 5213 bytes --]
On Tue, 2007-06-19 at 17:58 -0400, Andrew Cagney wrote:
> Mark Wielaard wrote:
> > On Mon, 2007-06-18 at 19:29 -0400, Andrew Cagney wrote:
> >> Sorry I don't follow, the but. This is good.
> >>
> > Try showing that it is good and what the problem it is that it solves
> > with some concrete examples. An simple example of existing code and what
> > it should/could be might make things a lot more concrete and clear for
> > others to see which actual problem this solves.
> >
> A specific example that I mentioned previously was requestAddBLAH. live
> processes handle that, dead processes do not.
Dead (although I do think that is a silly term, try using Frozen)
processes do handle that. It is just that some observers are immediately
triggered since the process is always ready and others never since the
action that the observer is waiting for will never occur. That might or
might not be something that is convenient, or something that can be
better modeled otherwise. My question really was where you see an actual
problem in the current code and give an example of how to more elegantly
solve that issue.
> > You don't make a clear distinction between on the one hand what exactly
> > you propose to move from the proc interfaces into the ptrace and core
> > implementation packages, and on the other hand the complete renaming of
> > the packages plus introduction of the new live and dead concepts.
> >
> Hardly, we're discussing end-goals. There's no need to describe in
> detail intermediate steps here.
OK, what are the end-goals?
> > I believe these new concepts of live and dead aren't really different
> > from the ptrace vs core distinction we have now. And if so then renaming
> > everything doesn't solve any actual problem, but just introduces random
> > change. But your examples don't make this clear to me.
> >
> Could there be confusion between a attribute such as liveness with an
> implementation choice such as ptrace. Not unlike how Collection is the
> super object, List is a refinement, and ArrayList is a specific
> implementation choice.
Yes, I think that is the confusion. You propose to just rename
proc.ptrace and proc.core to live and dead, while they are perfectly
good implementation choices for your concepts of live and frozen (nee
dead). Renaming things doesn't solve problems, it just moves problems
and makes things harder for others to follow. So concentrate on the
attributes you want to model first instead of randomly renaming specific
implementation files.
> > My proposal is that you first describe the separation of interface and
> > implementation between proc, ptrace and core, and then if we have a good
> > separation between interface packages and implementation packages then
> > you introduce the live and dead property concepts based on that.
> >
> And the way we do that is with the code. If I don't like the results
> i'll fix them.
No. That is not how you work with a group of people on a project. You
try to explain the why of changes you do so everybody has a clear vision
of the goals, what problems it actually solves and give some examples of
actual code that illustrates your goals. Then the group as a whole can
help with the results and anticipate where the project is moving.
This long thread just started with a suggestion to move around some
package names and classes to which I said that I didn't like that, but
that I was interested in the concepts behind the idea and would like to
know a bit more about the problems you had seen with the current setup
and how your suggestion would fix some concrete problems. This isn't
about criticizing your work (although I was very unhappy that you just
moved things around while we were still discussing whether or not that
was a good idea), but about understanding what you actually want to
achieve. Which real world problems it solves and how it makes frysk a
better platform.
We have a large group of diverse people working on frysk all over the
planet. I don't have the luxury of being near you and see your
hand-waving when you explain things or use osmosis to absorb all your
knowledge. And that is true for almost every pairing of frysk hackers.
So to raise the collective awareness of the problems we have, the flaws
in our current setup that prevent us to solve some things and the
solutions we come up with, we have to try and explain things as clearly
as we can to each other. That is all I ask.
You might leave the project, someone else might join at a later time,
people move through the whole frysk codebase to improve and fix things
etc. So we need to have these discussions about what, why and how we are
solving things with frysk. That way the collective awareness of our
group of hackers grows. And more than just one individual knows the why
of the design of the different parts of frysk. So please try to share
your knowledge with others, even if that means explaining things that
are obviously clear to yourself. People do want to learn from you. And
you might actually get some nice feedback and ideas for improvements
back.
Cheers,
Mark
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
next prev parent reply other threads:[~2007-06-20 8:21 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-06-13 13:17 Andrew Cagney
2007-06-14 10:11 ` Mark Wielaard
2007-06-14 14:08 ` Andrew Cagney
2007-06-15 9:05 ` Mark Wielaard
2007-06-15 15:04 ` Andrew Cagney
2007-06-15 19:44 ` Mark Wielaard
2007-06-18 18:15 ` Andrew Cagney
2007-06-18 19:06 ` Mark Wielaard
2007-06-18 23:29 ` Andrew Cagney
2007-06-19 8:59 ` Mark Wielaard
2007-06-19 22:30 ` Andrew Cagney
2007-06-20 9:21 ` Mark Wielaard [this message]
2007-06-19 8:32 ` Andrew Cagney
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1182327683.4501.45.camel@dijkstra.wildebeest.org \
--to=mark@klomp.org \
--cc=cagney@redhat.com \
--cc=frysk@sourceware.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).