ورود به حساب

نام کاربری گذرواژه

گذرواژه را فراموش کردید؟ کلیک کنید

حساب کاربری ندارید؟ ساخت حساب

ساخت حساب کاربری

نام نام کاربری ایمیل شماره موبایل گذرواژه

برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید


09117307688
09117179751

در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید

دسترسی نامحدود

برای کاربرانی که ثبت نام کرده اند

ضمانت بازگشت وجه

درصورت عدم همخوانی توضیحات با کتاب

پشتیبانی

از ساعت 7 صبح تا 10 شب

دانلود کتاب The Common Lisp Condition System: Beyond Exception Handling with Control Flow Mechanisms

دانلود کتاب سیستم حالت معمول لب: فراتر از کنترل استثنایی با مکانیسم‌های جریان کنترل

The Common Lisp Condition System: Beyond Exception Handling with Control Flow Mechanisms

مشخصات کتاب

The Common Lisp Condition System: Beyond Exception Handling with Control Flow Mechanisms

دسته بندی: برنامه نویسی: زبان های برنامه نویسی
ویرایش: 1 
نویسندگان:   
سری:  
ISBN (شابک) : 9781484261330, 148426133X 
ناشر: Apress 
سال نشر: 2020 
تعداد صفحات: 316 
زبان: English 
فرمت فایل : PDF (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود) 
حجم فایل: 2 مگابایت 

قیمت کتاب (تومان) : 43,000



کلمات کلیدی مربوط به کتاب سیستم حالت معمول لب: فراتر از کنترل استثنایی با مکانیسم‌های جریان کنترل: Lisp، سیستم شرط، برنامه نویسی



ثبت امتیاز به این کتاب

میانگین امتیاز به این کتاب :
       تعداد امتیاز دهندگان : 3


در صورت تبدیل فایل کتاب The Common Lisp Condition System: Beyond Exception Handling with Control Flow Mechanisms به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.

توجه داشته باشید کتاب سیستم حالت معمول لب: فراتر از کنترل استثنایی با مکانیسم‌های جریان کنترل نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.


توضیحاتی درمورد کتاب به خارجی



فهرست مطالب

Table of Contents
About the Author
About the Technical Reviewers
Introduction
Preface
Chapter 1: Basic concepts
	1.1 Dynamic variables
		1.1.1 Dynamic variables in C
			1.1.1.1 Implementing dynamic variables in C
		1.1.2 Dynamic variables in Common Lisp
		1.1.3 Alternatives in other languages
			1.1.3.1 Scheme
			1.1.3.2 Design patterns
	1.2 Non-local transfers of control
		1.2.1 TAGBODY and GO
		1.2.2 BLOCK and RETURN-FROM/RETURN
		1.2.3 CATCH and THROW
	1.3 Lexical closures
Chapter 2: Introducing the  condition system
	2.1 A simple system of hooks
		2.1.1 Hook #1: Launching Counter-Strike
			2.1.1.1 Equivalent examples
		2.1.2 Hook #2: Only call Counter-Strike players
		2.1.3 Hook #3: Only call parents… maybe
		2.1.4 Hook #4: Holiday wishes
		2.1.5 Accumulating hooks
		2.1.6 Hook #5: Calling Tom’s girlfriend again
		2.1.7 Multiple types of hooks
		2.1.8 Summary: The hook subsystem
	2.2 A simple system of condition handlers
		2.2.1 Exception handling
			2.2.1.1 First iteration: No handling
			2.2.1.2 Second iteration: Signaling a condition
			2.2.1.3 Third iteration: Entering the debugger
		2.2.2 Protection against transfers of control
		2.2.3 Clustering
		2.2.4 Summary: The handler subsystem
	2.3 A simple system of choices
		2.3.1 Kate and Mark
		2.3.2 Choice #1: Escape
			2.3.2.1 The CHOICE structure
			2.3.2.2 Escaping through the front door
			2.3.2.3 Escaping through the back door
			2.3.2.4 Computing and invoking choices
			2.3.2.5 The results
			2.3.2.6 Same-named choices
		2.3.3 Choice #2: Excuses
		2.3.4 Summary: the choice subsystem
	2.4 A simple system of restarts
		2.4.1 Interactive restarts
	2.5 A simple system of actually restarting restarts
		2.5.1 Restarts that perform a non-local exit
		2.5.2 From RESTART-BIND to RESTART-CASE
		2.5.3 Simple restarts
		2.5.4 Standard restarts and restart-invoking functions
		2.5.5 Defining custom restart-invoking functions
	2.6 Reporting conditions and restarts
		2.6.1 Printing vs. reporting
		2.6.2 Custom condition reports
		2.6.3 Custom restart reports
	2.7 Warnings
		2.7.1 Different ways of warning
		2.7.2 Muffling warnings
	2.8 Assertions
		2.8.1 Simple assertions via ASSERT
		2.8.2 Type checking via CHECK-TYPE
		2.8.3 Case assertions
		2.8.4 Correctable case assertions
		2.8.5 Arguments for continuable errors
	2.9 A simple debugger
		2.9.1 Reporting the condition in the debugger
		2.9.2 Reporting the condition type in the debugger
		2.9.3 Reporting the restarts in the debugger
		2.9.4 Choosing the restarts in the debugger
		2.9.5 Installing a custom debugger
		2.9.6 Recursive debugger
		2.9.7 Adding a REPL to the debugger
		2.9.8 Backtraces
		2.9.9 Associating conditions with restarts
Chapter 3: Implementing the Common Lisp condition system
	3.1 Package definition
	3.2 Conditions
		3.2.1 Base class for conditions
		3.2.2 Defining new condition types
	3.3 Coercing data to conditions
	3.4 Restart basics
		3.4.1 Restart class
		3.4.2 Restart visibility and computing restarts
		3.4.3 Invoking restarts
	3.5 Binding restarts
	3.6 Restart cases
		3.6.1 First iteration: basics
		3.6.2 Second iteration: Forms instead of a function
		3.6.3 Third iteration: Managing the keyword differences
		3.6.4 Fourth iteration: Associating conditions with restarts
		3.6.5 Implementing simple restarts
	3.7 System-defined restarts
	3.8 Assertions
		3.8.1 Case failures
		3.8.2 Case utilities
		3.8.3 Non-correctable case assertions
		3.8.4 Correctable case assertions
		3.8.5 General assertions
	3.9 Signaling
	3.10 Handlers
		3.10.1 Binding handlers
		3.10.2 Handler cases
		3.10.3 Testing assertions
	3.11 A featureful debugger
		3.11.1 Debugger commands
		3.11.2 Evaluating Lisp forms
		3.11.3 Reporting and returning conditions
		3.11.4 Listing and invoking restarts
		3.11.5 Debugger help and REPL
			3.11.5.1 REPL variables
			3.11.5.2 Debugger read-eval-print step
		3.11.6 Debugger interface
	3.12 Finishing touches
		3.12.1 Integration
		3.12.2 Additional work
Chapter 4: Wrapping up
	4.1 The purpose of the condition system
	4.2 Binding vs. casing
	4.3 Separation of concerns
	4.4 Algebraic effects
	4.5 Downsides of the condition system
		4.5.1 Separation from CLOS
			4.5.1.1 Making conditions of complex condition types
		4.5.2 Dynamic extent of restart objects
		4.5.3 Speed
		4.5.4 Optimization settings
		4.5.5 Introspection
		4.5.6 Concrete condition types
		4.5.7 Warning conditions and #’WARN
		4.5.8 Implementing custom SIGNAL-like operators
		4.5.9 Lack of functional interfaces to handlers and  restarts
		4.5.10 Smaller issues
		4.5.11 Summary: Downsides of the Common Lisp condition system
	4.6 Condition system in practice
		4.6.1 Unit test library: Collecting results
		4.6.2 Web framework: Sending results over the network
		4.6.3 GUI applications: Interactive querying
		4.6.4 Generating data: Python-like generators
Chapter 5: Appendixes
	5.1 Appendix A: Implementation of dynamic variables in C
	5.2 Appendix B: Additional utilities for working with Common Lisp conditions
		5.2.1 CALL-WITH-HANDLER and CALL-WITH-RESTART
		5.2.2 HANDLER-BIND* and HANDLER-CASE*
		5.2.3 HANDLER-BIND-CASE
	5.3 Appendix C: Lisp macros 101
		5.3.1 Basics of macro writing
		5.3.2 Backquote
		5.3.3 Symbol capture
		5.3.4 Order of evaluation
		5.3.5 Multiple evaluation
		5.3.6 When not to write macros
		5.3.7 Reference
	5.4 Appendix D: Condition system reference
		5.4.1 Restarts and related functions
			5.4.1.1 Class RESTART
			5.4.1.2 Function RESTART-NAME
			5.4.1.3 Function COMPUTE-RESTARTS
			5.4.1.4 Function FIND-RESTART
			5.4.1.5 Function INVOKE-RESTART
			5.4.1.6 Function INVOKE-RESTART-INTERACTIVELY
		5.4.2 Condition-restart association
			5.4.2.1 Macro WITH-CONDITION-RESTARTS
		5.4.3 Restart macros
			5.4.3.1 Macro RESTART-BIND
			5.4.3.2 Macro RESTART-CASE
			5.4.3.3 Macro WITH-SIMPLE-RESTART
		5.4.4 Standard restarts
			5.4.4.1 Restart ABORT
			5.4.4.2 Restart MUFFLE-WARNING
			5.4.4.3 Restart CONTINUE
			5.4.4.4 Restart STORE-VALUE
			5.4.4.5 Restart USE-VALUE
			5.4.4.6 Function ABORT, CONTINUE, MUFFLE-WARNING, USE-VALUE, STORE-VALUE
		5.4.5 Defining and instantiating conditions
			5.4.5.1 Macro DEFINE-CONDITION
			5.4.5.2 Function MAKE-CONDITION
		5.4.6 Assertions
			5.4.6.1 Macro ASSERT
			5.4.6.2 Macro CHECK-TYPE
			5.4.6.3 Macro ECASE, ETYPECASE, CCASE, CTYPECASE
		5.4.7 Condition signaling
			5.4.7.1 Function SIGNAL
			5.4.7.2 Function WARN
			5.4.7.3 Function ERROR
			5.4.7.4 Function CERROR
		5.4.8 Handler macros
			5.4.8.1 Macro HANDLER-BIND
			5.4.8.2 Macro HANDLER-CASE
			5.4.8.3 Macro IGNORE-ERRORS
		5.4.9 Condition types
			5.4.9.1 Condition Type CONDITION
			5.4.9.2 Condition Type WARNING
			5.4.9.3 Condition Type STYLE-WARNING
			5.4.9.4 Condition Type SERIOUS-CONDITION
			5.4.9.5 Condition Type ERROR
			5.4.9.6 Condition Type SIMPLE-CONDITION
			5.4.9.7 Condition Type SIMPLE-WARNING
			5.4.9.8 Condition Type SIMPLE-ERROR
			5.4.9.9 Condition Type STORAGE-CONDITION
			5.4.9.10 Condition Type TYPE-ERROR
			5.4.9.11 Condition Type SIMPLE-TYPE-ERROR
			5.4.9.12 Condition Type CONTROL-ERROR
			5.4.9.13 Condition Type PROGRAM-ERROR
			5.4.9.14 Condition Type CELL-ERROR
			5.4.9.15 Condition Type UNBOUND-VARIABLE
			5.4.9.16 Condition Type UNDEFINED-FUNCTION
			5.4.9.17 Condition Type UNBOUND-SLOT
			5.4.9.18 Condition Type STREAM-ERROR
			5.4.9.19 Condition Type END-OF-FILE
			5.4.9.20 Condition Type PARSE-ERROR
			5.4.9.21 Condition Type READER-ERROR
			5.4.9.22 Condition Type PACKAGE-ERROR
			5.4.9.23 Condition Type FILE-ERROR
			5.4.9.24 Condition Type PRINT-NOT-READABLE
			5.4.9.25 Condition Type ARITHMETIC-ERROR
			5.4.9.26 Condition Type DIVISION-BY-ZERO
			5.4.9.27 Condition Type FLOATING-POINT-INVALID-OPERATION
			5.4.9.28 Condition Type FLOATING-POINT-INEXACT
			5.4.9.29 Condition Type FLOATING-POINT-UNDERFLOW
			5.4.9.30 Condition Type FLOATING-POINT-OVERFLOW
		5.4.10 Debugger invocation
			5.4.10.1 Variable *BREAK-ON-SIGNALS*
			5.4.10.2 Variable *DEBUGGER-HOOK*
			5.4.10.3 Function BREAK
			5.4.10.4 Function INVOKE-DEBUGGER
Index




نظرات کاربران