<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=utf-8">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <p><font face="Georgia">I'm was copying a FloatArray and it seems
        not to be using the primitive to move the data over to the copy.
        Float>></font><font face="Georgia">replaceFrom:to:with:startingAt:
        says it uses a primitive, but it seem to fallback to the code in
        SequenceableCollection. How can I see the priitive code to see
        what the issue may be? This is what it says it does:<br>
      </font></p>
    <pre><font face="Georgia">replaceFrom: start to: stop with: replacement startingAt: repStart 
    "Primitive. This destructively replaces elements from start to stop in the receiver starting at index, repStart, in the collection, replacement. Answer the receiver. Range checks are performed in the primitive only. Optional. See Object documentation whatIsAPrimitive."
    <primitive: 105>
    super replaceFrom: start to: stop with: replacement startingAt: repStart

</font></pre>
    <font face="Georgia">This is what I did to see if the prim failed:</font><br>
    <pre><font face="Georgia">replaceFrom: start to: stop with: replacement startingAt: repStart 
    "Primitive. This destructively replaces elements from start to stop in the receiver starting at index, repStart, in the collection, replacement. Answer the receiver. Range checks are performed in the primitive only. Optional. See Object documentation whatIsAPrimitive."
    <primitive: 105>
    WOOPS ifNil: [
        WOOPS _ #WOOPS.
        self halt
    ].
    super replaceFrom: start to: stop with: replacement startingAt: repStart
</font></pre>
    <p><font face="Georgia">And it did fail and I'm puzzled as to why:<br>
      </font></p>
    <p><font face="Georgia">Halt: <br>
        10 January 2017 7:46:09.382669 am<br>
        <br>
        VM: Mac OS - Smalltalk<br>
        Image: Squeak5.1 [latest update: #16548]<br>
        <br>
        SecurityManager state:<br>
        Restricted: false<br>
        FileAccess: true<br>
        SocketAccess: true<br>
        Working Dir
/Users/bob/squeak/Squeak5.1-16548-64bit-All-in-One/Squeak5.1-16548-64bit-All-in-One.app/Contents/Resources<br>
        Trusted Dir /Users/bob/Library/Application Support/Squeak/<br>
        Untrusted Dir /Users/bob/Documents/Squeak/<br>
        <br>
        FloatArray(Object)>>halt<br>
            Receiver: a FloatArray(0.0 0.0 0.0)<br>
            Arguments and temporary variables: <br>
        <br>
            Receiver's instance variables: <br>
        a FloatArray(0.0 0.0 0.0)<br>
        FloatArray>>replaceFrom:to:with:startingAt:<br>
            Receiver: a FloatArray(0.0 0.0 0.0)<br>
            Arguments and temporary variables: <br>
                start:     1<br>
                stop:     3<br>
                replacement:     a FloatArray(1.0 1.0 1.0 1.0 1.0 1.0
        1.0 1.0 1.0 1.0 1.0 1.0 1.0 1...etc...<br>
                repStart:     1<br>
            Receiver's instance variables: <br>
        a FloatArray(0.0 0.0 0.0)<br>
        FloatArray(SequenceableCollection)>>copyFrom:to:<br>
            Receiver: a FloatArray(1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
        1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1...etc...<br>
            Arguments and temporary variables: <br>
                start:     1<br>
                stop:     3<br>
                newSize:     3<br>
            Receiver's instance variables: <br>
        a FloatArray(1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
        1.0 1.0 1.0 1.0 1.0 1.0 1...etc...<br>
        ConvolutionalLayer>>forward:isTraining:<br>
      </font><br>
    </p>
  </body>
</html>