Are you new to Linux or programming?
Do you need compatibility with Arduino shields or libraries?
Do you need to read analog inputs?
Do you need real-time control of I/O?
For other systems like the Raspberry Pi, you might consider adding a Trinket or other inexpensive microcontroller for real-time I/O control.