Combine milk, sugar, salt, and tapioca pearls in a large pot. Chill for one hour.
Heat over medium heat until the mixture barely comes to a gentle simmer. Turn to the very lowest heat. Cook for 30 minutes, stirring every 10 minutes or so.
While the tapioca mixture is cooking, beat the eggs in a heat safe mixing bowl.
Whisk a bit of hot liquid into the beaten eggs, then slowly whisk in the rest of the mixture.
Pour the tapioca egg mixture back into the pot. Cook over medium-low heat just until the pudding comes to a boil.
Remove from the heat and stir in the vanilla extract.
Let the pudding cool for a few minutes before serving. You can serve it warm, at room temperature, or cold.
Transfer leftover pudding to an airtight container and chill for up to 5 days.