fixes #1: conditionally separates variable declarations

fixes #1: conditionally separates variable declarations
using or caused lazy evaluation of truthy assignments. if not in a for loop, we can use ; to separate instead

added test for example failing case