Re: [PD] Missing objects in Pd-Extended Intel OSX?

2013-04-23 Thread IOhannes m zmölnig
On 04/23/2013 02:26, Jonathan Wilkes wrote:
 
 I cannot figure out where the code is, 

externals/loaders/hexloader/

 but I'm assuming there is a loop
 that goes through each path in search of $object_name.$whatever to
 load the setup routine, and then goes through each path for
 $object_name.{pd, max} for loading abstractions.

yes kind of.

 
 Is this the case?  If so why not say for each directory, check if there
 is a $directory-meta.pd, and if there is parse it to find a comment in the
 form of:
 ALIAS normal_characters_name weird_characters_name1 weird_characters_name2 
 etc.


sounds like a good idea, though

 
 Then if $object_name matches any of the atoms that follow ALIAS, look for any 
 files inside
 $directory that match any of the aliases.  If you find a match, follow the 
 current loading logic
 (i.e., look for $objectname_setup, etc.).  This has the benefit that the 
 external/abstraction
 developer doesn't have to care about what order to put the atoms after ALIAS, 
 only that
 one of the atoms uses normal characters that correspond to the characters 
 of the filename
 (minus the file extension) that contains the class/abstraction.

i'm pretty sure there is a catch somewhere when it comes to loading
abstractions.

 
 Finally, if there was a match, and there was a $normal_characters_name_setup 
 that
 was executed without error, then Pd should automatically do a 
 class_addcreator for
 each of the remaining aliases.
 

not sure whether this should be handled automatically or explicitely
within an external.

 
 I suppose its easier to require $1 of the ALIAS comment to be 
 normal_characters_name.
 I think it's better for the external/abstraction author if it can be an 
 unordered list, but honestly
 anything is better than the current hexloader complexity.

what's that complexity? having to have to look up some characters in
an ascii table?

 
 If someone can explain to me where the loop is in the source code where Pd 
 looks for
 binaries/abstractions, I'll try to code it myself.

just check the various loaders in externals/loaders/


gmdrs
IOhannes

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


Re: [PD] Missing objects in Pd-Extended Intel OSX?

2013-04-23 Thread Jonathan Wilkes
- Original Message -

 From: IOhannes m zmölnig zmoel...@iem.at
 To: pd-list@iem.at
 Cc: 
 Sent: Tuesday, April 23, 2013 3:01 AM
 Subject: Re: [PD] Missing objects in Pd-Extended Intel OSX?
 
 On 04/23/2013 02:26, Jonathan Wilkes wrote:
 

[...]

  Then if $object_name matches any of the atoms that follow ALIAS, look for 
 any files inside
  $directory that match any of the aliases.  If you find a match, follow the 
 current loading logic
  (i.e., look for $objectname_setup, etc.).  This has the benefit that the 
 external/abstraction
  developer doesn't have to care about what order to put the atoms after 
 ALIAS, only that
  one of the atoms uses normal characters that correspond to the 
 characters of the filename
  (minus the file extension) that contains the class/abstraction.
 
 i'm pretty sure there is a catch somewhere when it comes to loading
 abstractions.

Can you explain what the catch is?  Is it intractable?

 
 
  Finally, if there was a match, and there was a 
 $normal_characters_name_setup that
  was executed without error, then Pd should automatically do a 
 class_addcreator for
  each of the remaining aliases.
 
 
 not sure whether this should be handled automatically or explicitely
 within an external.

For [block~]/[switch~] level flexibility I think it has to be explicit.  I
need to think about it more...

 
 
  I suppose its easier to require $1 of the ALIAS comment to be 
 normal_characters_name.
  I think it's better for the external/abstraction author if it can be an 
 unordered list, but honestly
  anything is better than the current hexloader complexity.
 
 what's that complexity? having to have to look up some 
 characters in
 an ascii table?

Plus telling the user, To not get broken objects load this library
that has a bug that is the reason it didn't already load.

But yes, having to look up characters in a table or even notice them
in a filename in the help browser or search plugin is more complex
than looking at human readable filenames and/or _setup routines.

 
 
  If someone can explain to me where the loop is in the source code where Pd 
 looks for
  binaries/abstractions, I'll try to code it myself.
 
 just check the various loaders in externals/loaders/

Ok thanks.

-Jonathan

 
 
 gmdrs
 IOhannes
 
 ___
 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] Missing objects in Pd-Extended Intel OSX?

2013-04-23 Thread IOhannes m zmoelnig
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On 2013-04-23 18:30, Jonathan Wilkes wrote:
 i'm pretty sure there is a catch somewhere when it comes to
 loading abstractions.
 
 Can you explain what the catch is?  Is it intractable?
 

no.
this was a generic i'm sure there is one but i cannot name it now
message.


mfgasdr
IOhannes
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.12 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAlF2uO8ACgkQkX2Xpv6ydvQUAgCgj9c1ntBc8XAV1CqoScu9OgRV
qSoAmwQn0TgEYeOQV73x74XcC9pNo8vL
=KNyU
-END PGP SIGNATURE-

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


[PD] Missing objects in Pd-Extended Intel OSX?

2013-04-22 Thread Martin Dupras
I'm running 0.43.3-extended on a MacBook Pro Retina (Intel Core i7), with
OSX 10.8.3.

I've only noticed in the last couple of days that some objects are not
loading. For instance, if I bring up the netserver-help.pd help file, the
netclient object loads, but netserver doesn't.

I also notice that some objects in iemmatrix do not load. For instance
mtx_mul loads, but not mtx_mul~. Confusingly, the mtx_+ object in
mtx+mul-help.pd doesn't load, but it does if I open mtx_add-help.pd.

I'm very confused. Can anyone enlighten me?

(For the record: I've deleted my .plist file and replaced the Pd-extended
app with another fresh copy. No difference.)

Many thanks,

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


Re: [PD] Missing objects in Pd-Extended Intel OSX?

2013-04-22 Thread Roman Haefeli
On Mon, 2013-04-22 at 16:01 +0100, Martin Dupras wrote:


 I also notice that some objects in iemmatrix do not load. For instance
 mtx_mul loads, but not mtx_mul~. Confusingly, the mtx_+ object in mtx
 +mul-help.pd doesn't load, but it does if I open mtx_add-help.pd.

This is related to how those libraries are built in Pd-extended. It
works if you load hexloader first. Somehow it was decided that hexloader
is not loaded automatically, which is a pity. However, you can do it
from your patch with [import hexloader], or - in your case - [import
hexloader iemmatrix].

Roman



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


Re: [PD] Missing objects in Pd-Extended Intel OSX?

2013-04-22 Thread Martin Dupras
Thanks for that, I don't think I would have found that out by myself.

I'm just reading on hexloader right now. From what I understand, it allows
the loading of library objects with (among other characters) ~ in their
name.

Does anyone know why it was decided that it should not load by default? I'm
a bit puzzled, because not having it loaded by default seems to break a
number of help patches.

- martin



On 22 April 2013 16:40, Roman Haefeli reduz...@gmail.com wrote:

 On Mon, 2013-04-22 at 16:01 +0100, Martin Dupras wrote:


  I also notice that some objects in iemmatrix do not load. For instance
  mtx_mul loads, but not mtx_mul~. Confusingly, the mtx_+ object in mtx
  +mul-help.pd doesn't load, but it does if I open mtx_add-help.pd.

 This is related to how those libraries are built in Pd-extended. It
 works if you load hexloader first. Somehow it was decided that hexloader
 is not loaded automatically, which is a pity. However, you can do it
 from your patch with [import hexloader], or - in your case - [import
 hexloader iemmatrix].

 Roman



 ___
 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] Missing objects in Pd-Extended Intel OSX?

2013-04-22 Thread Martin Dupras
Ignore my issue with netserver. It loads fine, I had a netreceive object
open on the same port which prevented netserver to instantiate. It loads
fine.

- martin


On 22 April 2013 16:01, Martin Dupras martindup...@gmail.com wrote:

 I'm running 0.43.3-extended on a MacBook Pro Retina (Intel Core i7), with
 OSX 10.8.3.

 I've only noticed in the last couple of days that some objects are not
 loading. For instance, if I bring up the netserver-help.pd help file, the
 netclient object loads, but netserver doesn't.

 I also notice that some objects in iemmatrix do not load. For instance
 mtx_mul loads, but not mtx_mul~. Confusingly, the mtx_+ object in
 mtx+mul-help.pd doesn't load, but it does if I open mtx_add-help.pd.

 I'm very confused. Can anyone enlighten me?

 (For the record: I've deleted my .plist file and replaced the Pd-extended
 app with another fresh copy. No difference.)

 Many thanks,

 - martin


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


Re: [PD] Missing objects in Pd-Extended Intel OSX?

2013-04-22 Thread IOhannes m zmölnig
On 04/22/2013 18:27, Martin Dupras wrote:
 Thanks for that, I don't think I would have found that out by myself.
 
 I'm just reading on hexloader right now. From what I understand, it
 allows the loading of library objects with (among other characters) ~
 in their name. 

hexloader allows to load externals whose name contains anything bbut
A-Za-z0-9.
(trailing) ~ is about the only non-trivial character that Pd had
always supported in externals, the problem is more along the lines of
*. (so you got a detail wrong, but i guess you figured the greater image).

 Does anyone know why it was decided that it should not load by default?
 I'm a bit puzzled, because not having it loaded by default seems to
 break a number of help patches.

i haven't decided to not include it, but as the main author of the
hexloader patch i know that there are some issues when it comes to
loading of abstractions.

fgamsdr
IOhannes

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


Re: [PD] Missing objects in Pd-Extended Intel OSX?

2013-04-22 Thread Jonathan Wilkes




- Original Message -
 From: IOhannes m zmölnig zmoel...@iem.at
 To: pd-list@iem.at
 Cc: 
 Sent: Monday, April 22, 2013 1:51 PM
 Subject: Re: [PD] Missing objects in Pd-Extended Intel OSX?
 
 On 04/22/2013 18:27, Martin Dupras wrote:
  Thanks for that, I don't think I would have found that out by myself.
 
  I'm just reading on hexloader right now. From what I understand, it
  allows the loading of library objects with (among other characters) 
 ~
  in their name. 
 
 hexloader allows to load externals whose name contains anything bbut
 A-Za-z0-9.
 (trailing) ~ is about the only non-trivial character that Pd had
 always supported in externals, the problem is more along the lines of
 *. (so you got a detail wrong, but i guess you figured the greater 
 image).
 
  Does anyone know why it was decided that it should not load by default?
  I'm a bit puzzled, because not having it loaded by default seems to
  break a number of help patches.
 
 i haven't decided to not include it, but as the main author of the
 hexloader patch i know that there are some issues when it comes to
 loading of abstractions.

I cannot figure out where the code is, but I'm assuming there is a loop
that goes through each path in search of $object_name.$whatever to
load the setup routine, and then goes through each path for
$object_name.{pd, max} for loading abstractions.

Is this the case?  If so why not say for each directory, check if there
is a $directory-meta.pd, and if there is parse it to find a comment in the
form of:
ALIAS normal_characters_name weird_characters_name1 weird_characters_name2 etc.

Then if $object_name matches any of the atoms that follow ALIAS, look for any 
files inside
$directory that match any of the aliases.  If you find a match, follow the 
current loading logic
(i.e., look for $objectname_setup, etc.).  This has the benefit that the 
external/abstraction
developer doesn't have to care about what order to put the atoms after ALIAS, 
only that
one of the atoms uses normal characters that correspond to the characters of 
the filename
(minus the file extension) that contains the class/abstraction.

Finally, if there was a match, and there was a $normal_characters_name_setup 
that
was executed without error, then Pd should automatically do a 
class_addcreator for
each of the remaining aliases.

With this method you can have multiple ALIAS name1 name2 etc. comments inside
$libdir-meta.pd.  Pd can just keep parsing until it finds a match-- if there is 
no match then
it just searches for the binary/abstraction as it already does.  If there is a 
match it would
check each filename inside the libdir against all the aliases of $object_name, 
which would
increase load time but only for that particular libdir which defines one or 
more ALIASes.
It's also trivial to support mutiple ALIAS comments-- the parser would stop on 
the first match,
and if there are overlapping aliases between classes _within_ a libdir that's 
the fault/responsibility
of the external/abstraction author.

I suppose its easier to require $1 of the ALIAS comment to be 
normal_characters_name.
I think it's better for the external/abstraction author if it can be an 
unordered list, but honestly
anything is better than the current hexloader complexity.

If someone can explain to me where the loop is in the source code where Pd 
looks for
binaries/abstractions, I'll try to code it myself.

-Jonathan

 
 fgamsdr
 IOhannes
 
 ___
 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