Preheat the oven to 220c/200c fan/ gas 7. Butterfly the leg of lamb using a sharp boning knife. Work the knife around the bone, leaving as much flesh as possible on the meat. Remove the shank and freeze for another time. Any larger parts of meat can be cut again to butterfly the meat as evenly as possible.
For the rub simply blitz together in a hand blender. Pour all over the meat and rub in on both sides.
Roast for 1 hour, basting half way through. Remove from the oven and cover with foil for 30 minutes before serving.
Heat the butter in a heavy based saucepan and add the chopped onion with a little salt. Fry on a low heat until the onion is soft but not coloured – about 20 minutes. Add the spices and garlic and stir to coat, then throw in the lentils and sweet potato with a touch more salt. Add the stock, bring to a boil, then simmer for about 30-40 minutes, or until the potato and lentils are soft and mushy, and the dhal is thick. If the dhal starts to dry out before the potatoes and lentils are soft, add a little water.