- 
		CitizenErased posted in technical issues • read moreHi there, I've working with PureData for (just) a few months, so I guess I'm still a newbie. I hope you can help me to solve this problem. Here it is: I'm trying to build an abstraction which a Sample looper. I'm using a "table" to store the sample and in order to make it as much independient as is possible, I have introduced the table in the abstraction. Also, to load the samples I use the following chain: bng -> openpanel -> Message : read -resize $1 t1 ->soundFiler here t1 is the name of the table. Of course, to be able to open more than own instance of my abstraction I need to make the table name a variable, otherwise I'll get the "warning: t1: multiply defined" error message. Now, here's the problem: in other abstractions I have solved this making the table name just a variable and passing a name when creating the object, for example the table would be "table $1" and when creating the object i would type "TapeLoop t1", where TapeLoop is the name of the abstraction. But now I'm already using the $1 variable, and although I have tried multiple ways I haven't be able to make it work by using other variables, for example using the following chain to load the Sample: bng -> openpanel -> Message : read -resize $1 $2 ->soundfiler In this case, the soundfiler doesn't take the table name as a valid name. I've also tried with other orders in the same chain, supposing that the $1 might be reserved to the initial arguments of the object: bng -> openpanel -> Message : read -resize $2 $1 ->soundfiler but it still didn't work. Any idea of how to make the thing work? Thanks! 
- 
		CitizenErased posted in technical issues • read more@ClaudiusMaximus said: Something like [openpanel] 
 |
 | [loadbang]
 | |
 | [symbol $1]
 | |
 [pack s s]
 |
 [read -resize $2 $1(
 |
 [soundfiler]might be what you want. Thanks, it certainly was what I wanted. But I think there was a mistake in the diagram you drew: instead of [read -resize $2 $1( which didn't work, I used [read -resize $1 $2( being $1 the file to be loaded, and $2 the table in which it was supposed to be loaded. This way it worked fine. Anyway, your post was fundamental to understand what was happening. Thank you very much. 
