Io Flashcards
Three concepts related to concurrency were discussed with regards to the language Io. ANSWER was presented as a way to manage two execution streams that pass control back and forth between themselves.
coroutines
Three concepts related to concurrency were discussed with regards to the language Io. ANSWER was presented as a general mechanism for sending a message to an object that would cause that object to respond to the message as a separate process running asynchronously.
Actors
Three concepts related to concurrency were discussed with regards to the language Io. ANSWER was presented as a way to request that something be computed and then be able to continue computing until the result was needed. If the result was available then things would proceed as expected. If the result was not available, then a wait would be initiated until the result became available.
Futures
Io is known for taking a ANSWER-based approach to object oriented programming.
prototype
In Io, the basic method for creating a new object is ANSWER.
clone
In Io, the type of an object is generally the nearest ancestor that ANSWER.
has a name that starts with a capital letter
has a slot for the method type
In Io, we create a singleton by redefining the method ANSWER.
clone
In Ruby, the evaluation of arguments to a message are handled by the object sending the message. In Haskell, the runtime environment decides when and how much to evaluate an argument to a function. In Io, the evaluation of the arguments to a message is made by ANSWER.
the receiver of the message
In Io, a message has three aspects that can be interrogated by the call method. They are: the sender, the reciever, and ANSWER
the argument list
Io allows programmers to play with its syntax, doing things like introducing a colon operator and redefining how curly braces are processed. This makes it easy to use Io to create ANSWER.
Domain Specific Languages
DSLs
As one would expect in an object oriented language, when a message is sent to an object, the first thing the system does is to look for a corresponding method in that object. However, Io lets you change what happens next by redefining the method named ANSWER.
forward