[Block] set: [name] value: [object] | Manual

[Block] set: [name] value: [object]

Sets a variable in a block of code. This how you can get closure-like functionality. In the example we assign a block to a variable named 'shout'. We assign the string 'hello' to the variable 'message' inside the block. When we invoke the block 'shout' by sending the run message without any arguments it will display the string: 'hello!!!'. Similarly, you could use this technique to create a block that returns a block that applies a formula (for instance simple multiplication) and then set the multiplier to use in the formula. This way, you could create a block building 'formula blocks'. This is how you implement use closures in Citrine.

 shout := { ✎ write: (my message + '!!!'). }.
 shout set: 'message' value: 'hello'.
 shout run.

Welcome to the Citrine Online Manual Pages. This online manual has been generated automatically from source code comments using the shtml.ctr script. All Citrine documentation is also available as a UNIX manual file included in the download package. These pages are just a web version of the original Citrine Programming Language User Manual and Reference Guide.

Improve this manual

You can help to improve this manual. Any help is appreciated! If you spot an error in this manual or you want to contribute, just change the corresponding comment in the original Citrine Programming Language source code hosted on github and create a 'Pull Request'. After the documentation generation script has been invoked again the manual pages will be updated to reflect your contribution and so will these online manual pages.

About Citrine

Citrine is an easy to use programming language for everyone. Citrine is so simple it does not even need special syntax for loops or conditions. You can learn Citrine in just a couple of minutes. Citrine makes programming fun again! Visit the homepage for a quick tutorial.

back to homepage | back to manual menu | top of page