why is coll so awful??!

    Oct 14 2011 | 10:46 pm
    i have been building a complicated patch that needs to keep track of all kinds of variables that are added and created by the user dynamically. seems like [coll] is my best option right? i need coll's symbol lookup function.
    so now i have built this "wrapper" patch with ins/outs to access and handle the coll data, and of course it contains the coll. i have lots of instances of this patch within my main patch (99 right now and counting), all getting and setting values from this same coll at different times.
    the data is all screwy. it's never retained properly. just changing the argument of any wrapper patch changes the coll data back to some previous version. i can't figure it out. whether i use .txts or save the data with the patcher. anybody had similar problems?
    btw, i got into max for audio reasons, but now i try to use it for any programming application i can. these things like the always clumsy [coll], just keep Max from blooming into the broader world. for something as fundamental as your database to be SOO sub-par...
    sorry to complain, but i guess that's how version changes happen.

    • Oct 14 2011 | 10:50 pm
      oh, forgot to mention the only solution i can come up with:
      the wrapper function will send to a single instance of the coll somewhere in the main patch, which then updates some [values] with it's output. then the wrapper sends these same values out.
    • Oct 14 2011 | 11:20 pm
      if what you want is a database- how about using the inbuilt sql?
    • Oct 14 2011 | 11:41 pm
      I wuz gonna say, SQLLite is available in max...write up your table defs, your CRUD sql, and you're home free, :)
    • Oct 15 2011 | 12:26 am
      If you'd like to try the Max 6 Public Beta, you may find the dict objects to be really helpful.
    • Oct 15 2011 | 12:40 am
      coll has been like this forever. it's a PITA, for sure. I've been complaining about it forever, but I could never get anyone at cycling 74 to take this problem seriously. I'm resigned to the fact that it will never change. I came up with an abstraction called roll (for referring coll) which I use to get around this problem.
      roll can be found on this page: http://www.xfade.com/max/examples/
    • Oct 15 2011 | 1:01 am
      The coll object is incredibly difficult to change because we need to maintain backward compatibility with 20 years of legacy patchers. The future is dict.
    • Oct 15 2011 | 1:09 am
      Interestingly, the @embed attribute for coll now works when typed into the object box in Max 6, which it never did in Max 5.