Kyma Forum
  Kyma Support
  Some help with the learning process please

Post New Topic  Post A Reply
profile | register | preferences | faq | search

next newest topic | next oldest topic
Author Topic:   Some help with the learning process please
Andrew
Member
posted 21 August 2010 11:30         Edit/Delete Message   Reply w/Quote
I'm at the point of needing to know what the Capy and Smalltalk symbols mean and I'm finding it a very slow process. I'm using the appendix in the book with some success but I feel the need for an alphabetical reference of all the messages as opposed to a breakdown into subjects. For example I'm trying to figure out 'i', and it's not a Capytalk symbol so I'm looking through the Smalltalk appendix but it's difficult to find if one does not know which area it belongs to.

Any suggestions? (not to the meaning of 'i', but to the message learning phase)

Thanks

IP: Logged

SSC
Administrator
posted 21 August 2010 15:10         Edit/Delete Message   Reply w/Quote
In any parameter field, if you type: Ctrl+Shift+H, you get an alphabetical list of all CapyTalk expressions. You can select from the the list and paste the expression into that parameter field.

IP: Logged

Andrew
Member
posted 21 August 2010 15:40         Edit/Delete Message   Reply w/Quote
Mmm not really what I meant.

Take this expression which comes from p. 129:
{(1 to: 16) collect: [:i | !Amp suffix2: i]}

Now when I got to this point in the book I diverted and did a crash course in Smalltalk- nothing too difficult for me to understand BUT... when I learn a new language I use a dictionary. Where is the Smalltalk dictionary? There are thousands of Messages! The appendix goes some way towards this. For example I was able to find 'collect' and a clear explanation. But what about....

What does 'suffix2' mean?
What does 'i' mean?

Now I can guess...it's apparent from the context...but that's a bad way to learn. What I need is a look-up, where I can quickly find the term/message and its explanation, so I can then unravel the code.
I'm not a computer programmer but I'm hungry to learn but it's very frustrating. What am I missing?
Thanks for any help.


IP: Logged

SSC
Administrator
posted 21 August 2010 15:50         Edit/Delete Message   Reply w/Quote
In

{(1 to: 16) collect: [:i | !Amp suffix2: i]}

the variable or block argument 'i' is given the values: 1, 2, 3, .. 16

The result of evaluating this expression is an array of 16 values, one corresponding to each of the values assigned to the variable 'i'.

To give a simpler example (note that the variable can be ANY variable; it does not have to be i):

{(1 to: 3) collect: [ :k | k * 2]}

would evaluate to the Array:

#(2 4 6)


IP: Logged

Phi Curtis
Member
posted 21 August 2010 17:16         Edit/Delete Message   Reply w/Quote
Hi Andrew,

This might be overkill, since you would probably only be using full-fledged Smalltalk in Script objects, but you might pick up a Smalltalk introductory book. I have "On To Smalltalk" by Patrick Henry Winston, which I find to be good. I've never actually read it cover-to-cover though.

It's written for a completely different language, but I also found the "Getting Started with Processing" book by Casey Reas and Ben Fry to be good at introducing programming concepts like for loops (where you'll see that kind of construct with the "i" variable). Again, maybe overkill since you are learning Kyma and not Processing. But I pretty much did read this book cover to cover and got a lot out of it. But I would wait to do this until you really want to do more programming.

The beauty of Kyma is that you can do things without having to do much "real" programming - you usually only need to be able to manipulate some expressions that will calculate some parameter fields for you.

One thing that does get confusing at first (and sometimes still gets me) is that there is a difference between Smalltalk and Capytalk. Capytalk is unique to Kyma and is constructed on top of Smalltalk. Sometimes there are different expressions in Capytalk than what you would use in Smalltalk - "true:" (capytalk) vs. "ifTrue:" (smalltalk), for example.

The appendices in the Kyma X Revealed will get you started, but for expressions that have been added since the book was written, you should look at the Downloads page on the Tweaky:
http://www.symbolicsound.com/cgi-bin/bin/view/Know/KymaXDownloads

Good luck and have fun.

Phil


[Edit: Sorry, the Processing book I read is called "Processing: A Programming Handbook for Visual Designers and Artists." The one I mentioned above is their new book.]

[This message has been edited by Phi Curtis (edited 24 August 2010).]

IP: Logged

Andrew
Member
posted 21 August 2010 17:26         Edit/Delete Message   Reply w/Quote
Thanks folks,

Phil that's exactly the kind of information I need. At this moment in my curve it is taking me about 4 hours to understand each line of parameter code in the book. I can see this will get better and I am excited of the possibilities.

Trouble is I just missed computer programming in my basic school education (40+) so it's eye-wateringly slow and I need good books. So I shall follow your leads. I realise I don't need to become a programmer to use Kyma but it offends my sensibility to look at those parameter fields and not understand them at least. Kinda defeats the point of gaining control over sound sculpting.......

IP: Logged

SSC
Administrator
posted 21 August 2010 19:47         Edit/Delete Message   Reply w/Quote
btw, the chapter on Smalltalk in _Kyma X Revealed_ talks about loop structures on page 221.

[This message has been edited by SSC (edited 21 August 2010).]

IP: Logged

Andrew
Member
posted 22 August 2010 04:30         Edit/Delete Message   Reply w/Quote
Yes I just realised that this morning- it is clearly explained.

IP: Logged

All times are CT (US)

next newest topic | next oldest topic

Administrative Options: Close Topic | Archive/Move | Delete Topic
Post New Topic  Post A Reply

Contact Us | Symbolic Sound Home

This forum is provided solely for the support and edification of the customers of Symbolic Sound Corporation.


Ultimate Bulletin Board 5.45c