Icon+Unicon/Intro: Difference between revisions

Content added Content deleted
Line 149: Line 149:
Files and windows (mutable) allow Icon/Unicon to interface with the operating system. Operations on files and windows have side effects and they are considered mutable. Sockets and pipes are also implemented as "files".
Files and windows (mutable) allow Icon/Unicon to interface with the operating system. Operations on files and windows have side effects and they are considered mutable. Sockets and pipes are also implemented as "files".


== Declarations, it's all about Scope ==
== Operators and Procedures ==


Icon/Unicon doesn't need to declare the data types of variables because all data is safe typed and self defining. That doesn't mean variables aren't declared. By default all variables are local to their procedures. Declarations are therefore all about the scope of reference rather than type. Specifically,

* local - variables local to a procedure
* global - variables with global presence
* static - procedure variables that persist across calls

== Operators and Procedures ==
=== Intuitive Generalizations ===
=== Intuitive Generalizations ===