by david mertz copyright ( 'reilly mediainc all rights reserved attribution-sharealike international (cc by-sa seeprinted in the united states of america published by 'reilly mediainc gravenstein highway northsebastopolca 'reilly books may be purchased for educationalbusinessor sales promotional use online editions are also available for most titles (more informationcontact our corporate/institutional sales departmentor corporate@oreilly com editormeghan blanchette production editorshiny kalapurakkel proofreadercharles roumeliotis may interior designerdavid futato cover designerkaren montgomery first edition revision history for the first edition first release the 'reilly logo is registered trademark of 'reilly mediainc functional programming in pythonthe cover imageand related trade dress are trademarks of 'reilly mediainc while the publisher and the author have used good faith efforts to ensure that the information and instructions contained in this work are accuratethe publisher and the author disclaim all responsibility for errors or omissionsincluding without limitation responsibility for damages resulting from the use of or reliance on this work use of the information and instructions contained in this work is at your own risk if any code samples or other technology this work contains or describes is subject to open source licenses or the intellectual property rights of othersit is your responsibility to ensure that your use thereof complies with such licenses and/or rights - - [lsi