I've read in the documentation that SWF can be used 'on-premise'. Does that mean SWF can be used on a private company server farm or another cloud computing provider?
Yes and no...yes, you can use SWF to implement a workflow on your on premises hardware (or another provider), but SWF itself still runs on AWS - your applications make calls to SWF, those calls are answered by SWF running on AWS. The work those tasks do however you can run where ever you want.