To make the caramel, combine sugars, agave nectar, and water in a small saucepan.
Heat carefully while dissolving the sugar. Stop stirring immediately once the mixture starts to boil.
Simmer for 10 minutes.
Remove from heat, stir in salt and coconut milk, bring back to a boil and simmer for another 15 minutes.
Remove from heat, stir in walnut pieces, set aside and let cool completely.
To make the ice cream, combine milks, arrowroot, and salt in a saucepan and mix well. Bring to a boil and cook for one minute.
Reserve about 120 ml (1/2 cup) of walnut caramel and set aside. (You can store it in a glass jar until ready to use.)
Pour the remaining caramel in the pot with the milk. Stir until the caramel has dissolved.
Pour into a blender. (Food processor should work, too, hand held blender will also be fine.)
Add oil and vanilla (to taste), and process, until the mixture is creamy and all walnut pieces are pulverised.
If you are going for the popsicle version, simply pour the batter into shot glasses or popsicle molds and freeze until the batter is stiff enough to hold wooden sticks. Insert them and place in the freezer again until completely solid.
If you are going for the blender version, pour the liquid into a freezer suitable container and freeze until solid or over night.
Cut into small cubes, about 5 x 5 cm (2 x 2 inch) and place in a high speed blender.
Blend until your mixture has the consistency of soft serve. Make sure not to overprocess or your ice cream will melt and you have to start over.
Transfer to the container, then to the freezer and freeze for another hour or so.
Your mixture should now be firm but you should still be able to stir it. (This will take one hour more or less, check your ice cream after 30 minutes. Or if necessary, let it sit for longer than an hour.)
Now pour the remaining caramel over the ice cream and quickly fold it in. Don't blend it completely, you are aiming for swirls.
Freeze for a couple of hours, or until firm.