kill(all);

A:sqrt(2);

function definition, "define" way

define( myfun(pippo,pluto) ,   A* pippo*exp(pluto)          );

myfun( x , 3 );

function definition, ":=" way

myfun2( pippo, pluto ) := A*pippo*exp(pluto);

myfun2(x,3), A=sqrt(5);

function definition, named anonymous "lambda" function way

myfun3 : lambda( [pippo,pluto] , A*pippo*exp(pluto) );

myfun3(x,3), A=sqrt(5);

similar behaviour as ":="

myfun4(pippo,pluto):= ( 
    tmp:A , 
    tmp:tmp*pippo, 
    tmp:tmp*exp(pluto) , 
    tmp  
);

myfun(x,3);