For the Cake:
1. Preheat the oven to 350°F (180°C). Butter and line a 20-cm (8-inch) springform pan with parchment paper.
2. In a saucepan, bring water and dates to boil. Simmer, stirring frequently, for about 3 minutes, until water is absorbed and dates turn into a pulpy mixture. Set aside.
3. In a bowl, combine flour, baking powder, baking soda, and salt. Set aside.
4. In another bowl, cream together the butter, sugar, and vanilla with an electric mixer. Add the egg and beat until smooth.
5. Begin adding the dry ingredients, alternating with the warm date mixture, beginning and ending with the dry. Mix well after each addition. Stir in the walnuts.
6. Pour the batter into the prepared pan and bake for 40 to 50 minutes, or until a toothpick inserted into the centre of the cake comes out clean.
For the Topping:
1. Meanwhile, in a saucepan, bring all ingredients to a boil, stirring constantly. Simmer gently for about 2 minutes.
2. Spread overtop of the cake while it’s still warm, then place under the broiler until the topping is dark golden brown. Be sure to watch the cake closely during this step to prevent the coconut from burning, as it only takes a few minutes. Once the topping is toasted, let the cake cool in the pan for at least 10 minutes before removing. Transfer to a cake stand or plate and serve with sauce.
For the Sauce:
1. In a saucepan, bring all ingredients to boil, then simmer, stirring constantly. Serve with the cake, while it's still warm or at room temperature. The sauce will keep well in the fridge for up to five days if stored in an airtight container, just be sure to heat it up again before using. Store the cake at room temperature, covered, for up to three days.