Loading ...
Sorry, an error occurred while loading the content.

Re: [extremeperl] The Bivio naming scheme and the Perl community ethic

Expand Messages
  • Rob Nagler
    ... Difficult question. The folks who haven t worked at bivio, probably can t answer this question. Answers from bivions probably look like an excuse. Double
    Message 1 of 5 , Feb 25, 2005
    • 0 Attachment
      bauhaus@... writes:
      > It is kind of hard to understand why Bivio is not offered in separate
      > easy to understand components:

      Difficult question. The folks who haven't worked at bivio, probably
      can't answer this question. Answers from bivions probably look like
      an excuse. Double bind. Oh well, I'll give it my best shot.

      > + Bivio has a naming scheme that is incompatible with CPAN.

      TIMTOWTDI. :-) Why is CPAN incompatible with the world? The postal
      system was designed a couple of years before CPAN. Why are addresses
      in Europe big endian and addresses in the US little endian? Such is
      life.

      Frankly, I've never been able to figure out CPAN's naming or
      categorization system. Let's look at:

      http://cpan.uwinnipeg.ca/chapter/Opt_Arg_Param_Proc

      ("chapter" in the URI is a "category", why two names?) On this page,
      you have: App, Bio, ClearCase, ctflags, GetArgs, HH, Maypole, P4,
      Parrot, Script, AppConfig, Bryar, Config, DNS, Getopt, Java,
      OpenInteract, Pangloss, POEST, User, Argv, Buscador, ConfigReader,
      Fry, Haver, Mac, OpenPlugin, Params, Resources, and XAO.

      This is a whimsical naming scheme at best and chaotic at worst. Why
      is Bivio::* any different than ClearCase::*?

      > It is Java-inspired.

      Once and only once doesn't mean "the CPAN way". Java isn't the only
      way either, but we shouldn't ignore its solutions. Rather we should
      study them, and adopt/adapt them to solve our problems. The same is
      true of other systems, such as, Python, Ruby, Lisp, C, C++, Modula-2,
      Pascal, Ada, ALGOL, and FORTRAN.

      I have always taken the Perl community ethic to mean that we think
      about what we are doing, and don't do something just because someone
      tells us that it is the right way. There is no right way, just the
      way that works best for your problems. bOP evolved with this ethic in
      mind.

      > I tried to ask for more info on Java naming:
      >
      > http://www.javajunkies.org/index.pl?lastnode_id=717&node_id=4159
      >
      > but really could not understand the motivation for it. As long as
      > your package on CPAN has a unique name, it won't conflict with other
      > packages.

      The folks who invented Java had 20+ years on the folks who invented
      CPAN. They lived through the "hosts" file being passed around every
      night before DNS was invented. DNS solved the unique name problem
      elegantly and simply, and well before CPAN or Perl was invented.

      > + Bivio is not on CPAN

      Feel free to mirror bOP on CPAN.

      We have no business need to put bOP on CPAN. Indeed there are many
      things that CPAN doesn't offer us, such as, letting us run a demo of
      the Bivio::* classes (petshop.bivio.biz) and our "view source"
      feature.

      > + Bivio implements all aspects of web application development but not in
      > a way that isolated aspects can be used independantly.

      A misconception. Consider that J2EE is distributed in a bundle (much
      larger than bOP). Anybody doing J2EE is making a choice to buy into
      the J2EE ecosystem. They don't want to download a new module every
      time they want to expand their use/knowledge of the ecosystem. That
      doesn't mean that J2EE is a monolith. It's a collection of layered
      classes just like bOP is.

      > Contrast, for example, with HTML::Mason which has a number of
      > modules of great utility outside of it: Params::Validate,
      > Class::Container, etc.

      Great utility is in the eyes of the user. Params::Validate is of
      little or no utility if you dislike strong typing. Perl is
      weakly-typed. If I wanted strong typing, I'd be programming in Java.

      I can't figure out why I would need Class::Container. Is there any
      problem solved by bOP that would be better solved by Class::Container?
      Parameters are the least of my problems when dealing with inheritance.
      It's unexpected behavior that messes things up.

      Rob
    • bauhaus@metaperl.com
      ... Well, just one unless you want to create a shell script: If you used CPAN, you could have a Makefile.PL whose PREREQ_PM specified all of the modules Bivio
      Message 2 of 5 , Feb 26, 2005
      • 0 Attachment
        Rob Nagler <nagler@...> writes:

        > bauhaus@... writes:
        >
        >> + Bivio is not on CPAN
        >
        > Feel free to mirror bOP on CPAN.
        >
        > We have no business need to put bOP on CPAN.


        Well, just one unless you want to create a shell script:

        If you used CPAN, you could have a Makefile.PL whose PREREQ_PM
        specified all of the modules Bivio needed.

        Alternatively, you might just upload a Bivio::Bundle file which
        specifies the modules to install. It's just a small file which will
        drive the loading of other files.

        Just an idea. I know no one has time for what is not really necessary.

        --
        Carter's Compass: I know I'm on the right track when,
        by deleting something, I'm adding functionality.
      • Rob Nagler
        ... If this weren t an XP list, I wouldn t belabor the point... This is not a business need. This is a technical possibility. The world is full of technical
        Message 3 of 5 , Feb 27, 2005
        • 0 Attachment
          bauhaus@... writes:
          > > We have no business need to put bOP on CPAN.
          >
          > Well, just one unless you want to create a shell script:
          >
          > If you used CPAN, you could have a Makefile.PL whose PREREQ_PM
          > specified all of the modules Bivio needed.

          If this weren't an XP list, I wouldn't belabor the point... This is
          not a business need. This is a technical possibility. The world is
          full of technical possibilities with absolutely no business value.

          Rob
        • Adrian Howard
          ... A round of applause for dragging it on topic :-) Adrian
          Message 4 of 5 , Mar 2, 2005
          • 0 Attachment
            On 27 Feb 2005, at 18:33, Rob Nagler wrote:

            >
            > bauhaus@... writes:
            >>> We have no business need to put bOP on CPAN.
            >>
            >> Well, just one unless you want to create a shell script:
            >>
            >> If you used CPAN, you could have a Makefile.PL whose PREREQ_PM
            >> specified all of the modules Bivio needed.

            A round of applause for dragging it on topic :-)

            Adrian
          Your message has been successfully submitted and would be delivered to recipients shortly.