Preheat oven to 350°F (175°C). Grease and flour three 9-inch round cake pans.
Melt chocolate in boiling water, stirring until smooth. Let it cool.
In a bowl, sift together flour, baking soda, and salt.
In a large bowl, cream butter and sugar until light and fluffy. Add egg yolks one at a time, beating well after each addition. Stir in melted chocolate and vanilla.
Alternately add flour mixture and buttermilk to the batter, beginning and ending with flour. Mix until just combined.
In a separate bowl, beat egg whites until stiff peaks form. Gently fold into the batter.
Divide batter evenly between prepared pans and bake for 25–30 minutes, or until a toothpick comes out clean. Let cakes cool in pans for 10 minutes, then remove and cool completely.
Make the Frosting:
In a saucepan, combine evaporated milk, sugar, egg yolks, and butter. Cook over medium heat, stirring constantly, until thickened—about 10–12 minutes.
Remove from heat; stir in vanilla, coconut, and pecans. Let cool to room temperature before spreading.
Assemble the Cake:
Place one cake layer on a plate. Spread 1/3 of the frosting on top.
Repeat with second and third layers, spreading remaining frosting on top and sides if desired (traditionally, only the tops are frosted).