# File kwartz.rb, line 2419
        def translate_expr(node, code='', level=0)
            case tkn = node.token
            when '.+'
                translate_expr(node.left, code, level)
                code << '}${'
                translate_expr(node.right, code, level)
                #left  = node.left
                #right = node.right
                #node.left  = ExprNode.new('()', node.left)
                #node.right = ExprNode.new('()', node.right)

            when :empty, :notempty
                ## s==empty => '(empty s)',  s!=empty => '!(empty s)'
                code << (tkn == :empty ? '(empty ' : '!(empty ')
                translate_expr(node.left, code, level)
                code << ')'

            else
                super(node, code, level)
            end
        end