Method call profiler?

[email protected]
Newsgroups gmane.comp.audio.supercollider.devel
Message-ID <[email protected]>
Currently, there is no way to know which quarks and other extensions are 
required for a given block of code. It may be possible to parse out method 
selectors, but there's no way to know which implementations of those 
selectors are actually invoked.

What if there were a debug mode that kept a table of every method 
invocation? E.g. class, method, number of calls, perhaps execution time. It 
would have a lot of calls to core methods, but it wouldn't be hard to 
search for extension directories.

One use case: sharing code. To share code, you also need to share 
extensions on which the code depends. It's very easy to use some method in 
a quark that you installed ages ago and forgot about, and you're 
"absolutely sure" you're using only main library methods, but then it 
breaks when your friend runs it. As of now, we not only don't have a good 
way to handle this -- we have *no* way. You're totally on your own.

As an aside: we really need to do something about wslib. You can't use any 
piece of it without using all of it. I uninstalled it awhile back, but had 
to install it again for TXModular, and just today, I got caught out because 
my code ended up calling asSpec on an Env. The reference to asSpec didn't 
raise any flags in my mind because it's a core method, but other people 
couldn't run my code.

hjh

Sent with AquaMail for Android
http://www.aqua-mail.com




_______________________________________________
sc-dev mailing list

info (subscription, etc.): http://www.birmingham.ac.uk/facilities/ea-studios/research/supercollider/mailinglist.aspx
archive: http://www.listarc.bham.ac.uk/marchives/sc-dev/
search: http://www.listarc.bham.ac.uk/lists/sc-dev/search/
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.