typestar

Cascadas en Smalltalk

Un receptor, muchos mensajes: el punto y coma.

"A cascade sends several messages to one receiver: the semicolon."
| tray |
tray := OrderedCollection new.
tray add: 'em quad'; add: 'en quad'; add: 'thin space'.

Transcript
    show: 'Tray holds ';
    show: tray size printString;
    show: ' sorts';
    cr.

"yourself answers the receiver, not the last message's result."
tray := (OrderedCollection new add: 'ampersand'; yourself).
Transcript show: tray first; cr.

Cómo funciona

  1. add: ...; add: ... envía cada add a la misma colección.
  2. Una cascada sobre Transcript arma la línea por partes.
  3. yourself responde el receptor en vez del retorno de add.

Palabras clave y builtins usados aquí

El intento, en números

Líneas
14
Caracteres a escribir
402
Tokens
56
Ritmo de tres estrellas
60 tpm

Al ritmo de tres estrellas de 60 tokens por minuto, este intento toma unos 56 segundos.

Escribe este fragmento

Paso 1 de 3 en Mensajes y bloques; paso 4 de 31 en Fundamentos del lenguaje.

← Anterior Siguiente →