#!/bin/bash
#########################################################
# 							#
# This is BashStyle-NG 7.8				#
#							#
# Licensed under GNU GENERAL PUBLIC LICENSE v3    	#
#							#
# This script is written by:                            #
#                               Greg Wooledge           #
#                                                       #
# Copyright 2007 - 2009 Christopher Bratusek		#
#							#
#########################################################

exchange() {

   local tmp

   [[ $1 = *[^[:alnum:]_]* || $1 = [0-9]* ]] &&
     { echo "Naughty naughty" >&2; return 1; }
   [[ $2 = *[^[:alnum:]_]* || $2 = [0-9]* ]] &&
     { echo "Naughty naughty" >&2; return 1; }

   eval tmp=\$$1
   eval $1=\$$2
   eval $2=\$tmp

   return 0

}
