Category:Amazing Hopper: Difference between revisions

m
No edit summary
Line 5,178:
 
/* sobrecarga de instrucciones aritmeticas naturales: MINUS */
#defn minusMINUS(_X_) #IF minus(#ATOMF) #ELSE #CMPLX;postfix;sub;postfix #EIF
 
MINUS es más rápido que SUB, pero solo admite una constante o una variable. La macro, sobrecargano puede sobrecargar al operador real, dándolepor lalo posibilidadque dese elegirhace elnecesario tipo de operaciónescribirla, segúnen laeste naturalezacaso, delcon argumentomayúscula.
 
{5}minus(x) ==> expande a: {5}minus(x)
{5}minusMINUS({x}mul by'10') ==> expande a: {5}{x}mul by'10';postfix;sub;postfix
 
Recordar que POSTFIX activa/desactiva el cálculo en notación polaca. Para el ejemplo, calculará 5 - x*10; sin POSTFIX, HOPPER calcularía x*10-5, y no cumpliría con el sentido de la operación MINUS.
 
 
=== #LOOP / #ENDLOOP, %LOOP / %ENDLOOP ===
543

edits