Re: [PD] inconsistencies with lib names (was: representning classes and selectors in the wiki)

2007-09-20 Thread Mathieu Bouchard

On Tue, 18 Sep 2007, Hans-Christoph Steiner wrote:

They key difference would be that each stdlib would have a standardized 
interface, and each objectclass would conform to that interface.  For 
example, there could be an 'io' standard lib. Everything in that lib 
would respond to [open(, [close(, etc. in the same way, the first inlet 
would behave similarly, and the first outlet would be the data in the 
form of lists, and the second outlet would be status info in the form of 
lists.


That's also called an interface, a protocol, a contract, or an 
abstract class.


For example, if I have [comport], [tcpsocket] and [file] classes, all 
three of which implement the io protocol, then any of those three can be 
called an io object, or an object of the io class, and each of those 
three's helpfiles can refer to the io protocol help file instead of 
copy-pasting each other, and then you have help files about classes that 
are not implementations and which you can't instantiate because they only 
exist documentation-wise, and that's alright. That's a direction that I 
advocate for PDDP.


This concept is independent from namespaces. It has to, to some extent, 
because often a class will implement multiple protocols. Even in the io 
department, you can split the io interface into readable, writable, 
seekable, etc.; then it's better to have the namespace go with a 
category of classes that are related by their protocol relationships, but 
don't necessarily all implement a same single protocol.


 _ _ __ ___ _  _ _ ...
| Mathieu Bouchard - tél:+1.514.383.3801, Montréal QC Canada___
PD-list@iem.at mailing list
UNSUBSCRIBE and account-management - 
http://lists.puredata.info/listinfo/pd-list


Re: [PD] inconsistencies with lib names (was: representning classes and selectors in the wiki)

2007-09-19 Thread Frank Barknecht
Hallo,
Hans-Christoph Steiner hat gesagt: // Hans-Christoph Steiner wrote:

 We would not have Gem, PDP, PiDiP, hid, ann, pdogg, streaming, theora/ 
 speex/mp3 externals, etc. if we did not allow externals to use non- 
 core libraries. 

Nowhere did I say that. All I'm suggesting is, that a std-library of
externals and abstractions must be self-contained: It must include
everything that is needed to run it (except Pd). Add to that that
ideally this lib would also run on pure-Pd, abstractions must use only
core objects or externals from the std-lib itself, nothing else.

Note that I don't see the std-lib as a pd-distribution itself. It's
not meant to be a duplicate of what pd-extended does. Pd-extended
could include the stdlib, but not define what the stdlib is.

 Instead of arbitrary restrictions, we should make an  
 environment where people can count on having the libraries they need  
 in the same place on every machine.  This is a key thing about Java,  
 Debian, etc. and this is the core purpose of Pd-extended.

I don't think a std-library can be restricted to one pd-distribution
only. This would be the same as if Python's os-module would only run
on Debian. Wouldn't be a problem to me, but it would be for many
others.

Ciao
-- 
 Frank Barknecht _ __footils.org_ __goto10.org__

___
PD-list@iem.at mailing list
UNSUBSCRIBE and account-management - 
http://lists.puredata.info/listinfo/pd-list


Re: [PD] inconsistencies with lib names (was: representning classes and selectors in the wiki)

2007-09-18 Thread IOhannes m zmoelnig
Frank Barknecht wrote:
 Hallo,

 
 Another issue would be the use of objects not in Pd core in such a
 standard library. In my opinion and for reasons I mentioned several
 times during the last days a Pd-std-library should work without
 third-party externals (like the purepd or list-abs collections).


as far as i have understood it, the standard library wants to duplicate 
externals: e.g. an object that allows interfacing with the serial port 
would be a copy of iem/comport that is named hardware/comport (or whatever).
thus it would not rely on 3rd party externals, but on stdlib 
internal libraries. (with duplicate code and everything that follows 
from it)


fma.dsr
IOhannes

___
PD-list@iem.at mailing list
UNSUBSCRIBE and account-management - 
http://lists.puredata.info/listinfo/pd-list


Re: [PD] inconsistencies with lib names (was: representning classes and selectors in the wiki)

2007-09-18 Thread Frank Barknecht
Hallo,
Hans-Christoph Steiner hat gesagt: // Hans-Christoph Steiner wrote:

 This all sounds excellent, I think this is exactly what would work  
 well.  As for choosing standard namespace names, I think that we  
 should follow the lazy consensus rule, with required discussion,  
 i.e., standard lib names should not be automatically accepted unless  
 there is discussion.

I think there is need for discussion when it comes to the classes in
standard lib names, as I think, that the std-namespace(s) require(s) a
more elaborated style guide/specification. 

Two issues come to my mind immediatly. One is that the behaviour of
every of these std-objects needs to be discussed before they are
finally released into the wild to avoid future complications and
possibly incompatible changes and conflicting interfaces like we have
with [counter]. (Matju probably would wisely recommend to add tests as
well.)

Another issue would be the use of objects not in Pd core in such a
standard library. In my opinion and for reasons I mentioned several
times during the last days a Pd-std-library should work without
third-party externals (like the purepd or list-abs collections).

That's not because I don't like externals or would want to convince
everyone to never touch an external, it's just that a std-library for
a programming language should be self-contained. For example if you
install Python, a Python programmer can rely on the fact, that all the
modules delivered with the core-Python will definitely work. It's
still possible to use additional Python modules, but of course none of
the core-python modules depends on third-party modules like pyode etc.

Pd distributions like pd-extended or the packages included in the
various Linux-distributions may still opt to ship optimized
implementations of the std-library classes that use externals. I've
already mentioned as an example two versions of [list-drip]: one using
no externals as in list-abs and one just wrapping [zexy/drip].
Pd-extended could include the [list-drip] with [zexy/drip] as default,
users of e.g. PDa would maybe use the list-abs version. However as a
guideline I believe, that every std-class should have a purepd
implementation, otherwise it should not be included in that namespace.

As a side note I may add that finding solutions to some tricky
problems under the additional restriction to only use builtin objects
is a very satisfying experience. It makes you feel like a Master Of
The Universe(tm) ;-)

Ciao
-- 
 Frank Barknecht _ __footils.org_ __goto10.org__

___
PD-list@iem.at mailing list
UNSUBSCRIBE and account-management - 
http://lists.puredata.info/listinfo/pd-list


Re: [PD] inconsistencies with lib names (was: representning classes and selectors in the wiki)

2007-09-18 Thread Georg Holzmann
Hallo!

 as far as i have understood it, the standard library wants to duplicate 
 externals: e.g. an object that allows interfacing with the serial port 
 would be a copy of iem/comport that is named hardware/comport (or whatever).
 thus it would not rely on 3rd party externals, but on stdlib 
 internal libraries. (with duplicate code and everything that follows 
 from it)

As far as I undestood it the code of e.g. comport would go in this 
standard lib (e.g. to hardware/comport) but should not duplicate the 
code - instead the iem/comport code should be obsolete and now 
maintained in hardware/comport.

But as the others convinced me at the pd conv I don't think that this 
will happen soon (and soon in pd time means maybe 8-10 years ... ;)

LG
Georg

___
PD-list@iem.at mailing list
UNSUBSCRIBE and account-management - 
http://lists.puredata.info/listinfo/pd-list


Re: [PD] inconsistencies with lib names (was: representning classes and selectors in the wiki)

2007-09-18 Thread IOhannes m zmoelnig
Georg Holzmann wrote:
 Hallo!
 
 as far as i have understood it, the standard library wants to duplicate 
 externals: e.g. an object that allows interfacing with the serial port 
 would be a copy of iem/comport that is named hardware/comport (or whatever).
 thus it would not rely on 3rd party externals, but on stdlib 
 internal libraries. (with duplicate code and everything that follows 
 from it)
 
 As far as I undestood it the code of e.g. comport would go in this 
 standard lib (e.g. to hardware/comport) but should not duplicate the 
 code - instead the iem/comport code should be obsolete and now 
 maintained in hardware/comport.

that is obviously the idea of the stdlib maintainers.

nevertheless, it assumes that the auther of a certain object would 
happily give up their object and either maintain a stdlibized version 
or withdraw from maintaining the object alltogether (and someone else 
maintains the stdlibized version)

i guess, the 1st option is the one we would want to see happen.

nevertheless i have some doubts: often, objects can not simply be 
moved into the stdlib, but they should follow some standard (hence 
the name!) design principles (of the interface).
but changing the interface of an object is a heavy modification, which 
needs a lot of social competence)
(i am pretty sure that there are lots of ideas how to make objects in 
zexy more consistent with other objects, however i have spend a lot of 
time in designing the API (at least for some of them :-))

Pd-externals are usually FLOSS.
this gives us the technical permission to duplicate the code. it is not 
necessarily a social permission.

mfgad.sr
IOhannes

___
PD-list@iem.at mailing list
UNSUBSCRIBE and account-management - 
http://lists.puredata.info/listinfo/pd-list


Re: [PD] inconsistencies with lib names (was: representning classes and selectors in the wiki)

2007-09-18 Thread Frank Barknecht
Hallo,
Georg Holzmann hat gesagt: // Georg Holzmann wrote:

 As far as I undestood it the code of e.g. comport would go in this 
 standard lib (e.g. to hardware/comport) but should not duplicate the 
 code - instead the iem/comport code should be obsolete and now 
 maintained in hardware/comport.

Yes, that would be the idea for binaries in the std-lib.

 But as the others convinced me at the pd conv I don't think that this 
 will happen soon (and soon in pd time means maybe 8-10 years ... ;)

Depends on how you define this: I don't think that every external
has to move over to stdlib immediately, if at all. comport would be a
good example for an external that could stay outside the stdlib for
the next 8-10 years without any bigger problems, as it is an object
with a rather specific purpose. [drip] OTOH would be a candidate to
take immediately. The old build-system by Guenther (flatspace in
pd-extended) already showed the how the whole stdlib could be built as
far as externals are concerned, and abstractions are dead easy to
handle (as long as they are core-Pd-abstractions).

Ciao
-- 
 Frank Barknecht _ __footils.org_ __goto10.org__

___
PD-list@iem.at mailing list
UNSUBSCRIBE and account-management - 
http://lists.puredata.info/listinfo/pd-list


Re: [PD] inconsistencies with lib names (was: representning classes and selectors in the wiki)

2007-09-18 Thread Hans-Christoph Steiner

On Sep 18, 2007, at 11:04 AM, Frank Barknecht wrote:

 Hallo,
 Georg Holzmann hat gesagt: // Georg Holzmann wrote:

 As far as I undestood it the code of e.g. comport would go in this
 standard lib (e.g. to hardware/comport) but should not duplicate the
 code - instead the iem/comport code should be obsolete and now
 maintained in hardware/comport.

 Yes, that would be the idea for binaries in the std-lib.

 But as the others convinced me at the pd conv I don't think that this
 will happen soon (and soon in pd time means maybe 8-10 years ... ;)

 Depends on how you define this: I don't think that every external
 has to move over to stdlib immediately, if at all. comport would be a
 good example for an external that could stay outside the stdlib for
 the next 8-10 years without any bigger problems, as it is an object
 with a rather specific purpose. [drip] OTOH would be a candidate to
 take immediately. The old build-system by Guenther (flatspace in
 pd-extended) already showed the how the whole stdlib could be built as
 far as externals are concerned, and abstractions are dead easy to
 handle (as long as they are core-Pd-abstractions).

It's all a matter of perspective.  I use [comport] all the time and  
really want a [io/serial] that is based on comport, but has a clean,  
standardized interface in common with all IO objects (i.e. same basic  
messages, inlets, outlets, etc.).  I have never used [drip], so it  
doesn't matter to me whether that was included now or in 10 years.   
Whether iem/comport is maintained is also a non-issue.  If someone  
wants to do the work to maintain both, why stop them?

.hc


 Ciao
 -- 
  Frank Barknecht _ __footils.org_ __goto10.org__

 ___
 PD-list@iem.at mailing list
 UNSUBSCRIBE and account-management - http://lists.puredata.info/ 
 listinfo/pd-list




 


 kill your television



___
PD-list@iem.at mailing list
UNSUBSCRIBE and account-management - 
http://lists.puredata.info/listinfo/pd-list


Re: [PD] inconsistencies with lib names (was: representning classes and selectors in the wiki)

2007-09-18 Thread Hans-Christoph Steiner

On Sep 18, 2007, at 8:23 AM, IOhannes m zmoelnig wrote:

 Frank Barknecht wrote:
 Hallo,


 Another issue would be the use of objects not in Pd core in such a
 standard library. In my opinion and for reasons I mentioned several
 times during the last days a Pd-std-library should work without
 third-party externals (like the purepd or list-abs collections).


 as far as i have understood it, the standard library wants to  
 duplicate
 externals: e.g. an object that allows interfacing with the serial port
 would be a copy of iem/comport that is named hardware/comport (or  
 whatever).
 thus it would not rely on 3rd party externals, but on stdlib
 internal libraries. (with duplicate code and everything that follows
 from it)

They key difference would be that each stdlib would have a  
standardized interface, and each objectclass would conform to that  
interface.  For example, there could be an 'io' standard lib.   
Everything in that lib would respond to [open(, [close(, etc. in the  
same way, the first inlet would behave similarly, and the first  
outlet would be the data in the form of lists, and the second outlet  
would be status info in the form of lists.

So no, I don't think we should just copy over existing code without  
change.  Instead, we should use existing code when it's useful, but  
focus on having a clean and consistent interface for each library.

Then the old author's name libraries, like iem, zexy, ggee, etc.  
would remain in place for backwards compatibility.

.hc



 fma.dsr
 IOhannes

 ___
 PD-list@iem.at mailing list
 UNSUBSCRIBE and account-management - http://lists.puredata.info/ 
 listinfo/pd-list



 


There is no way to peace, peace is the way.   -A.J. Muste



___
PD-list@iem.at mailing list
UNSUBSCRIBE and account-management - 
http://lists.puredata.info/listinfo/pd-list


Re: [PD] inconsistencies with lib names (was: representning classes and selectors in the wiki)

2007-09-18 Thread Hans-Christoph Steiner

On Sep 18, 2007, at 9:43 AM, IOhannes m zmoelnig wrote:

 Georg Holzmann wrote:
 Hallo!

 as far as i have understood it, the standard library wants to  
 duplicate
 externals: e.g. an object that allows interfacing with the serial  
 port
 would be a copy of iem/comport that is named hardware/comport (or  
 whatever).
 thus it would not rely on 3rd party externals, but on stdlib
 internal libraries. (with duplicate code and everything that  
 follows
 from it)

 As far as I undestood it the code of e.g. comport would go in this
 standard lib (e.g. to hardware/comport) but should not duplicate the
 code - instead the iem/comport code should be obsolete and now
 maintained in hardware/comport.

 that is obviously the idea of the stdlib maintainers.

 nevertheless, it assumes that the auther of a certain object would
 happily give up their object and either maintain a stdlibized  
 version
 or withdraw from maintaining the object alltogether (and someone else
 maintains the stdlibized version)

 i guess, the 1st option is the one we would want to see happen.

 nevertheless i have some doubts: often, objects can not simply be
 moved into the stdlib, but they should follow some standard (hence
 the name!) design principles (of the interface).
 but changing the interface of an object is a heavy modification, which
 needs a lot of social competence)
 (i am pretty sure that there are lots of ideas how to make objects in
 zexy more consistent with other objects, however i have spend a  
 lot of
 time in designing the API (at least for some of them :-))

They key difference would be that each stdlib would have a  
standardized interface, and each objectclass would conform to that  
interface.  For example, there could be an 'io' standard lib.   
Everything in that lib would respond to [open(, [close(, etc. in the  
same way, the first inlet would behave similarly, and the first  
outlet would be the data in the form of lists, and the second outlet  
would be status info in the form of lists.

So no, I don't think we should just copy over existing code without  
change.  Instead, we should use existing code when it's useful, but  
focus on having a clean and consistent interface for each library.

Then the old author's name libraries, like iem, zexy, ggee, etc.  
would remain in place for backwards compatibility.


 Pd-externals are usually FLOSS.
 this gives us the technical permission to duplicate the code. it is  
 not
 necessarily a social permission.

Why use a free license then?  That just needlessly complicates  
things.  If someone doesn't want people freely using their code, then  
they should say so overtly.  Not, my license says you can use my  
code, but if you do, then I'll get mad and work against you.

.hc


 mfgad.sr
 IOhannes

 ___
 PD-list@iem.at mailing list
 UNSUBSCRIBE and account-management - http://lists.puredata.info/ 
 listinfo/pd-list



 


If you are not part of the solution, you are part of the problem.



___
PD-list@iem.at mailing list
UNSUBSCRIBE and account-management - 
http://lists.puredata.info/listinfo/pd-list


Re: [PD] inconsistencies with lib names (was: representning classes and selectors in the wiki)

2007-09-17 Thread Hans-Christoph Steiner

On Sep 16, 2007, at 5:59 AM, Frank Barknecht wrote:

 Hallo,
 Frank Barknecht hat gesagt: // Frank Barknecht wrote:

 Thomas O Fredericks hat gesagt: // Thomas O Fredericks wrote:
 By building the pdmtl abstractions layer, users do not have to  
 care about
 namespaces anymore (anyways, I don't), as all externals/libraries  
 are
 treated as hidden code to the end user. I still believe that having
 namespaces based on authors is a bad idea.

 Yes. And no, too.

 Oops, forgot to explain why yes and no. Namespaces based on
 author/vendor solve nameclashes: cxc_counter, maxlib_counter,
 cyclone_counter. Namespaces based on functionality don't: Which one
 of the three above should become math/counter?

 I think, a STD-library of Pd objects should of course be based on
 functional namespaces, while vendor-namespaces could be used to let
 various independent vendors do their own thing without creating
 conflicts with each other.

 All an editor in chief would need to do is keep a list of which
 vendor names are already taken. The editor in chief could then be a
 simple Wiki page on puredata.info. Or not even that, if vendor
 namespaces are based on things like DNS-names as plists in OS-X.

Call me an anarchist, but I believe that we can do it without an  
editor-in-chief.  It just takes some communication and mutual  
respect.  We've gotten this far with the whole Pd-extended collection  
without an editor-in-chief.

.hc


 Ciao
 -- 
  Frank Barknecht _ __footils.org_ __goto10.org__

 ___
 PD-list@iem.at mailing list
 UNSUBSCRIBE and account-management - http://lists.puredata.info/ 
 listinfo/pd-list




 


 kill your television



___
PD-list@iem.at mailing list
UNSUBSCRIBE and account-management - 
http://lists.puredata.info/listinfo/pd-list


Re: [PD] inconsistencies with lib names (was: representning classes and selectors in the wiki)

2007-09-17 Thread Frank Barknecht
Hallo,
Hans-Christoph Steiner hat gesagt: // Hans-Christoph Steiner wrote:

 Call me an anarchist, but I believe that we can do it without an  
 editor-in-chief.  It just takes some communication and mutual  
 respect.  We've gotten this far with the whole Pd-extended collection  
 without an editor-in-chief.

Unless one considers you to be the pd-extended editor-in-chief. ;) 

An editor-in-chief wouldn't need to be a real person. A wiki page or a
textfile in cvs/svn would be enough plus some simple rules.
Registering a namespace name would be as simple as writing the name
one wants to use plus a contact in there. 

Possible simple rules could be: 

* announcements should go to pd-dev before registering.
* otherwise first come, first serve.
* everthing that starts with NAME/ is reserved to the registered
  project.
* every class that is registered should always be used with NAME/.

Additionaly rules could be: 

* NAMES must start with letter or digit and be all lowercase.
* NAMES starting with an _underscore are for private use (and cannot
  be registered)

Only remaning issue would be that generic/functional names like math
or std or pd are tricky, because they might be needed for a real
std-namespace later. Vendor-based names like footils are easier in
this regard, but mnemonics are worse.

Ciao
-- 
 Frank Barknecht _ __footils.org_ __goto10.org__

___
PD-list@iem.at mailing list
UNSUBSCRIBE and account-management - 
http://lists.puredata.info/listinfo/pd-list


Re: [PD] inconsistencies with lib names (was: representning classes and selectors in the wiki)

2007-09-17 Thread Hans-Christoph Steiner

On Sep 17, 2007, at 12:21 PM, Frank Barknecht wrote:

 Hallo,
 Hans-Christoph Steiner hat gesagt: // Hans-Christoph Steiner wrote:

 Call me an anarchist, but I believe that we can do it without an
 editor-in-chief.  It just takes some communication and mutual
 respect.  We've gotten this far with the whole Pd-extended collection
 without an editor-in-chief.

 Unless one considers you to be the pd-extended editor-in-chief. ;)

Yeah... I think that's part of the problem with Pd-extended, that I  
have been the de facto editor-in-chief.  I think it'll work much  
better as more people get involved.  I can't keep up on the details  
of everyone's libs... :D

 An editor-in-chief wouldn't need to be a real person. A wiki page or a
 textfile in cvs/svn would be enough plus some simple rules.
 Registering a namespace name would be as simple as writing the name
 one wants to use plus a contact in there.

 Possible simple rules could be:

 * announcements should go to pd-dev before registering.
 * otherwise first come, first serve.
 * everthing that starts with NAME/ is reserved to the registered
   project.
 * every class that is registered should always be used with NAME/.

 Additionaly rules could be:

 * NAMES must start with letter or digit and be all lowercase.
 * NAMES starting with an _underscore are for private use (and cannot
   be registered)

 Only remaning issue would be that generic/functional names like math
 or std or pd are tricky, because they might be needed for a real
 std-namespace later. Vendor-based names like footils are easier in
 this regard, but mnemonics are worse.

This all sounds excellent, I think this is exactly what would work  
well.  As for choosing standard namespace names, I think that we  
should follow the lazy consensus rule, with required discussion,  
i.e., standard lib names should not be automatically accepted unless  
there is discussion.

In order for things to get done, I think we need project leads,  
which have similar duties to an editor-in-chief, but I think it  
should be more like a community organizer who focuses on organizing  
things like the rules for a given library.  A key difference would be  
that a project lead would not have the complete authority of a editor- 
in-chief.  The mob that is the Pd community would always have some  
say if we want. :)

.hc


 Ciao
 -- 
  Frank Barknecht _ __footils.org_ __goto10.org__

 ___
 PD-list@iem.at mailing list
 UNSUBSCRIBE and account-management - http://lists.puredata.info/ 
 listinfo/pd-list



 


[W]e have invented the technology to eliminate scarcity, but we are  
deliberately throwing it away to benefit those who profit from  
scarcity.-John Gilmore



___
PD-list@iem.at mailing list
UNSUBSCRIBE and account-management - 
http://lists.puredata.info/listinfo/pd-list


Re: [PD] inconsistencies with lib names (was: representning classes and selectors in the wiki)

2007-09-16 Thread Frank Barknecht
Hallo,
Frank Barknecht hat gesagt: // Frank Barknecht wrote:

 Thomas O Fredericks hat gesagt: // Thomas O Fredericks wrote:
  By building the pdmtl abstractions layer, users do not have to care about
  namespaces anymore (anyways, I don't), as all externals/libraries are
  treated as hidden code to the end user. I still believe that having
  namespaces based on authors is a bad idea. 
 
 Yes. And no, too. 

Oops, forgot to explain why yes and no. Namespaces based on
author/vendor solve nameclashes: cxc_counter, maxlib_counter,
cyclone_counter. Namespaces based on functionality don't: Which one
of the three above should become math/counter?

I think, a STD-library of Pd objects should of course be based on
functional namespaces, while vendor-namespaces could be used to let
various independent vendors do their own thing without creating
conflicts with each other. 

All an editor in chief would need to do is keep a list of which
vendor names are already taken. The editor in chief could then be a
simple Wiki page on puredata.info. Or not even that, if vendor
namespaces are based on things like DNS-names as plists in OS-X.

Ciao
-- 
 Frank Barknecht _ __footils.org_ __goto10.org__

___
PD-list@iem.at mailing list
UNSUBSCRIBE and account-management - 
http://lists.puredata.info/listinfo/pd-list


Re: [PD] inconsistencies with lib names (was: representning classes and selectors in the wiki)

2007-09-15 Thread Frank Barknecht
Hallo,
Roman Haefeli hat gesagt: // Roman Haefeli wrote:

 On Fri, 2007-09-14 at 00:14 -0400, Hans-Christoph Steiner wrote:
  
   Again, this is up to the person building them.
  
   why? what is the benefit of it, when your decision creates
   inconistencies? since everything seems to be hostet in cvs, why  
   does cvs
   still support two ways of compiling them? i'd like to know from the
   devs, if there is any good reason to keep the old makefiles/readmes  
   and
   stuff in cvs.
   if people finally would find only one makefile/readme: byebye
   inconistencies. it automatically wouldn't make a difference anymore,
   whether you are an pd-extended user or not.
  
  I am totally with you in spirit, but the issues are social, not  
  technical.  I think that we should purge all old build systems  
  (they'd still be archived in CVS) and replace them all with a  
  standard build system.  But unfortunately, it has been a very  
  political issue in the past, so the cruft remained.  It seems that  
  things have changed on the social front somewhat, so maybe now this  
  could be done.
  
  Are you volunteering to lead the charge? :-D
 
 actually i would like to do so, but i have some concerns. first, as i
 mentioned a few times before, i've never written a line of c code or a
 makefile or a config-file. my knowledge about this is very limited. and
 i am not a pd-cvs dev myself and thus do not feel like making my hands
 dirty on files which have been written and developped carefully by
 others. and still if i would feel to be able to do it, i would request
 an admission first from the original author for each library before
 doing it. 
 
 if it's only about deleting makefiles/configures and probably editing
 the readmes and all pd-cvs people agree, i would do it.

As I see it, it's not about that at all. Basically it's a social and
not a technical issue. Namespaces aren't something, that can be
enforced technically ATM. They are a convention: Nothing can stop a
user to add the directory of some classes to the Pd search path or
alternatively put them into a directory and use that dir as a
namespace.

Let me explain this taking pdmtl as an (extreme) example: pdmtl can be
used with a double namespace: [pdmtl/list/op] but that's not the way
the pdmtl people suggest to use it: IIRC you're supposed to use
[list/op] instead, as that is, what the help files use. But then, if
you do this, pdmtl grabs a whole bunch of possible prefixes, namely
these:

2d, 3d, anal, convert, count, data, examples, file, flow, fx, gems,
generate, gui, init, input, list, midi, mix, musical, number, random,
sample, scale, seq, sf, synth, table, timing, transform

So more than 30 possible prefix names are taken by pdmtl. 

The important thing to note here is: This doesn't have anything to do
with the way, pdmtl is installed, it's only a matter of how the Pd
search path is configured! How to configure the search path is a
matter of conventions, and I'm convinced, that as long as the Pd
community doesn't agree on conventions, it is not possible to solve.

Ciao
-- 
 Frank Barknecht _ __footils.org_ __goto10.org__

___
PD-list@iem.at mailing list
UNSUBSCRIBE and account-management - 
http://lists.puredata.info/listinfo/pd-list


Re: [PD] inconsistencies with lib names (was: representning classes and selectors in the wiki)

2007-09-15 Thread Thomas O Fredericks
You will be happy to know that the pdmtl abstractions have given up (for a
couple of months now) the [pdmtl/list/op] style of naming it's abstractions.

By building the pdmtl abstractions layer, users do not have to care about
namespaces anymore (anyways, I don't), as all externals/libraries are
treated as hidden code to the end user. I still believe that having
namespaces based on authors is a bad idea. The ideal solution would be to
add alternate names to many externals (like zexy's length could have one
additional line of code that would instantiate it with list.length, by
registering list.length as: class_addcreator((t_newmethod)length_new,
gensym(list.length)...
But then you would need an editor in chief that would decide what objects
get what alternate names. I think the best would be to hold an election for
the editor in chief that would make all the needed changes.

But honestly I do not think this is going to happen as there are many issues
that this thread has already enumerated. In my own opinion, I would say
give up and find another solution. That's what we did :)

Tom

On 9/15/07, Frank Barknecht [EMAIL PROTECTED] wrote:

 Hallo,
 Roman Haefeli hat gesagt: // Roman Haefeli wrote:

  On Fri, 2007-09-14 at 00:14 -0400, Hans-Christoph Steiner wrote:
   
Again, this is up to the person building them.
   
why? what is the benefit of it, when your decision creates
inconistencies? since everything seems to be hostet in cvs, why
does cvs
still support two ways of compiling them? i'd like to know from the
devs, if there is any good reason to keep the old makefiles/readmes
and
stuff in cvs.
if people finally would find only one makefile/readme: byebye
inconistencies. it automatically wouldn't make a difference anymore,
whether you are an pd-extended user or not.
  
   I am totally with you in spirit, but the issues are social, not
   technical.  I think that we should purge all old build systems
   (they'd still be archived in CVS) and replace them all with a
   standard build system.  But unfortunately, it has been a very
   political issue in the past, so the cruft remained.  It seems that
   things have changed on the social front somewhat, so maybe now this
   could be done.
  
   Are you volunteering to lead the charge? :-D
 
  actually i would like to do so, but i have some concerns. first, as i
  mentioned a few times before, i've never written a line of c code or a
  makefile or a config-file. my knowledge about this is very limited. and
  i am not a pd-cvs dev myself and thus do not feel like making my hands
  dirty on files which have been written and developped carefully by
  others. and still if i would feel to be able to do it, i would request
  an admission first from the original author for each library before
  doing it.
 
  if it's only about deleting makefiles/configures and probably editing
  the readmes and all pd-cvs people agree, i would do it.

 As I see it, it's not about that at all. Basically it's a social and
 not a technical issue. Namespaces aren't something, that can be
 enforced technically ATM. They are a convention: Nothing can stop a
 user to add the directory of some classes to the Pd search path or
 alternatively put them into a directory and use that dir as a
 namespace.

 Let me explain this taking pdmtl as an (extreme) example: pdmtl can be
 used with a double namespace: [pdmtl/list/op] but that's not the way
 the pdmtl people suggest to use it: IIRC you're supposed to use
 [list/op] instead, as that is, what the help files use. But then, if
 you do this, pdmtl grabs a whole bunch of possible prefixes, namely
 these:

 2d, 3d, anal, convert, count, data, examples, file, flow, fx, gems,
 generate, gui, init, input, list, midi, mix, musical, number, random,
 sample, scale, seq, sf, synth, table, timing, transform

 So more than 30 possible prefix names are taken by pdmtl.

 The important thing to note here is: This doesn't have anything to do
 with the way, pdmtl is installed, it's only a matter of how the Pd
 search path is configured! How to configure the search path is a
 matter of conventions, and I'm convinced, that as long as the Pd
 community doesn't agree on conventions, it is not possible to solve.

 Ciao
 --
 Frank Barknecht _ __footils.org_ __goto10.org__

 ___
 PD-list@iem.at mailing list
 UNSUBSCRIBE and account-management -
 http://lists.puredata.info/listinfo/pd-list

___
PD-list@iem.at mailing list
UNSUBSCRIBE and account-management - 
http://lists.puredata.info/listinfo/pd-list


Re: [PD] inconsistencies with lib names (was: representning classes and selectors in the wiki)

2007-09-15 Thread Roman Haefeli
On Sat, 2007-09-15 at 11:01 -0400, Thomas O Fredericks wrote:
  I would say give up 

hm it seems the only thing i can do here is to become religious and
a follower of the church of consistency and wait until all have become
members of this church.

roman





___ 
Telefonate ohne weitere Kosten vom PC zum PC: http://messenger.yahoo.de


___
PD-list@iem.at mailing list
UNSUBSCRIBE and account-management - 
http://lists.puredata.info/listinfo/pd-list


Re: [PD] inconsistencies with lib names (was: representning classes and selectors in the wiki)

2007-09-15 Thread Frank Barknecht
Hallo,
Thomas O Fredericks hat gesagt: // Thomas O Fredericks wrote:

 You will be happy to know that the pdmtl abstractions have given up (for a
 couple of months now) the [pdmtl/list/op] style of naming it's abstractions.

In favour of [list/op]? That's what I wrote. Or did I miss something?

 By building the pdmtl abstractions layer, users do not have to care about
 namespaces anymore (anyways, I don't), as all externals/libraries are
 treated as hidden code to the end user. I still believe that having
 namespaces based on authors is a bad idea. 

Yes. And no, too. I believe, there should be several standard,
function-based namespaces. Kind of like pdmtl internally is, but in my
opinion, classes in these STD-library should have implementations
without any dependencies besides Pd core objects. At least that's the
guideline I tried with the [list]-abs: Abstractions in that library
must not use externals *at all*. (See the end of this mail for my
reasoning.)

Then, as an additional layer, versions of these classes could be
provided, that do use externals. So there would be two [list/drip]
implementations: One using only [list ...], another using [drip] from
Zexy for speed reasons. This could then shadow the purepd-version,
when Zexy is available, for example in pd-extended. In fact, I'm
already using many of these external-enhanced variations of [list]-abs
locally.

This way, patches using [list/drip] would run everywhere, even without
Zexy. Being dependency-free they could be used by everyone regardless
of how this everyone has his/her system and search path configured.

 The ideal solution would be to add alternate names to many externals
 (like zexy's length could have one additional line of code that
 would instantiate it with list.length, by registering list.length
 as: class_addcreator((t_newmethod)length_new,
 gensym(list.length)...

I don't really understand which problem alternate names would solve?

 But then you would need an editor in chief that would decide what objects
 get what alternate names. I think the best would be to hold an election for
 the editor in chief that would make all the needed changes.
 
 But honestly I do not think this is going to happen as there are many issues
 that this thread has already enumerated. In my own opinion, I would say
 give up and find another solution. That's what we did :)

I honestly believe that without an editor in chief (which would be a
group of editors or a voting process or a document with guidelines or
...) the nameclash and path setup problem for external classes isn't
possible to solve. I learned that lesson from looking at how Python,
Java, C/C++ and everyone else is giving away standard class
namespaces and keywords.

So far we have one editor in chief and that is Miller Puckette who
decides, what's in Pd-vanilla. Miller is the only constant, that's why
Pd-vanilla IMO is the only working base assumption for a STD-library
as I suggested above.

Ciao
-- 
 Frank Barknecht _ __footils.org_ __goto10.org__

___
PD-list@iem.at mailing list
UNSUBSCRIBE and account-management - 
http://lists.puredata.info/listinfo/pd-list


Re: [PD] inconsistencies with lib names (was: representning classes and selectors in the wiki)

2007-09-14 Thread Roman Haefeli
On Fri, 2007-09-14 at 00:14 -0400, Hans-Christoph Steiner wrote:

 
  Again, this is up to the person building them.
 
  why? what is the benefit of it, when your decision creates
  inconistencies? since everything seems to be hostet in cvs, why  
  does cvs
  still support two ways of compiling them? i'd like to know from the
  devs, if there is any good reason to keep the old makefiles/readmes  
  and
  stuff in cvs.
  if people finally would find only one makefile/readme: byebye
  inconistencies. it automatically wouldn't make a difference anymore,
  whether you are an pd-extended user or not.
 
 I am totally with you in spirit, but the issues are social, not  
 technical.  I think that we should purge all old build systems  
 (they'd still be archived in CVS) and replace them all with a  
 standard build system.  But unfortunately, it has been a very  
 political issue in the past, so the cruft remained.  It seems that  
 things have changed on the social front somewhat, so maybe now this  
 could be done.
 
 Are you volunteering to lead the charge? :-D

actually i would like to do so, but i have some concerns. first, as i
mentioned a few times before, i've never written a line of c code or a
makefile or a config-file. my knowledge about this is very limited. and
i am not a pd-cvs dev myself and thus do not feel like making my hands
dirty on files which have been written and developped carefully by
others. and still if i would feel to be able to do it, i would request
an admission first from the original author for each library before
doing it. 

if it's only about deleting makefiles/configures and probably editing
the readmes and all pd-cvs people agree, i would do it.

roman

 




___ 
Der frühe Vogel fängt den Wurm. Hier gelangen Sie zum neuen Yahoo! Mail: 
http://mail.yahoo.de


___
PD-list@iem.at mailing list
UNSUBSCRIBE and account-management - 
http://lists.puredata.info/listinfo/pd-list


Re: [PD] inconsistencies with lib names (was: representning classes and selectors in the wiki)

2007-09-13 Thread Roman Haefeli
On Thu, 2007-09-13 at 07:30 +0200, Roman Haefeli wrote:

 i tried to always call it 'pd-vanilla/externals', not just 'pd-vanilla',
 in order to make clear, that i am using pd-vanilla and compiling the
 externals myself. anyway, if i compile the externals how it is described
 in the README, that comes with the externals, and which i call the
 'original way' to compile them, i get one library containing several
 objects, where namespaces don't work. 
 
 iemlib is a special case, because there is not only the inconsistency of
 having namespaces in pd-extended and not having them in
 'pd-vanilla/externals', but also different names of libraries. in order
 to create a patch, that works on both, it's required to have a [declare]
 with the all these flags:
 -stdpath iemabs
 -stdpath iemlib
 -stdlib iemlib1
 -stdlib iemlib2
 -stdlib iem_t3_lib
 just to get iemlib working everywhere.
 
 since [declare] doesn't output an error, when not finding a lib or a
 path, this can be handled this way, though it is a bit awkward.
 
 yo, lets make it simple: shouldn't the one or the other be skipped in
 cvs? since the libdir is more widely used, i assume, and has also some
 advantages compared to the old standard (am i right here?), let's skip
 the old way of creating externals. i thirst for consistency, really. i
 am going to found the church of consistency. 

some people could probably find it a bit nasty, that a guy like me, who
haven't contributed not a single line of code to the cvs yet, does make
such proposals. please excuse me for that (i'm already a bit tired and
have had some beers).
however, the church of consistency will be founded.

roman






___ 
Der frühe Vogel fängt den Wurm. Hier gelangen Sie zum neuen Yahoo! Mail: 
http://mail.yahoo.de


___
PD-list@iem.at mailing list
UNSUBSCRIBE and account-management - 
http://lists.puredata.info/listinfo/pd-list


Re: [PD] inconsistencies with lib names (was: representning classes and selectors in the wiki)

2007-09-13 Thread Hans-Christoph Steiner

On Sep 13, 2007, at 1:30 AM, Roman Haefeli wrote:

 On Thu, 2007-09-13 at 00:49 -0400, Hans-Christoph Steiner wrote:
 On Sep 12, 2007, at 12:47 PM, Roman Haefeli wrote:

 hi marius, hi iohannes

 sorry to chime whitout having participated yet to this discussion at
 all,

 On Wed, 2007-09-12 at 17:17 +0200, IOhannes m zmoelnig wrote:
 marius schebella wrote:

 how stable is the library structure? if it is stable over several
 years,
 then it could be arbitrary. but some objects jump around. from
 zexy to
 iem (mtx?), from iemlib1 to iemlib (don't know if that is  
 really the
 case...) from iemlib to puredata core (gui)... from everywhere to
 flatspace.


 wow:
 zexy had the matrix objects for several years (they first appeared
 therein in 2001; and they vanished by 2005)
 iemmatrix has the matrix objects for several years too (2005-today)

 iemlib consists of 3 binary libraries (iemlib1, iemlib2, iem_t3)
 and a
 collection of abstractions; this has not changed since i know this
 library (which is quite some time)
 i don't know which object has moved from the sub-package  
 iemlib1 to
 the meta-package iemlib. i thought this would be impossible,
 given the
 structure of the iemlib.

 let us not be troubled by repackaging of objects.

 but i am. it's not only, that objects (or 'classes') used to move  
 from
 one to the other, but they exist at two different places at the same
 time, dependent on whether you are using pd-extended (with libdir
 format) or pd-vanilla with the original externals. iemlib is a good
 example, lets stick with this one. [hp1~] is part of 'iemabs' in
 pd-vanilla and part of 'iemlib' in pd-extended. if you want to use
 namespaces for instantiating the objects, it doesn't work
 crosscompatible on both distros.
 however, this is actually a different story, but probably affects  
 the
 way we want to implement the wiki. since there _are_  
 incompatibilites
 between pd-vanilla/original libs and pd-extended, i vehemently  
 propose
 to decide which route to follow for the database: the
 'pd-vanilla/externals' way or the 'pd-extended' way. let's also
 face who
 is actually addressed with this database. one of its goals is to  
 have
 all information about objects available at one place, which is, i
 think,
 fairly essential for people, who are new to pd and want to  
 explore all
 facets of pd. i also believe, that most of these people will use
 pd-extended, since it is by far the easiest way to get 'just
 everything'. taking into account all these points, i strongly  
 believe,
 that it would be the best way to reflect the pd-extended topology
 in the
 database, none the less just because people, who compile pd and
 externals themselves could live more easily with incostistencies
 between
 their pd installation and the database than less experienced pd  
 users.

 to sum it up, i'd vote for:

 [url]/[libname]:description of a library
 [url]/[libname]/[objectname]:   description of the object

 (i am not an wiki expert at all and also don't know, if these  
 proposal
 can be represented in mediawiki [or i a wiki in generel])

 why making it flat und having to deal with nameconflicts, when the
 libdir was introduced in order to just avoid that?

 yo, i hope i didn't bring something up, that has been discussed and
 defined before already, since i missed the major part of the pd-doc
 meeting.

 roman

 I agree with this email, but I just want to clarify something.
 Namespace support is _exactly_ the same on pd-vanilla and pd-
 extended.  Whether you can use the namespace in the object name
 depends purely on how you compile the libraries, not on whether you
 are using pd-extended or pd-vanilla.
   If you are talking pd-vanilla,
 then you are talking no externals at all.

 i tried to always call it 'pd-vanilla/externals', not just 'pd- 
 vanilla',
 in order to make clear, that i am using pd-vanilla and compiling the
 externals myself. anyway, if i compile the externals how it is  
 described
 in the README, that comes with the externals, and which i call the
 'original way' to compile them, i get one library containing several
 objects, where namespaces don't work.

Again, this is up to the person building them.  For example, the  
externals that come with Pd in the extra folder are built in both  
ways.  bonk~, fiddle~ are built as single files.  The exprs are all  
built into one file.  Some libraries (ggee, unauthorized) have been  
built as single-class-single-file single well before Pd-extended.

 iemlib is a special case, because there is not only the  
 inconsistency of
 having namespaces in pd-extended and not having them in
 'pd-vanilla/externals', but also different names of libraries. in  
 order
 to create a patch, that works on both, it's required to have a  
 [declare]
 with the all these flags:
 -stdpath iemabs
 -stdpath iemlib
 -stdlib iemlib1
 -stdlib iemlib2
 -stdlib iem_t3_lib
 just to get iemlib working everywhere.

 since [declare] doesn't output an error, 

Re: [PD] inconsistencies with lib names (was: representning classes and selectors in the wiki)

2007-09-13 Thread Roman Haefeli
On Thu, 2007-09-13 at 11:14 -0400, Hans-Christoph Steiner wrote:

 
 Again, this is up to the person building them.  For example, the  
 externals that come with Pd in the extra folder are built in both  
 ways.  bonk~, fiddle~ are built as single files.  The exprs are all  
 built into one file.  Some libraries (ggee, unauthorized) have been  
 built as single-class-single-file single well before Pd-extended.
 
  iemlib is a special case, because there is not only the  
  inconsistency of
  having namespaces in pd-extended and not having them in
  'pd-vanilla/externals', but also different names of libraries. in  
  order
  to create a patch, that works on both, it's required to have a  
  [declare]
  with the all these flags:
  -stdpath iemabs
  -stdpath iemlib
  -stdlib iemlib1
  -stdlib iemlib2
  -stdlib iem_t3_lib
  just to get iemlib working everywhere.
 
  since [declare] doesn't output an error, when not finding a lib or a
  path, this can be handled this way, though it is a bit awkward.
 
  yo, lets make it simple: shouldn't the one or the other be skipped in
  cvs? since the libdir is more widely used, i assume, and has also some
  advantages compared to the old standard (am i right here?), let's skip
  the old way of creating externals. i thirst for consistency, really. i
  am going to found the church of consistency.
 
 Sounds like the iemlibs should be should be split up in Pd-extended,  
 then it would be consistent.  Any volunteers?

this not what i was proposing. i was rather referring to this:

 
 Again, this is up to the person building them.

why? what is the benefit of it, when your decision creates
inconistencies? since everything seems to be hostet in cvs, why does cvs
still support two ways of compiling them? i'd like to know from the
devs, if there is any good reason to keep the old makefiles/readmes and
stuff in cvs. 
if people finally would find only one makefile/readme: byebye
inconistencies. it automatically wouldn't make a difference anymore,
whether you are an pd-extended user or not.

roman






___ 
Der frühe Vogel fängt den Wurm. Hier gelangen Sie zum neuen Yahoo! Mail: 
http://mail.yahoo.de


___
PD-list@iem.at mailing list
UNSUBSCRIBE and account-management - 
http://lists.puredata.info/listinfo/pd-list


Re: [PD] inconsistencies with lib names (was: representning classes and selectors in the wiki)

2007-09-13 Thread Hans-Christoph Steiner

On Sep 13, 2007, at 1:40 PM, Roman Haefeli wrote:

 On Thu, 2007-09-13 at 11:14 -0400, Hans-Christoph Steiner wrote:


 Again, this is up to the person building them.  For example, the
 externals that come with Pd in the extra folder are built in both
 ways.  bonk~, fiddle~ are built as single files.  The exprs are all
 built into one file.  Some libraries (ggee, unauthorized) have been
 built as single-class-single-file single well before Pd-extended.

 iemlib is a special case, because there is not only the
 inconsistency of
 having namespaces in pd-extended and not having them in
 'pd-vanilla/externals', but also different names of libraries. in
 order
 to create a patch, that works on both, it's required to have a
 [declare]
 with the all these flags:
 -stdpath iemabs
 -stdpath iemlib
 -stdlib iemlib1
 -stdlib iemlib2
 -stdlib iem_t3_lib
 just to get iemlib working everywhere.

 since [declare] doesn't output an error, when not finding a lib or a
 path, this can be handled this way, though it is a bit awkward.

 yo, lets make it simple: shouldn't the one or the other be  
 skipped in
 cvs? since the libdir is more widely used, i assume, and has also  
 some
 advantages compared to the old standard (am i right here?), let's  
 skip
 the old way of creating externals. i thirst for consistency,  
 really. i
 am going to found the church of consistency.

 Sounds like the iemlibs should be should be split up in Pd-extended,
 then it would be consistent.  Any volunteers?

 this not what i was proposing. i was rather referring to this:


 Again, this is up to the person building them.

 why? what is the benefit of it, when your decision creates
 inconistencies? since everything seems to be hostet in cvs, why  
 does cvs
 still support two ways of compiling them? i'd like to know from the
 devs, if there is any good reason to keep the old makefiles/readmes  
 and
 stuff in cvs.
 if people finally would find only one makefile/readme: byebye
 inconistencies. it automatically wouldn't make a difference anymore,
 whether you are an pd-extended user or not.

I am totally with you in spirit, but the issues are social, not  
technical.  I think that we should purge all old build systems  
(they'd still be archived in CVS) and replace them all with a  
standard build system.  But unfortunately, it has been a very  
political issue in the past, so the cruft remained.  It seems that  
things have changed on the social front somewhat, so maybe now this  
could be done.

Are you volunteering to lead the charge? :-D

.hc


 roman




   
   
 ___
 Der frühe Vogel fängt den Wurm. Hier gelangen Sie zum neuen Yahoo!  
 Mail: http://mail.yahoo.de



 


[W]e have invented the technology to eliminate scarcity, but we are  
deliberately throwing it away to benefit those who profit from  
scarcity.-John Gilmore



___
PD-list@iem.at mailing list
UNSUBSCRIBE and account-management - 
http://lists.puredata.info/listinfo/pd-list


Re: [PD] inconsistencies with lib names (was: representning classes and selectors in the wiki)

2007-09-13 Thread Hans-Christoph Steiner

On Sep 13, 2007, at 2:02 AM, Roman Haefeli wrote:

 On Thu, 2007-09-13 at 07:30 +0200, Roman Haefeli wrote:

 i tried to always call it 'pd-vanilla/externals', not just 'pd- 
 vanilla',
 in order to make clear, that i am using pd-vanilla and compiling the
 externals myself. anyway, if i compile the externals how it is  
 described
 in the README, that comes with the externals, and which i call the
 'original way' to compile them, i get one library containing several
 objects, where namespaces don't work.

 iemlib is a special case, because there is not only the  
 inconsistency of
 having namespaces in pd-extended and not having them in
 'pd-vanilla/externals', but also different names of libraries. in  
 order
 to create a patch, that works on both, it's required to have a  
 [declare]
 with the all these flags:
 -stdpath iemabs
 -stdpath iemlib
 -stdlib iemlib1
 -stdlib iemlib2
 -stdlib iem_t3_lib
 just to get iemlib working everywhere.

 since [declare] doesn't output an error, when not finding a lib or a
 path, this can be handled this way, though it is a bit awkward.

 yo, lets make it simple: shouldn't the one or the other be skipped in
 cvs? since the libdir is more widely used, i assume, and has also  
 some
 advantages compared to the old standard (am i right here?), let's  
 skip
 the old way of creating externals. i thirst for consistency,  
 really. i
 am going to found the church of consistency.

 some people could probably find it a bit nasty, that a guy like me,  
 who
 haven't contributed not a single line of code to the cvs yet, does  
 make
 such proposals. please excuse me for that (i'm already a bit tired and
 have had some beers).
 however, the church of consistency will be founded.

I'll only forgive you if you fix it!  ;)

.hc



 roman




   
   
 ___
 Der frühe Vogel fängt den Wurm. Hier gelangen Sie zum neuen Yahoo!  
 Mail: http://mail.yahoo.de



 


The arc of history bends towards justice. - Dr. Martin Luther  
King, Jr.



___
PD-list@iem.at mailing list
UNSUBSCRIBE and account-management - 
http://lists.puredata.info/listinfo/pd-list


[PD] inconsistencies with lib names (was: representning classes and selectors in the wiki)

2007-09-12 Thread Roman Haefeli
On Thu, 2007-09-13 at 00:49 -0400, Hans-Christoph Steiner wrote:
 On Sep 12, 2007, at 12:47 PM, Roman Haefeli wrote:
 
  hi marius, hi iohannes
 
  sorry to chime whitout having participated yet to this discussion at
  all,
 
  On Wed, 2007-09-12 at 17:17 +0200, IOhannes m zmoelnig wrote:
  marius schebella wrote:
 
  how stable is the library structure? if it is stable over several  
  years,
  then it could be arbitrary. but some objects jump around. from  
  zexy to
  iem (mtx?), from iemlib1 to iemlib (don't know if that is really the
  case...) from iemlib to puredata core (gui)... from everywhere to
  flatspace.
 
 
  wow:
  zexy had the matrix objects for several years (they first appeared
  therein in 2001; and they vanished by 2005)
  iemmatrix has the matrix objects for several years too (2005-today)
 
  iemlib consists of 3 binary libraries (iemlib1, iemlib2, iem_t3)  
  and a
  collection of abstractions; this has not changed since i know this
  library (which is quite some time)
  i don't know which object has moved from the sub-package iemlib1 to
  the meta-package iemlib. i thought this would be impossible,  
  given the
  structure of the iemlib.
 
  let us not be troubled by repackaging of objects.
 
  but i am. it's not only, that objects (or 'classes') used to move from
  one to the other, but they exist at two different places at the same
  time, dependent on whether you are using pd-extended (with libdir
  format) or pd-vanilla with the original externals. iemlib is a good
  example, lets stick with this one. [hp1~] is part of 'iemabs' in
  pd-vanilla and part of 'iemlib' in pd-extended. if you want to use
  namespaces for instantiating the objects, it doesn't work
  crosscompatible on both distros.
  however, this is actually a different story, but probably affects the
  way we want to implement the wiki. since there _are_ incompatibilites
  between pd-vanilla/original libs and pd-extended, i vehemently propose
  to decide which route to follow for the database: the
  'pd-vanilla/externals' way or the 'pd-extended' way. let's also  
  face who
  is actually addressed with this database. one of its goals is to have
  all information about objects available at one place, which is, i  
  think,
  fairly essential for people, who are new to pd and want to explore all
  facets of pd. i also believe, that most of these people will use
  pd-extended, since it is by far the easiest way to get 'just
  everything'. taking into account all these points, i strongly believe,
  that it would be the best way to reflect the pd-extended topology  
  in the
  database, none the less just because people, who compile pd and
  externals themselves could live more easily with incostistencies  
  between
  their pd installation and the database than less experienced pd users.
 
  to sum it up, i'd vote for:
 
  [url]/[libname]:description of a library
  [url]/[libname]/[objectname]:   description of the object
 
  (i am not an wiki expert at all and also don't know, if these proposal
  can be represented in mediawiki [or i a wiki in generel])
 
  why making it flat und having to deal with nameconflicts, when the
  libdir was introduced in order to just avoid that?
 
  yo, i hope i didn't bring something up, that has been discussed and
  defined before already, since i missed the major part of the pd-doc
  meeting.
 
  roman
 
 I agree with this email, but I just want to clarify something.   
 Namespace support is _exactly_ the same on pd-vanilla and pd- 
 extended.  Whether you can use the namespace in the object name  
 depends purely on how you compile the libraries, not on whether you  
 are using pd-extended or pd-vanilla.
   If you are talking pd-vanilla,  
 then you are talking no externals at all. 

i tried to always call it 'pd-vanilla/externals', not just 'pd-vanilla',
in order to make clear, that i am using pd-vanilla and compiling the
externals myself. anyway, if i compile the externals how it is described
in the README, that comes with the externals, and which i call the
'original way' to compile them, i get one library containing several
objects, where namespaces don't work. 

iemlib is a special case, because there is not only the inconsistency of
having namespaces in pd-extended and not having them in
'pd-vanilla/externals', but also different names of libraries. in order
to create a patch, that works on both, it's required to have a [declare]
with the all these flags:
-stdpath iemabs
-stdpath iemlib
-stdlib iemlib1
-stdlib iemlib2
-stdlib iem_t3_lib
just to get iemlib working everywhere.

since [declare] doesn't output an error, when not finding a lib or a
path, this can be handled this way, though it is a bit awkward.

yo, lets make it simple: shouldn't the one or the other be skipped in
cvs? since the libdir is more widely used, i assume, and has also some
advantages compared to the old standard (am i right here?), let's skip
the old way of creating externals. i thirst for