yield chiama il block passato a un metodo — trasferisce il controllo al block, opzionalmente passando valori ad esso, quindi riprende l'esecuzione del metodo. È il modo in cui i metodi invocano i block forniti loro, e il meccanismo dietro l'iterazione di Ruby e molti pattern eleganti.
yield base — chiama il block dato
puts
puts
greet { puts }
