Whisk the egg yolks and cornstarch together and set aside.
Whisk the coconut milk, half-and-half, sugar, and salt together in a medium saucepan over medium heat. Stir occasionally. Bring to a boil and boil for 2 minutes, then reduce to medium-low heat.
Once boiling, remove about 1/2 cup of the mixture and in a slow, steady stream, whisk into the egg yolk mixture, stirring steadily so the eggs do not cook.
Slowly return egg mixture to the saucepan, stirring constantly.
The pudding will begin to thicken and bubble. Cook for an additional 1 1/2 minutes.
Remove from the heat and stir in the coconut, butter, vanilla and coconut extract.
Pour warm filling into cooled pie crust. Cover with plastic wrap to prevent a film forming over the filling and refrigerate at least 2 hours before serve.
Top with your favorite whipped topping and serve with toasted coconut to garnish.