LEADER 06617nam 22006975 450 001 9910254752403321 005 20200704181326.0 010 $a9781484211762 010 $a1484211766 024 7 $a10.1007/978-1-4842-1176-2 035 $a(CKB)3710000000571585 035 $a(EBL)4307800 035 $a(SSID)ssj0001606734 035 $a(PQKBManifestationID)16316853 035 $a(PQKBTitleCode)TC0001606734 035 $a(PQKBWorkID)14895765 035 $a(PQKB)10453697 035 $a(DE-He213)978-1-4842-1176-2 035 $a(MiAaPQ)EBC4307800 035 $a(CaSebORM)9781484211762 035 $a(PPN)191696129 035 $a(OCoLC)961332339 035 $a(OCoLC)ocn961332339 035 $a(EXLCZ)993710000000571585 100 $a20160101d2016 u| 0 101 0 $aeng 135 $aur|n|---||||| 181 $ctxt 182 $cc 183 $acr 200 10$aCommon Lisp Recipes $eA Problem-Solution Approach /$fby Edmund Weitz 205 $a1st ed. 2016. 210 1$aBerkeley, CA :$cApress :$cImprint: Apress,$d2016. 215 $a1 online resource (755 p.) 225 0 $aExpert's Voice in LISP 300 $aIncludes index. 311 08$a9781484211779 311 08$a1484211774 327 $aCommon Lisp Recipes; Table of Contents; About the Author; About the Technical Reviewer; Preface; Who This Book Is For; Who This Book Is (Probably) Not For; How to Read This Book; What's In and What Not; The HyperSpec; Which Implementation; Source Code; The Index; Typographical Conventions; Acknowledgements; 1. Symbols and Packages; 1-1. Understanding the Role of Packages and the Symbol Nomenclature; 1-2. Making Unique Symbols; 1-3. Making Symbols Inaccessible; How Can We Fix This?; 1-4. Avoiding Name Conflicts; When Name Conflicts Do Not Occur 327 $a1-5. Using Symbols As Stand-Ins for Arbitrary Forms1-6. Searching for Symbols by Name; 1-7. Iterating Through All Symbols of a Package; What To Do If You Don't Like LOOP; 1-8. Understanding Common Lisp's Case (In)Sensitivity; Style Hint: Don't Use CamelCase!; 1-9. Using Symbols As String Substitutes; So, What Should You Use?; 1-10. ""Overloading"" of Standard Common Lisp Operators; 2. Conses, Lists, and Trees; 2-1. Understanding Conses; List Access; Testing Whether Something Is a Cons or a List; 2-2. Creating Lists; Converting Vectors to Lists; 2-3. Transposing a Matrix 327 $a2-4. Using List Interpolation2-5. Adding Objects to the End of a List; The Tail Wagging the List; 2-6. ""Splicing"" into a List; 2-7. Detecting Shared Structure in Lists; Isolating the Non-Shared Part; 2-8. Working with Trees; More Complicated Trees; Common Lisp's Standard Tree Functions; 2-9. Working with Stacks; 2-10. Implementing a Queue; 2-11. Destructuring and Pattern Matching; 3. Strings and Characters; 3-1. Getting the ASCII Code of a Character; The Other Way Around; The Limit; 3-2. Naming Characters; 3-3. Using Different Character Encodings; 3-4. Comparing Strings or Characters 327 $aInternationalization3-5. Escaping Characters in String Literals and Variable Interpolation; Is It Still a Literal?; 3-6. Controlling Case; What About Unicode?; 3-7. Accessing or Modifying a Substring; 3-8. Finding a Character or a Substring Within a String; 3-9. Trimming Strings; 3-10. Processing a String One Character at a Time; 3-11. Joining Strings; 3-12. Reading CSV Data; 4. Numbers and Math; 4-1. Using Arbitrarily Large Integers; 4-2. Understanding Fixnums; 4-3. Performing Modular Arithmetic; Efficiency Considerations; 4-4. Switching Bases 327 $a4-5. Performing Exact Arithmetic with Rational NumbersVarious Ways of Converting Numbers to Integers; How Not to Use FLOOR and Friends; Converting Floating-Point Numbers to Rationals and Vice Versa; Mixing Rationals and Floats; 4-6. Controlling the Default Float Format; 4-7. Employing Arbitrary Precision Floats; 4-8. Working with Complex Numbers; 4-9. Parsing Numbers; 4-10. Testing Whether Two Numbers Are Equal; Don't Ever Use EQ with Numbers!; 4-11. Computing Angles Correctly; 4-12. Calculating Exact Square Roots; 5. Arrays and Vectors; 5-1. Working with Multiple Dimensions 327 $a5-2. Understanding Vectors and Simple Arrays 330 $aFind solutions to problems and answers to questions you are likely to encounter when writing real-world applications in Common Lisp. This book covers areas as diverse as web programming, databases, graphical user interfaces, integration with other programming languages, multi-threading, and mobile devices as well as debugging techniques and optimization, to name just a few. Written by an author who has used Common Lisp in many successful commercial projects over more than a decade, Common Lisp Recipes is also the first Common Lisp book to tackle such advanced topics as environment access, logical pathnames, Gray streams, delivery of executables, pretty printing, setf expansions, or changing the syntax of Common Lisp. The book is organized around specific problems or questions each followed by ready-to-use example solutions and clear explanations of the concepts involved, plus pointers to alternatives and more information. Each recipe can be read independently of the others and thus the book will earn a special place on your bookshelf as a reference work you always want to have within reach. Common Lisp Recipes is aimed at programmers who are already familiar with Common Lisp to a certain extent but do not yet have the experience you typically only get from years of hacking in a specific computer language. It is written in a style that mixes hands-on no-frills pragmatism with precise information and prudent mentorship. If you feel attracted to Common Lisp's mix of breathtaking features and down-to-earth utilitarianism, you'll also like this book. 606 $aProgramming languages (Electronic computers) 606 $aComputer science 606 $aProgramming Languages, Compilers, Interpreters$3https://scigraph.springernature.com/ontologies/product-market-codes/I14037 606 $aComputer Science, general$3https://scigraph.springernature.com/ontologies/product-market-codes/I00001 615 0$aProgramming languages (Electronic computers) 615 0$aComputer science. 615 14$aProgramming Languages, Compilers, Interpreters. 615 24$aComputer Science, general. 676 $a004 700 $aWeitz$b Edmund$4aut$4http://id.loc.gov/vocabulary/relators/aut$0890808 801 0$bUMI 801 1$bUMI 906 $aBOOK 912 $a9910254752403321 996 $aCommon Lisp Recipes$91989895 997 $aUNINA