I’m perhaps slightly premature in doing this, but I’m pushing out a preliminary release of chucklib-livecode v0.5.1. Update your ddw* quarks if you’re interested.
Video demonstrating new features (posted a few days ago):
Manual with installation instructions, tutorial and references:
I’m really into the idea of this chucklib, which looks like a perfect way to stay away from using an external environments to sequence SC. Big ups!
However I, for the life of me, can’t manage to get \loadAllCl.eval evaluated or any of the other statements except \loadCl.eval which returns -> [ preprocessor.scd, preprocessor-generators.scd, helper-funcs.scd ]
\cllGui.eval returns
MIDI Sources:
MIDIEndPoint("IAC Driver", "Bus 1", 1720779336)
MIDI Destinations:
MIDIEndPoint("IAC Driver", "Bus 1", -1512954581)
ERROR: Index must not be a collection when creating a new object
\loadAllCl.eval returns
executeFile failed: ~/downloaded-quarks/ddwChucklib-livecode/mobile-objects.scd
ERROR: Message 'lightness' not understood.
I’ve quadruple-checked my installation, removed quarks, re-installed them, and so on… “crucial-lib” is installed and working. Library re-compiles without problems. I’m running many other quarks without problem.
I’m posting here and not in the issue-tracker, as it’s probably me missing something. Has anyone else had the same issues?
executeFile failed: ~/downloaded-quarks/ddwLivecodeInstruments/pitch-processes.scd
ERROR: Index must not be a collection when creating a new object
\cllGui.eval and \makeController.eval both return
MIDI Sources:
MIDIEndPoint("IAC Driver", "Bus 1", 1720779336)
MIDI Destinations:
MIDIEndPoint("IAC Driver", "Bus 1", -1512954581)
ERROR: Index must not be a collection when creating a new object
\makeCodeWindow.eval returns ERROR: Message 'tabSpecs' not understood.
I removed all extensions, installed only the live code system and dependencies, and I can’t reproduce this problem.
Can you post the stack trace? You’ve posted the error message only but, because I can’t get the same error here, I can’t trace it back on my machine.
Oh, also update the ddwChucklib-livecode quark again… I found another thing (something I thought I had fixed years ago). That would probably cause the GUI error.
Hmm i’ve updated but i still have the same errors.
for \loadAllCl.eval:
executeFile failed: /Users/jef/Library/Application Support/SuperCollider/downloaded-quarks/ddwLivecodeInstruments/pitch-processes.scd
ERROR: Index must not be a collection when creating a new object
PROTECTED CALL STACK:
Meta_AbstractChuckArray:prNew 0x1191fd5c0
arg this = MBM
arg index = 0
var temp = nil
a FunctionDef 0x121d82c48
sourceCode = "{
PR(\\jiLeader) => BP(\\lead);
PR(\\jiFollow) => BP(\\follow);
};
"
a FunctionDef 0x119c07480
sourceCode = "<an open Function>"
Function:prTry 0x11c26aa80
arg this = a Function
var result = nil
var thread = a Thread
var next = a Function
var wasInProtectedFunc = true
Function:protect 0x11c26a000
arg this = a Function
arg handler = a Function
var result = nil
Interpreter:executeFile 0x119c06e00
arg this = an Interpreter
arg pathName = /Users/jef/Library/Application Support/SuperCollider/downloaded-quarks/ddwLivecodeInstruments/pitch-processes.scd
arg args = nil
var result = [ ]
var saveExecutingPath = nil
a FunctionDef 0x11e505540
sourceCode = "<an open Function>"
Function:prTry 0x11c26aa80
arg this = a Function
var result = nil
var thread = a Thread
var next = nil
var wasInProtectedFunc = false
CALL STACK:
Exception:reportError
arg this = <instance of Error>
Nil:handleError
arg this = nil
arg error = <instance of Error>
Thread:handleError
arg this = <instance of Thread>
arg error = <instance of Error>
Object:throw
arg this = <instance of Error>
String:loadPath
arg this = "/Users/jef/Library/Applicati..."
arg warnIfNotFound = true
var obj = nil
var path = "/Users/jef/Library/Applicati..."
ArrayedCollection:do
arg this = [*8]
arg function = <instance of Function>
var i = 7
ArrayedCollection:do
arg this = [*3]
arg function = <instance of Function>
var i = 2
Interpreter:interpretPrintCmdLine
arg this = <instance of Interpreter>
var res = nil
var func = <instance of Function>
var code = "\loadAllCl.eval"
var doc = nil
var ideClass = <instance of Meta_ScIDE>
Process:interpretPrintCmdLine
arg this = <instance of Main>
^^ The preceding error dump is for ERROR: Index must not be a collection when creating a new object
for \makeController.eval:
MIDI Sources:
MIDIEndPoint("IAC Driver", "Bus 1", 1720779336)
MIDI Destinations:
MIDIEndPoint("IAC Driver", "Bus 1", -1512954581)
ERROR: Index must not be a collection when creating a new object
CALL STACK:
Exception:reportError
arg this = <instance of Error>
Nil:handleError
arg this = nil
arg error = <instance of Error>
Thread:handleError
arg this = <instance of Thread>
arg error = <instance of Error>
Object:throw
arg this = <instance of Error>
Meta_AbstractChuckArray:prNew
arg this = <instance of Meta_MBM>
arg index = 0
var temp = nil
< closed FunctionDef >
arg controller = 'nanoTouch'
var sBounds = <instance of Rect>
var touchExtent = nil
var w = nil
var lay = nil
var touchParent = nil
var v = nil
var left = nil
var midiIndex = nil
var path = "/Users/jef/Library/Applicati..."
var file = nil
var str = nil
Interpreter:interpretPrintCmdLine
arg this = <instance of Interpreter>
var res = nil
var func = <instance of Function>
var code = "\makeController.eval"
var doc = nil
var ideClass = <instance of Meta_ScIDE>
Process:interpretPrintCmdLine
arg this = <instance of Main>
^^ The preceding error dump is for ERROR: Index must not be a collection when creating a new object
for \makeCodeWindow.eval :
ERROR: Message 'tabSpecs' not understood.
RECEIVER:
nil
ARGS:
PATH: /Users/jef/Documents/SuperCollider/yetAnotherTestOut.scd
PROTECTED CALL STACK:
Meta_MethodError:new 0x11bad6680
arg this = DoesNotUnderstandError
arg what = nil
arg receiver = nil
Meta_DoesNotUnderstandError:new 0x11bad8640
arg this = DoesNotUnderstandError
arg receiver = nil
arg selector = tabSpecs
arg args = [ ]
Object:doesNotUnderstand 0x1226d9f40
arg this = nil
arg selector = tabSpecs
arg args = nil
a FunctionDef 0x121d9eac8
sourceCode = "{ |overrideModel|
var maxPt = ~minExtent, specs;
if(overrideModel.notNil) {
specs = overrideModel.tabSpecs;
} {
specs = ~tabSpecs ?? { ~model.tabSpecs };
};
specs.pairsDo { |name, viewSpecs|
viewSpecs.pairsDo { |oscpath, spec|
maxPt = max(maxPt, spec.bounds.rightBottom);
}
};
maxPt + 20
}"
arg overrideModel = nil
var maxPt = Point( 150, 0 )
var specs = nil
a FunctionDef 0x11d060b80
sourceCode = "<an open Function>"
a FunctionDef 0x11d05ebc0
sourceCode = "<an open Function>"
Function:prTry 0x11c26aa80
arg this = a Function
var result = nil
var thread = a Thread
var next = nil
var wasInProtectedFunc = false
CALL STACK:
DoesNotUnderstandError:reportError
arg this = <instance of DoesNotUnderstandError>
Nil:handleError
arg this = nil
arg error = <instance of DoesNotUnderstandError>
Thread:handleError
arg this = <instance of Thread>
arg error = <instance of DoesNotUnderstandError>
Object:throw
arg this = <instance of DoesNotUnderstandError>
Function:protect
arg this = <instance of Function>
arg handler = <instance of Function>
var result = <instance of DoesNotUnderstandError>
Proto:use
arg this = <instance of Proto>
arg func = <instance of Function>
arg failSilentlyAfterFree = false
var result = nil
var saveEnvir = <instance of Environment>
Proto:doesNotUnderstand
arg this = <instance of Proto>
arg selector = 'calcExtent'
arg args = [*1]
var result = nil
var item = <instance of Function>
< closed FunctionDef >
var sBounds = <instance of Rect>
var touchExtent = nil
var left = nil
Interpreter:interpretPrintCmdLine
arg this = <instance of Interpreter>
var res = nil
var func = <instance of Function>
var code = "\makeCodeWindow.eval"
var doc = nil
var ideClass = <instance of Meta_ScIDE>
Process:interpretPrintCmdLine
arg this = <instance of Main>
^^ The preceding error dump is for ERROR: Message 'tabSpecs' not understood.
RECEIVER: nil
for \cllGui.eval :
MIDI Sources:
MIDIEndPoint("IAC Driver", "Bus 1", 1720779336)
MIDI Destinations:
MIDIEndPoint("IAC Driver", "Bus 1", -1512954581)
ERROR: Index must not be a collection when creating a new object
CALL STACK:
Exception:reportError
arg this = <instance of Error>
Nil:handleError
arg this = nil
arg error = <instance of Error>
Thread:handleError
arg this = <instance of Thread>
arg error = <instance of Error>
Object:throw
arg this = <instance of Error>
Meta_AbstractChuckArray:prNew
arg this = <instance of Meta_MBM>
arg index = 0
var temp = nil
< closed FunctionDef >
arg controller = 'nanoTouch'
var sBounds = <instance of Rect>
var touchExtent = nil
var w = nil
var lay = nil
var touchParent = nil
var v = nil
var left = nil
var midiIndex = nil
var path = "/Users/jef/Library/Applicati..."
var file = nil
var str = nil
< closed FunctionDef >
arg controller = 'nanoTouch'
Interpreter:interpretPrintCmdLine
arg this = <instance of Interpreter>
var res = nil
var func = <instance of Function>
var code = "\cllGui.eval"
var doc = nil
var ideClass = <instance of Meta_ScIDE>
Process:interpretPrintCmdLine
arg this = <instance of Main>
^^ The preceding error dump is for ERROR: Index must not be a collection when creating a new object
I see that I’m checking for collections by index.respondsTo(\at)… which means you have an extension somewhere that defines (I guess) an Object:at… which doesn’t make any sense (how do you at into 0?) but… there it is.
So, now update the ddwChucklib quark. I changed my if condition.
Sorry about that. I could never have guessed that somebody would mess around with the meaning of at in this way
I’m not having this particular problem, but when I had to debug similar issues in the past, there’s a method for sorting out the madness , e.g.
e = Environment()
m = e.class.findRespondingMethodFor(\keys); // Dictionary:keys
Also, even with all of the following quarks installed (in the “most experimental” setup I have), there’s nothing overriding at for numbers (i.e. 1.at(2) still errors)