In a large saucepan, heat the olive oil over medium high heat. Add the onion and sauté until soft, about 5 minutes. Add the garlic and cook 1 minute longer. Add the tomato paste and then the tomatoes, cook for 2 to 3 minutes, and then pour in the chicken stock. Simmer briskly until the sauce is thick, 20 to 30 minutes. For a finer consistency, pass the sauce through a wire-mesh sieve into a clean saucepan.
Stack the basil leaves, roll them up lengthwise, and cut across the roll very thinly sliced. Stir the basil into the sauce. Whisk in the butter piece by piece, then season to taste with salt and pepper. Keep warm.
Meanwhile, bring a large pot of salted water to a boil. Add the pasta and cook according to the manufacturer instructions, or until al dente.
At the same time, bring the tomato sauce almost to a boil, stir in the julienne basil and as soon as the pasta is done, drain it and transfer immediately to the tomato sauce, stirring in the pasta. Cook the sauce and pasta together for 1 minute.
Divide the pasta into equal portions. Spoon the remaining sauce from the pan over the pasta and garnish with the basil and, or with flat leaf parsley.
Serves 4 to 6.