This week's book giveaway is in the General Computing forum. We're giving away four copies of Arduino in Action and have Martin Evans, Joshua Noble, and Jordan Hochenbaum on-line! See this thread for details.
Your opening paren is in the wrong place - remember paren comes before the function, not after it:
You need partial here or an explicit function since you're taking away the last argument (data). It might be cleaner to define each function upfront:
Also note that your parenthesis style is not idiomatic - you're laying out your parens like braces in Java (which is why I think you end up putting them in the wrong place). Try to get used to the more idiomatic layout I'm using where you use small indentation and stack trailing parens on the same line.