.sendmessage not working C#

I don’t desperately need send message as I just need to instantiate a prefab with a script, and tell the that scrip “this is the number you are going to display.” either way this is what I have.

GameObject display = (GameObject)Instantiate (dmgdisplay, transform.position, transform.rotation)as GameObject;
		display.transform.parent = GameObject.Find("slimy").transform;
		display.SendMessage("display",dmg,SendMessageOptions.DontRequireReceiver);
		Debug.Log ("Damage: " + dmg);

my other script is as follows

using UnityEngine;
using System.Collections;

public class dmgdisplay : MonoBehaviour {

	void display(float dmg){
		Destroy(gameObject, 2f);
		GetComponent<TextMesh>().text = "" + dmg;
	}
}

The prefab get created, but the function never gets called. If you can suggest an alternative method for passing information that would be equally as helpful.

I think that you can declare the function display as public and then, after instantiating an object that contains the dmgdisplay script, you can call this function as follows:

display.GetComponent().display(dmg);