As a first feedback: I feels really slow (and while lua is nice, javascript would be better).
I saw your updated homepage including a tutorial (
https://members.loria.fr/Sylvain.Lefebvre/icesl/tutorials.html). Using a Creating a polyhedron to create a pyramid with rounded corners and edges as suggested in the exercise is a terrible idea. Not only does IceSL crash when using wrong/incomplete tables/vectors to create a polyhedron but the convex_hull function seems to be a much better choice. I tried this code (from the examples) in the online version, but I don't get a proper rendering of the two spheres, only the connection walls are displayed:
a = sphere(5)
b = translate(40, 0, 10) * scale(2) * a
emit(convex_hull(merge({a, b})))
This code gets rendered properly:
a = translate(4, 0, 16) * sphere(1)
b = translate(10, 10, 1) * sphere(1)
c = translate(10, -10, 1) * sphere(1)
d = translate(-6, 0, 1) * sphere(1)
emit(convex_hull(merge({a, b, c, d})))
However if I adjust the numbers by factor 10 it'll eventually crash, or at least won't render properly. And if I enter both blocks of code then none of the two objects is rendered properly.
Then I tried android.lua from the examples, the legs won't render, maybe it is related to the same bug...