Place the eggplant directly over a grill or gas flame and roast, turning frequently, until skin is charred and eggplant is soft. Transfer eggplant to a cutting board to cool briefly. With wet hands, peel off all the black skin, then carefully open the eggplant and remove the seeds. Place eggplant in a bowl, cover with water and stir in the lemon juice. Let stand 30 minutes.
Meanwhile, roast the peppers over the grill or flame, turning so the skin is evenly charred. Transfer charred peppers to a plastic bag, tie the top closed and let steam until cool to the touch, about 15 minutes. Peel off the charred skin by hand. Cut away stems, seeds and veins, and finely chop.
Roast the onion over the grill or flame until charred. Let cool, peel away charred skin, cut away stem, and finely chop.
Remove the eggplant from the water and squeeze dry. Pound eggplant, peppers, onion, garlic and salt to a paste in a mortar. Add olive oil, walnuts, yogurt and vinegar. Adjust seasonings and let stand at room temperature for a few hours.