hi Kassen,

then it might make more sense to have this;

(with-turtle (get-transform))

i think you are right, but since turtle is not a primitive, but a primitive builder, it would require much more changes than a couple of lines of code like the (get-turtle-transform) was. it would also infer other stuff like (build-turtle-builder), maybe using (rotate) and (translate) instead of (turtle-turn) and (turtle-move) like we discussed about the lights.

(define t (build-turtle-builder 'triangle-strip))

(with-turtle t
        (rotate #(30 0 0))
        (translate #(1 0 0))
        (turtle-vert)
        ...
        (turtle-build-primitive))

additionaly, i think there are a couple of choices in fluxus that could be a bit more logical, like - (turtle-prim) requires numbers to specify polygon face type instead of symbols as opposed to (build-polygons)
- you can either switch on or off a (hint-...), but not both.
- naming inconsistencies like (hint-wire), (wire-color), but (line-width), (line-pattern)

so it would need a lot of effort and discussion to find out how we could make fluxus more logical. on the other hand, we all got used to these things and probably prefer quickly adding new features than perfecting old ones. although it would be nice to collect and sort out these issues, and make fluxus more logical and easier to use.

best,
gabor

Reply via email to