Preference: API A
When writing them, I initially thought I would like API B better because most everything was an object with keys to specify the value. But after looking at them more, I like API A. I like that the arrays indicate values that need to be evaluated, while the objects represent pieces that need to be constructed.
no i wouldnt want a pure array implementation, i like that the arrays and objects mean different things which makes it easy to parse quickly. creating B was as easy as A, maybe because i did A first and knew the pattern at that point. B feels like a lot of overhead, having everything be an object. with proper documentation i dont think that type of verboseness is needed.