added some comments
reworking of the RightAssociative and LeftAssociative helpers