Assembly (using Randall Hyde's HLA)

Code:
program hello;



#includeonce( "stdlib.hhf" )



static

	inputString:string;	//Storage for user supplied string



begin hello;

	stdout.put( "Hi! What's your name?" );

	stdin.a_gets();		//Dynamically allocated storage; 1,024 char max

	mov( eax,inputString );
	stdout.put( "Hello, ",inputString,"! Welcome to Ubuntu!", nl );

	strfree( inputString );	//Don't forget to free the storage when done

end hello;