рдирд┐рдХреЛрдбреЗрдорд╕ рдХрд╛ рд╕рд╛рдорд╛рдиреНрдп рд▓рд┐рд╕реНрдк FAQ

рдирд┐рдХреЛрдбреЗрдорд╕ рдХрд╛ рд╕рд╛рдорд╛рдиреНрдп рд▓рд┐рд╕реНрдк FAQ


рдЕрдВрддрд┐рдо рдЕрдкрдбреЗрдЯ: 2012-04-13

рдпрд╣ рдПрдХ рдмрд╣реБрдд рдЕрдиреМрдкрдЪрд╛рд░рд┐рдХ рдХреЙрдорди рд▓рд┐рд╕реНрдк рдПрдлрдПрдХреНрдпреВ рд╣реИ, рдЬреЛ рдирд┐рдХреЛрдбреЗрдорд╕ рд╕рд┐рд╡реЛрд▓рд╛ рдХреЗ рд╡реНрдпрдХреНрддрд┐рдкрд░рдХ рд░рд╛рдп рдХреЛ рджрд░реНрд╢рд╛рддрд╛ рд╣реИред рдпрд╣ рдкрд╛рда рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░ рдкрд╛рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдЕрдиреНрдп FAQ рдФрд░ comp.lang.lisp рдкрд░ рднрд╛рдЧ рдореЗрдВ рдЖрдзрд╛рд░рд┐рдд рд╣реИред
рдпрджрд┐ рдЖрдкрдХреЛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рдЖрдкрдХреЗ рдкрд╛рда рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИ, рддреЛ рдореБрдЭреЗ рдЗрд╕реЗ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛрдЧреА, рдЗрд╕рд▓рд┐рдП nikodemus@random-ateate.net рдкрд░ рд▓рд┐рдЦреЗрдВред
рдЗрд╕ FAQ рдХрд╛ рд╡рд░реНрддрдорд╛рди рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдореНрди рдкрддреЛрдВ рдкрд░ рдЙрдкрд▓рдмреНрдз рд╣реИ:
http://random-state.net/files/nikodemus-cl-faq.txt
http://random-state.net/files/nikodemus-cl-faq.html
FAQ рдХреЛ рд╕рдордп-рд╕рдордп рдкрд░ comp.lang.lisp рдореЗрдВ рднреА рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдмрд╣реБрдд рд╢реБрд░реБрдЖрдд рд╣реИ


рдЖрдо рд▓рд┐рд╕реНрдк рд╕реАрдПрд▓? Clisp? рд▓рд┐рд╕реНрдк?

"рдХреЙрдорди рд▓рд┐рд╕реНрдк" рдПрдПрдирдПрд╕рдЖрдИ рджреНрд╡рд╛рд░рд╛ рдорд╛рдирдХреАрдХреГрдд рднрд╛рд╖рд╛ рдХрд╛ рдирд╛рдо рд╣реИред
"рд╕реАрдПрд▓" рдкрд┐рдЫрд▓реЗ рдирд╛рдо рдХрд╛ рд╕рдмрд╕реЗ рдкрд╕рдВрджреАрджрд╛ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдирд╛рдо рд╣реИред
"рдХреНрд▓рд┐рд╕реНрдк" рдПрдХ рдЙрдЪрд┐рдд рдЖрд╢реБрд▓рд┐рдкрд┐ рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЖрдо рд▓рд┐рд╕реНрдк рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдореЗрдВ рд╕реЗ рдПрдХ рдХрд╛ рдирд╛рдо рд╣реИред
"рд▓рд┐рд╕реНрдк" рдЙрди рднрд╛рд╖рд╛рдУрдВ рдХреА рд╢реНрд░реЗрдгреА рд╣реИ рдЬреЛ рд╕реАрдПрд▓ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИрдВред
"LISP" рдЕрдм рд▓рдЧрднрдЧ 20 рд╡рд░реНрд╖реЛрдВ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ, рдЖрдо рд▓рд┐рд╕реНрдк рдХреЛ рдЕрдХреНрд╕рд░ рд▓рд┐рд╕реНрдк рдХреЛ рдЫреЛрдЯрд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдпрджрд┐
рдпрд╣ рдЗрд╕ рд╕рдВрджрд░реНрдн рд╕реЗ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреНрдпрд╛ рдЪрд░реНрдЪрд╛ рдХреА рдЬрд╛ рд░рд╣реА рд╣реИред

рддреЛ рдХреНрдпрд╛?

рдЖрдк рдпрд╣рд╛рдВ рднрд╛рд╖рд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ:
http://random-state.net/features-of-common-lisp.html

рдЖрдо рд▓рд┐рд╕реНрдк рдХреИрд╕реЗ рд╕реАрдЦреЗрдВ?

  1. рдХреЙрдорди рд▓рд┐рд╕реНрдк рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рдЕрдЪреНрдЫреА рдХрд┐рддрд╛рдм рдкрдврд╝реЗрдВред
  2. рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рд╢реБрд░реВ рдХрд░реЗрдВред

рдХрдИ рд▓реЛрдЧ рдкрд╣рд▓реЗ рдкрде рдХреЛ рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рдмрд╛рд░ рдЕрдиреБрд╕рд░рдг рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рджреВрд╕рд░реЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рднреВрд▓ рдЬрд╛рддреЗ рд╣реИрдВред
рдЦреИрд░, рд╕рдЪреНрдЪрд╛рдИ рдпрд╣ рд╣реИ рдХрд┐, рдЖрдк рдЗрд╕рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рд╢реБрд░реВ рдХрд┐рдП рдмрд┐рдирд╛ рдХрд┐рд╕реА рднрд╛рд╖рд╛ рдореЗрдВ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХрд░рдирд╛ рдирд╣реАрдВ рд╕реАрдЦ рд╕рдХрддреЗред рдФрд░ рдлрд┐рд░, рдПрдХ рдХрд╛рдлреА рдмрдбрд╝реЗ рдХрд╛рд░реНрдпрдХреНрд░рдо рдкрд░ рдХрд╛рдо рдХрд┐рдП рдмрд┐рдирд╛, рдХрдИ рдЪреАрдЬреЗрдВ рдЖрдо рддреМрд░ рдкрд░ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╕рдордЭрдирд╛ рдЕрд╕рдВрднрд╡ рд╣реИрдВред

рдЪрд╛рд░реЛрдВ рдУрд░ рдкрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрдпрд╛ рдиреБрдХрд╕рд╛рди рд╣реИрдВ?

рдХреЛрдИ рднреА рдЕрдЪреНрдЫреА рдкреБрд╕реНрддрдХ рдЖрдкрдХреЛ рднрд╛рд╖рд╛ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдФрд░ рдЪрд╛рд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрддрд╛рдПрдЧреА, рд▓реЗрдХрд┐рди рдХреБрдЫ рдордиреЛрд╡реИрдЬреНрдЮрд╛рдирд┐рдХ рдФрд░ рд╕рд╛рдорд╛рдЬрд┐рдХ рдмрд┐рдВрджреБ рд╣реИрдВ, рдЬрд┐рди рдкрд░ рдмрд╣реБрдд рдХреБрдЫ рдареЛрдХрд░ рдЦрд╛рддрд╛ рд╣реИ:

  1. рд▓рд┐рд╕реНрдк рдореИрдХреНрд░реЛрдЬрд╝ рд╕реАрдЦрдирд╛ рдкрд╛рдЧрд▓ рд╣реИред
    рд▓рд┐рд╕реНрдк рдореИрдХреНрд░реЛрдЬрд╝ рдПрдХ рдардВрдбреА рдЪреАрдЬ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╡реЗ рд╢реБрд░реБрдЖрддреА рд▓реЛрдЧреЛрдВ рдХреЛ рдЬреЛ рд╢рдХреНрддрд┐ рджреЗрддреЗ рд╣реИрдВ, рд╡рд╣ рдЕрдХреНрд╕рд░ рднреНрд░рд╛рдордХ рд╣реЛрддреА рд╣реИред
    рдЕрдХреНрд╕рд░ рдПрдХ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдПрдХ рд▓рдХреНрд╖рдг рдПрдХ рд╕реНрдкрд╖реНрдЯ рд╕рдордЭ рдХреЗ рдмрд┐рдирд╛ рдХреБрдЫ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рд╣реИ рдХрд┐ рдпрд╣ рдХреНрдпреЛрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╛рдж рд░рдЦреЗрдВ, рдореИрдХреНрд░реЛрдЬрд╝ рдХреЗ рд╕рд╛рде рдЬреЛ рдХреБрдЫ рднреА рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд╡рд╣ рдЙрдирдХреЗ рдмрд┐рдирд╛ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдмреЗрд╢рдХ, рдпрд╣ рдЗрддрдирд╛ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдХреА рд╕реНрдореГрддрд┐ рд╕реНрд╡рд░реНрдЧ рд╕реЗ рдкреГрдереНрд╡реА рддрдХ рдХрдо рд╣реИред
    рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ рдХрд┐ рдЖрдк рдЪрд▓рд╛рдирд╛ рд╕реАрдЦреЗрдВ, рдЪрд▓рдирд╛ рд╕реАрдЦреЗрдВред рдпрд╣ рдЗрд╕рдХреЗ рд▓рд╛рдпрдХ рд╣реИ, рдЦрд╛рд╕рдХрд░ рддрдм рд╕реЗ рдЬрдм рдЖрдк рдЙрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред
  2. рд▓рд┐рд╕реНрдк рдПрдХрджрдо рд╕рд╣реА рдирд╣реАрдВ рд╣реИ, рдФрд░ рдпрд╣ рдЦрдмрд░ рдирд╣реАрдВ рд╣реИред
    рдХреБрдЫ рдЙрдЪреНрдЪ рдЙрдореНрдореАрджреЛрдВ рдХреЗ рд╕рд╛рде рд▓рд┐рд╕реНрдк рдореЗрдВ рдЖрддреЗ рд╣реИрдВ рдФрд░ рдирд┐рд░рд╛рд╢ рд╣реЛрддреЗ рд╣реИрдВред рдЕрдиреНрдп рд▓реЛрдЧ рдПрдХреНрд╕ рднрд╛рд╖рд╛ рдХреЗ рд╕рд╛рде рд▓рд┐рд╕реНрдк рдХреА рддреБрд▓рдирд╛ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдкрд╛рддреЗ рд╣реИрдВ рдХрд┐ рдкреВрд░реНрд╡ рдХреБрдЫ рдореЗрдВ рдЦреЛ рджреЗрддрд╛ рд╣реИред
    рд╡реЗ рджреЛрдиреЛрдВ рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рддрд░реНрдХ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЙрдЪрд┐рдд рджрд╛рд╡реЗ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╕рдорд╕реНрдпрд╛рдПрдБ рддрдм рд╢реБрд░реВ рд╣реЛрддреА рд╣реИрдВ рдЬрдм рдпреЗ рд▓реЛрдЧ рдХрд╣реАрдВ рди рдХрд╣реАрдВ рдЕрдкрдиреЗ рджрд╛рд╡реЛрдВ рдХреА рдЖрд╡рд╛рдЬрд╝ рдирд┐рдХрд╛рд▓рдиреЗ рд▓рдЧрддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, # рд▓рд┐рд╕реНрдк рдкрд░ред
    рдпрджрд┐ рддрд░реНрдХ рд╕рд╣реА рд╣реИ, рддреЛ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ рдХрд┐ рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдкрд╣рд▓реЗ рд╣реА рд╕реМ рдмрд╛рд░ рдЪрд░реНрдЪрд╛ рд╣реЛ рдЪреБрдХреА рд╣реИ рдФрд░ рдХрд┐рд╕реА рдХреЗ рдкрд╛рд╕ рдлрд┐рд░ рд╕реЗ рдЪрд░реНрдЪрд╛ рдХрд░рдиреЗ рдХреА рддрд╛рдХрдд рдпрд╛ рдЗрдЪреНрдЫрд╛ рдирд╣реАрдВ рд╣реИред
    рдпрджрд┐ рддрд░реНрдХ рдЧрд▓рдд рд╣реИрдВ рдпрд╛ рд╡реЗ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд╕реЗ рдЕрдзрд┐рдХ рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рд╣реИрдВ, рддреЛ рдЗрд╕ рддрдереНрдп рдХреЗ рдмрд╛рд╡рдЬреВрдж рдХрд┐ рд╕рд╛рд▓-рджрд░-рд╕рд╛рд▓ рдЕрд╕рдВрддреБрд╖реНрдЯ рдирд╡рд╛рдЧрдВрддреБрдХ рд▓рдЧрд╛рддрд╛рд░ рдРрд╕реЗ рд╕рд╡рд╛рд▓ рдЙрдард╛рддреЗ рд╣реИрдВ, рдХрд┐рд╕реА рдХреЗ рдкрд╛рд╕ рдлрд┐рд░ рд╕реЗ рдЪрд░реНрдЪрд╛ рдХрд░рдиреЗ рдХреА рддрд╛рдХрдд рдпрд╛ рдЗрдЪреНрдЫрд╛ рдирд╣реАрдВ рд╣реИред
    рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░ рд▓рд┐рд╕реНрдк рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмреБрд░реА рдмрд╛рдд рдХрд░рдирд╛ рдордирд╛ рд╣реИ, рд▓реЗрдХрд┐рди ... рдпрджрд┐ рдЖрдк рдПрдХ рд╢реБрд░реБрдЖрддреА рд╣реИрдВ, рддреЛ рдЖрдУ рдФрд░ рдХрд╣реЗрдВ рдХрд┐ рд╕рдм рдХреБрдЫ рдЦрд░рд╛рдм рд╣реИ, рд▓реЛрдЧреЛрдВ рд╕реЗ рдпрд╣ рдЙрдореНрдореАрдж рди рдХрд░реЗрдВ рдХрд┐ рд╡реЗ рдЖрдкрдХреЗ рд╕рд╛рде рдЦреБрд▓реЗ рд╣рдерд┐рдпрд╛рд░ рдХреЗ рд╕рд╛рде рдЖрдПрдВрдЧреЗред рднрд▓реЗ рд╣реА рдЖрдк рд╕реМ рдЧреБрдирд╛ рд╕рд╣реА рд╣реЛрдВред
    рдкреБрд░рд╛рдиреЗ рд▓реЛрдЧреЛрдВ рдХреА рд╢рд┐рдХрд╛рдпрддреЗрдВ, рдЬрд┐рдиреНрд╣реЛрдВрдиреЗ рд╕рдореБрджрд╛рдп рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдХреБрдЫ рдХрд┐рдпрд╛ рд╣реИ, рдЙрдирдХрд╛ рд╡рдЬрди рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╣реИред
  3. рдЕрдиреБрднрд╡реА рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд▓рд┐рд╕реНрдкрд░реНрд╕ рдХрдИ рдЯреНрд░реЛрд▓ рджреЗрдЦрддреЗ рд╣реИрдВред
    рдЯреНрд░реЙрд▓реА рдХреЗ рдмрд╣реБрдд рд╕рд╛рд░реЗ! рдПрдХ рднреНрд░рдорд┐рдд рд╢реБрд░реБрдЖрдд рдХрднреА-рдХрднреА рдПрдХ рдЯреНрд░реЛрд▓ рдХреА рддрд░рд╣ рджрд┐рдЦрддреА рд╣реИ, рдмрдбрд╝реЗ рдкреИрдорд╛рдиреЗ рдкрд░ рдХреНрдпреЛрдВрдХрд┐ рдЬреНрдпрд╛рджрд╛рддрд░ рдЯреНрд░реЙрд▓реНрд╕ рдЕрдХреНрд╕рд░ рдЦреБрдж рдХреЛ рд▓рд┐рд╕реНрдк рд╢реБрд░реБрдЖрддреА рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рдЪреНрдЫрдиреНрди рдХрд░рддреЗ рд╣реИрдВред
    рдЗрд╕рд▓рд┐рдП, рд▓реЛрдЧ рд╕реЛрдЪ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЖрдк рдПрдХ рдЯреНрд░реЛрд▓ рд╣реИрдВ рдФрд░ рдЙрд╕реА рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рджреЗрдВред
    рдЗрд╕рд╕реЗ рдмрдЪрдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рддрд░реАрдХрд╛ рд╡рд┐рдирдореНрд░ рд╣реЛрдирд╛ рд╣реИред рдпрджрд┐ рдХреЛрдИ рдЖрдкрд╕реЗ рдХрд╣рддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдЧрд▓рдд рд╣реИрдВ рдпрд╛ рдЧрд▓рдд рд╣реИрдВ, рддреЛ рдПрдХ рдкрд▓ рдХреЗ рд▓рд┐рдП рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рд╡рд╣ рдпрд╛ рддреЛ рд╕рд╣реА рд╣реИ, рдпрд╛ рдпрд╣ рдмрд╣реБрдд рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ рдХрд┐ рдЖрдк рдЧрд▓рдд рд╣реИрдВ рдпрд╛ рдЧрд▓рдд рд╣реИрдВред


рдХрд┐рд╕ рдХрд┐рддрд╛рдм рд╕реЗ рд╢реБрд░реВ рдХрд░реЗрдВ?

рдкреАрдЯрд░ рд╕реАрдмреЗрд▓ рджреНрд╡рд╛рд░рд╛ "рдкреНрд░реИрдХреНрдЯрд┐рдХрд▓ рдХреЙрдорди рд▓рд┐рд╕реНрдк" (рдЬрд┐рд╕реЗ рдкреАрд╕реАрдПрд▓ рднреА рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ) рд╕реЗ рд╢реБрд░реВ рдХрд░реЗрдВред рдпрд╣ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╢реБрд░реБрдЖрддреА рдмрд┐рдВрджреБ рд╣реИ рдпрджрд┐ рдЖрдк рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХреБрдЫ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рдЬрд╛рдирддреЗ рд╣реИрдВред рдкреБрд╕реНрддрдХ рдЗрд▓реЗрдХреНрдЯреНрд░реЙрдирд┐рдХ рдФрд░ рдореБрджреНрд░рд┐рдд рд░реВрдк рдореЗрдВ рдЙрдкрд▓рдмреНрдз рд╣реИ:

http://www.gigamonkeys.com/book/

рдПрдХ рдФрд░ рдЕрдЪреНрдЫреА рдХрд┐рддрд╛рдм рд╣реИ рдХреЙрдорди рд▓рд┐рд╕реНрдк: рдП рдЬреЗрдВрдЯрд▓ рдЗрдВрдЯреНрд░реЛрдбрдХреНрд╢рди рдЯреВ рд╕рд┐рдВрдмреЛрд▓рд┐рдХ рдХрдВрдкреАрдЯрд┐рд╢рди рдлреНрд░реЙрдо рдбреЗрд╡рд┐рдб рдЯреЙрд░реЗрдЯрд╕реНрдХреАред рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдореЗрдВ рд╢реБрд░реБрдЖрддреА рдпрд╛ рдЬрд┐рдиреНрд╣реЗрдВ рдкреАрд╕реАрдПрд▓ рдмрд╣реБрдд рдЬрдЯрд┐рд▓ рд▓рдЧрддрд╛ рд╣реИ, рдЙрдиреНрд╣реЗрдВ рдЗрд╕ рдкреБрд╕реНрддрдХ рдХреЛ рдкрдврд╝рдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрджрд┐ рдЖрдк рдЗрд╕рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЕрднреА рднреА рдкреАрд╕реАрдПрд▓ рдкрдврд╝реЗрдВред рдпрджреНрдпрдкрд┐ рдпрджрд┐ рдЖрдк рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдкреАрд╕реАрдПрд▓ рдкрдврд╝ рдЪреБрдХреЗ рд╣реИрдВ рдФрд░ рд╕рдм рдХреБрдЫ рд╕рдордЭ рдЧрдП рд╣реИрдВ, рддреЛ рдЖрдк рдЗрд╕реЗ рд╕реБрд░рдХреНрд╖рд┐рдд рд░реВрдк рд╕реЗ рдЫреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред рдкреБрд╕реНрддрдХ рдЗрд▓реЗрдХреНрдЯреНрд░реЙрдирд┐рдХ рдФрд░ рдореБрджреНрд░рд┐рдд рд░реВрдк рдореЗрдВ рдЙрдкрд▓рдмреНрдз рд╣реИ:

http://www.cs.cmu.edu/~dst/LispBook/index.html

рдЕрднреА рднреА рдЕрдЪреНрдЫреА рдкреБрд╕реНрддрдХреЛрдВ рдХрд╛ рдПрдХ рд╕рдореВрд╣ рд╣реИ, рд▓реЗрдХрд┐рди рд╢реБрд░реБрдЖрддреА рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдпреЗ рджреЛрдиреЛрдВ рд╕рд░реНрд╡рд╢реНрд░реЗрд╖реНрда рд╣реИрдВред рд▓рд┐рд╕реНрдк рдХреА рднреВрдорд┐ рдЦрд░рд╛рдм рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдореЗрд░реЗ рд╡рд┐рдирдореНрд░ рдЕрдиреБрднрд╡ рдореЗрдВ рдпрд╣ рдЧрд▓рдд рдзрд╛рд░рдгрд╛ рдмрди рд╕рдХрддреА рд╣реИред рдпрджрд┐ рдЖрдк рдЗрд╕рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╡реИрд╕реЗ рднреА рдкреАрд╕реАрдПрд▓ рдкрдврд╝реЗрдВред

рднрд╛рд╖рд╛ рдорд╛рдирдХ рдХреЗ рдЗрд▓реЗрдХреНрдЯреНрд░реЙрдирд┐рдХ рд╕рдВрд╕реНрдХрд░рдг Hyperspec рдпрд╛ CLHS рджреЗрдЦреЗрдВред рдпрд╣ рд╕рд┐рд░реНрдл рдПрдХ рдореВрд▓реНрдпрд╡рд╛рди рд╕рдВрджрд░реНрдн рд╣реИ:

http://www.lispworks.com/documentation/HyperSpec/index.html

рдЧрд╛рдЗрдб рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рддреБрд░рдВрдд рднреАрдбрд╝ рдордд рдХрд░реЛред рдмрд╕ рдкрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХрд╣рд╛рдВ рд╣реИ, рдЗрд╕рдореЗрдВ рд╕реАрдПрд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рднреА рд╕рдВрднрд╛рд╡рд┐рдд рд╕рд╡рд╛рд▓реЛрдВ рдХреЗ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдЬрд╡рд╛рдм рд╣реИрдВред рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд╣реА рдЬрдЧрд╣ рд╣реИ рдХрд┐ рдХреЛрдИ рд╡рд┐рд╢реЗрд╖ рдСрдкрд░реЗрдЯрд░ рдХреНрдпрд╛ рдХрд░ рд░рд╣рд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рд╛рдпрдХ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдЖрдкрдХреЛ рдЬрд┐рд╕ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рд╡рд╣ рднрд╛рд╖рд╛ рдореЗрдВ рд▓рд╛рдЧреВ рд╣реИред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЕрдкрдиреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд╕рд╛рде рдЖрдП рджрд╕реНрддрд╛рд╡реЗрдЬ рдХреА рдЙрдкреЗрдХреНрд╖рд╛ рди рдХрд░реЗрдВред SBCL рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдореИрдиреБрдЕрд▓ рдпрд╣рд╛рдБ рдкрд░ рд╕реНрдерд┐рдд рд╣реИ:

http://www.sbcl.org/manual

рдореБрдЭреЗ рдХреМрди рд╕рд╛ рдХреНрд░рд┐рдпрд╛рдиреНрд╡рдпрди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП?

рдЗрд╕ рдмрд╛рдд рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдХреНрдпрд╛ рдЪрд╛рд╣рд┐рдП, рд╣рд╛рд▓рд╛рдБрдХрд┐ рдпрджрд┐ рдЖрдкрдиреЗ рдЕрднреА рд╢реБрд░реБрдЖрдд рдХреА рд╣реИ, рддреЛ рдпрд╣ рдХреЛрдИ рдмрд╛рдд рдирд╣реАрдВ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрджрд┐ рдЖрдк рд▓реЛрдЧреЛрдВ рдХреЗ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╕рдореВрд╣ рд╕реЗ рдорджрдж рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдЙрд╕ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЛ рд▓реЗрдВ рдЬреЛ рдЗрд╕ рд╕рдореВрд╣ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред

рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рд╕реАрдЦрддреЗ рд╣реИрдВ, рдЖрдк рдПрдХ рд╕реВрдЪрд┐рдд рд╡рд┐рдХрд▓реНрдк рдмрдирд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдВрдЧреЗред рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рдмреАрдЪ рд╕рдВрдХреНрд░рдордг рдмрд╣реБрдд рдореБрд╢реНрдХрд┐рд▓ рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рджрд░реНрджрдирд╛рдХ рд╕рдВрджреЗрд╣ рдХрд╛ рдХрд╛рд░рдг рдирд╣реАрдВ рд╣реИред

рдореИрдВ SBCL рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЖрдВрд╢рд┐рдХ рд╣реВрдБ:

http://www.sbcl.org/

SBCL рдЕрдЪреНрдЫрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдУрдкрди рд╕реЛрд░реНрд╕ рдХреЛрдб рдХреЗ рд╕рд╛рде рдЖрддрд╛ рд╣реИ, рдХрдИ рдкреНрд▓реЗрдЯрдлрд╛рд░реНрдореЛрдВ (рд╡рд┐рдВрдбреЛрдЬ рд╕рд╣рд┐рдд) рдкрд░ рдЪрд▓рддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдПрдХ рдХрдВрдкрд╛рдЗрд▓рд░ рднреА рд╢рд╛рдорд┐рд▓ рд╣реИ, ANSI рд╕рдВрдЧрддрддрд╛ рдХреЛ рдмрд╣реБрдд рдЧрдВрднреАрд░рддрд╛ рд╕реЗ рд▓реЗрддрд╛ рд╣реИ рдФрд░ рдЖрдо рддреМрд░ рдкрд░ рджреБрдирд┐рдпрд╛ рдореЗрдВ рдЦреБрд╢реА рдФрд░ рд╢рд╛рдВрддрд┐ рд▓рд╛рддрд╛ рд╣реИ ... рдФрд░ рдпрд╣рд╛рдВ рдореБрдЭреЗ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдЙрд▓реНрд▓реЗрдЦ рд╣реИ рдХрд┐ рдореИрдВ рдПрд╕рдмреАрд╕реАрдПрд▓ рдХреЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реВрдВ рдФрд░ рдореЗрд░реА рдХрдВрдкрдиреА рд╕реНрдЯреАрд▓ рдмреИрдВрдХ рд╕реНрдЯреВрдбрд┐рдпреЛ рд▓рд┐рдорд┐рдЯреЗрдб рдЙрд╕рдХреЗ рд▓рд┐рдП рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рд╕рд╣рд╛рдпрддрд╛ рдкреНрд░рджрд╛рди рдХрд░рддреА рд╣реИред

рдпрджрд┐ рдХрд┐рд╕реА рдХрд╛рд░рдг рд╕реЗ SBCL рдЖрдкрдХреЛ рд╢реЛрднрд╛ рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИ, рддреЛ рдореИрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕реВрдЪрд┐рдпреЛрдВ рд╕реЗ рдЧреБрдЬрд░рдиреЗ рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ:

рдЦреЛрд▓рд╛:


рд╡рд╛рдгрд┐рдЬреНрдпрд┐рдХ:


рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХрд╣рд╛рдВ рд╣реИрдВ? рдХреНрдпрд╛ CPAN рдпрд╛ RubyGems рдХрд╛ рдПрдХ рдПрдирд╛рд▓реЙрдЧ рд╣реИ?

QuickLisp рд░реВрдмреАрдЬрдореНрд╕ рдХреЗ рд╕рдорд╛рди рд╣реИ:

http://www.quicklisp.org/

рдпрд╣ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХрд╛ рдПрдХ рдЯрди рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЙрдирдХреЗ рдмреАрдЪ рдирд┐рд░реНрднрд░рддрд╛ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдПрдХ рдмрд╣реБрдд рд╣реА рдЖрд╡рд╢реНрдпрдХ рдЙрдкрдХрд░рдг рд╣реИред

CPAN рдХреЗ рд╕рдмрд╕реЗ рдирдЬрд╝рджреАрдХ "Cliki" рдФрд░ "common-lisp.net" рд╣реИрдВ:

http://www.cliki.net/
http://www.common-lisp.net/

... рд▓реЗрдХрд┐рди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреБрдЫ рднреА рдмреЗрд╣рддрд░ рдирд╣реАрдВ рд╣реИред

рдХрд┐рд╕ рдЖрдИрдбреАрдИ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ?

рдпрджрд┐ рдЖрдк SBCL рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ, рддреЛ Emacs рдФрд░ Slime рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ:

http://www.common-lisp.net/project/slime/

рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЕрдЧрд░ рдЖрдкрдиреЗ рдкрд╣рд▓реЗ Emacs рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ, рддреЛ рдЕрдкрдиреЗ рдЖрдк рдкрд░ рдПрдХ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ рдФрд░ рдХреАрдЪрдбрд╝ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ - рд╕реАрдЦрдиреЗ рдХреА рдЕрд╡рд╕реНрдерд╛ рдмрд╣реБрдд рдЦрдбрд╝реА рдирд╣реАрдВ рд╣реИ рдФрд░ рд╕рднреА рдХрдорд╛рдВрдб рдореЗрдиреВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реБрд▓рдн рд╣реИрдВред

рдЖрдк Quicklisp рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХреАрдЪрдбрд╝ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдиреАрдЪреЗ рдЕрдиреБрднрд╛рдЧ "рдкрд░реНрдпрд╛рд╡рд░рдг рдХреЛ рдХреИрд╕реЗ рд╕реЗрдЯ рдХрд░реЗрдВ?" рджреЗрдЦреЗрдВред рдЖрдк Mx slime-cheat-sheet рд╕рд╛рде рдЕрдзреНрдпрдпрди рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрд╣ рдХреАрдЪрдбрд╝ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХрд╛ рдХреЗрд╡рд▓ рдПрдХ рдЫреЛрдЯрд╛ рд╕рд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИред

рдпрджрд┐ рдЖрдк рдПрдХ рдЕрд▓рдЧ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдбреЗрд╡рд▓рдкрд░ рджреНрд╡рд╛рд░рд╛ рдЕрдиреБрд╢рдВрд╕рд┐рдд рдЖрдИрдбреАрдИ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ (рд╣рд╛рд▓рд╛рдВрдХрд┐ рдХреАрдЪрдбрд╝ рд▓рдЧрднрдЧ рд╕рднреА рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ)ред

рд▓рд┐рд╕реНрдк рдХреЗ рд╕рд╛рде рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдХрд╛рдо рдХреЗ рд▓рд┐рдП, рд╕рдВрдкрд╛рджрдХ рдХреЛ рдХрдо рд╕реЗ рдХрдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП:



рдХреАрдЪрдбрд╝ рдЙрдкрд░реЛрдХреНрдд рд╕рднреА рдФрд░ рдмрд╣реБрдд рдХреБрдЫ рдХрд░ рд╕рдХрддрд╛ рд╣реИред

рдпрджрд┐ рдЖрдк рд╡реАрдЖрдИ (рдПрдо) рдХреЛ рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╕реНрд▓рд┐рдорд╡ рдХреА рдЬрд╛рдВрдЪ рдХрд░реЗрдВ, рдЬреЛ рд╡рд┐рдо рдХреЛ рдХреЙрдорди рд▓рд┐рд╕реНрдк рдореЗрдВ рд▓рд┐рдЦреЗ рд╕реНрд▓рд┐рдо рднрд╛рдЧ рд╕реЗ рдЬреЛрдбрд╝рддрд╛ рд╣реИ:

http://www.vim.org/scripts/script.php?script_id=2531
https://bitbucket.org/kovisoft/slimv/
http://kovisoft.bitbucket.org/tutorial.html

... рд▓реЗрдХрд┐рди рдореИрдВ рдЗрд╕рдХреЗ рд▓рд┐рдП рд╡рд╛рдЙрдЪ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛, рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рд╡рд┐рдо / рд╕реНрд▓реАрдореЗрд╡ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддрд╛ред

рдкрд░реНрдпрд╛рд╡рд░рдг рдХреИрд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ?


SBCL, рдХреАрдЪрдбрд╝ рдФрд░ Quicklisp рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдкрд░ рдПрдХ рдЕрдЪреНрдЫрд╛ рдорд╛рд░реНрдЧрджрд░реНрд╢рдХ (рд▓реЗрдЦрди рдХреЗ рд╕рдордп) рдпрд╣рд╛рдБ рд╕реНрдерд┐рдд рд╣реИ:

http://mohiji.nfshost.com/2011/01/modern-common-lisp-on-linux/
http://mohiji.nfshost.com/2011/01/modern-common-lisp-on-osx/

рд╡рд┐рдВрдбреЛрдЬ рдкрд░ рдХреНрд▓рд┐рд╕реНрдк рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рджрд┐рд╢рд╛рдирд┐рд░реНрджреЗрд╢ред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдХреЛрдИ рднреА рд╡реНрдпрдХреНрддрд┐ рдХреЛ рдЧрд▓реЗ рдирд╣реАрдВ рд▓рдЧрд╛ рд╕рдХрддрд╛ рд╣реИ:

http://mohiji.nfshost.com/2011/01/modern-common-lisp-on-windows/

рдХреНрдпрд╛ рдХреЛрдИ GUI рд╣реИ?

рд╣рд╛рдБ рдФрд░ рдирд╣реАрдВред рдХреЛрдИ рднреА GUI рдирд╣реАрдВ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рд╣рд░ рдХреЛрдИ рдХрд░реЗрдЧрд╛ред

рдЕрдзрд┐рдХрд╛рдВрд╢ рд╡рд╛рдгрд┐рдЬреНрдпрд┐рдХ рд▓рд┐рд╕реНрдкреНрд╕ рдЬреАрдпреВрдЖрдИ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЗ рд╕рд╛рде рдЖрддреЗ рд╣реИрдВ, рдФрд░ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрди рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдиреЛрдВ рдХреЗ рдкреНрд░рд╕реНрддрд╛рд╡рдХреЛрдВ рдХреЛ рдЖрдкреВрд░реНрддрд┐ рдХрд┐рдП рдЧрдП рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреА рддрд░рд╣ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рд▓рд┐рд╕реНрдк рдХреЗ рдмреАрдЪ рдРрд╕реА рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рд▓рд┐рдП рдХреЛрдб рдкреЛрд░реНрдЯреЗрдмрд▓ рдирд╣реАрдВ рд╣реИред рдпрджрд┐ рдЖрдк рдПрдХ рд╡рд╛рдгрд┐рдЬреНрдпрд┐рдХ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЖрдк рдХреЛрдб рдкреЛрд░реНрдЯреЗрдмрд┐рд▓рд┐рдЯреА рдореЗрдВ рд░реБрдЪрд┐ рдирд╣реАрдВ рд░рдЦрддреЗ рд╣реИрдВ, рддреЛ рдбреЗрд╡рд▓рдкрд░ рджреНрд╡рд╛рд░рд╛ рдкреЗрд╢ рдХрд┐рдП рдЧрдП рдЙрдкрдХрд░рдг рдЪреБрдиреЗрдВред рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреИрд╕реЗ рдмрдирд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдХреЛрдб рдХреЛ рд╡рд┐рднрд┐рдиреНрди рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдкреЛрд░реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд╢рд╛рдпрдж рдпрд╣ рд╡рд╣реА рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рдЪрд╛рд╣рд┐рдПред

рдУрдкрди рд╕реЛрд░реНрд╕ рдХреИрдВрдк рдХреЗ рдХрдИ рд╕рдорд╛рдзрд╛рди рднреА рд╣реИрдВред

CommonQt Qt рдХреЗ рд▓рд┐рдП рдзреВрдореНрд░рдкрд╛рди рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рд▓рд┐рдП рдЖрдо рд▓рд┐рд╕реНрдк рдХрд╛ рдмрдВрдзрди рд╣реИ:

http://common-lisp.net/project/commonqt/

LTK рдХреЛ Tk рдХреЗ рдКрдкрд░ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ:

http://www.peter-herth.de/ltk/

рд╕реАрдПрд▓-рдЬреАрдЯреАрдХреЗ 2 рдФрд░ рд╕реАрдПрд▓рдЬреА рдЬреАрдЯреАрдХреЗ + рдХреЗ рд▓рд┐рдП рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореИрдВ рдЗрди рдШрдЯрдирд╛рдХреНрд░рдореЛрдВ рдХреА рд╡рд░реНрддрдорд╛рди рд╕реНрдерд┐рддрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рдирд╣реАрдВ рдХрд╣ рд╕рдХрддрд╛ред рдпрд╣ рдЬреАрдЯреАрдХреЗ рд╕рд░реНрд╡рд░ рдХреЛ рднреА рджреЗрдЦрдиреЗ рд▓рд╛рдпрдХ рд╣реИред

http://common-lisp.net/project/cl-gtk2/
http://sourceforge.net/projects/clg/ http://www.gtk-server.org/

рд╕реАрдПрд▓рдЖрдИрдПрдо (рдХреЙрдорди рд▓рд┐рд╕реНрдк рдЗрдВрдЯрд░рдлреЗрд╕ рдореИрдиреЗрдЬрд░) рдЬреАрдпреВрдЖрдИ рдХреЗ рд▓рд┐рдП рд▓рдЧрднрдЧ рдорд╛рдирдХреАрдХреГрдд рдПрдкреАрдЖрдИ рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рд╣реИ, рдЬреЛ рдКрдкрд░ рд╕реВрдЪреАрдмрджреНрдз рдЬреАрдпреВрдЖрдИ рд╕реЗ рдХрд╛рдлреА рдЕрд▓рдЧ рд╣реИред рд╕рдм рдХреБрдЫ рдкрд░рд┐рдЪрд┐рдд рдФрд░ рд╕рдордЭрдиреЗ рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рди рдХрд░реЗрдВред

http://random-state.net/files/how-is-clim-different.html

рдХрдИ рд▓реЛрдЧ рдХрд╕рдо рдЦрд╛рддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рдПрдХ GUI рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЕрдЪреНрдЫреА рдмрд╛рдд рд╣реИ, рджреВрд╕рд░реЛрдВ рдХрд╛ рджрд╛рд╡рд╛ рд╣реИ рдХрд┐ рдпрд╣ рдмрд┐рд▓реНрдХреБрд▓ рднреА рдирд╣реАрдВ рд╣реИред рдЬреИрд╕рд╛ рдХрд┐ рдпрд╣ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЕрдзрд┐рдХрд╛рдВрд╢ рд╡рд╛рдгрд┐рдЬреНрдпрд┐рдХ рд▓рд┐рд╕реНрдк рдиреЗ рд╕реАрдПрд▓рдЖрдИрдПрдо рдХреЛ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛, рдФрд░ рдЕрднреА рднреА рдореИрдХрдХреНрд▓рд┐рдо рдирд╛рдордХ рдПрдХ рдкреЛрд░реНрдЯреЗрдмрд▓ рдУрдкрди рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╣реИ, рдЬреЛ рдХрд╛рдлреА рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдмрд╣реБрдд рд╡рд┐рдХрд╕рд┐рдд рдирд╣реАрдВ рд╣реИред

http://common-lisp.net/project/mcclim/

CLX X11 рдХрд╛ рдПрдХ рдкреЛрд░реНрдЯреЗрдмрд▓, рдирд┐рдореНрди-рд╕реНрддрд░реАрдп рд▓рд┐рд╕реНрдк рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рд╣реИ, рдЬреЛ рдПрдХреНрд╕рд▓рд┐рдм рдХреЗ рддреБрд▓рдиреАрдп рд╕реНрддрд░ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред

http://www.cliki.net/CLX
https://github.com/sharplispers/clx

рдпрджрд┐ рдореИрдВ GUI рдореБрджреНрджреЛрдВ рдкрд░ рд╕рдЦреНрддреА рд╕реЗ рд╕реАрдорд┐рдд рдирд╣реАрдВ рд╣реВрдВ, рддреЛ рдЧрд▓рдд рд╣реЛрдЧрд╛ рдпрджрд┐ рдореИрдВ CL-OPENGL, OpenGL, GLU рдФрд░ GLUT API рдХреЗ рд▓рд┐рдП рдПрдХ рдкреЛрд░реНрдЯреЗрдмрд▓ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реВрдВ:

http://common-lisp.net/project/cl-opengl/

рдХреНрдпрд╛ рдордВрдЪ рд╣реИрдВ?

рдХреЛрд░реНрд╕ рдХрд╛ рдПрдХ рдордВрдЪ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдкреНрд▓реЗрдиреЗрдЯ рд▓рд┐рд╕реНрдк рд╣реИ - рдХреЙрдорди рд▓рд┐рд╕реНрдк рдХреЗ рд▓рд┐рдП рдПрдХ рдмреНрд▓реЙрдЧ рдПрдЧреНрд░реАрдЧреЗрдЯрд░ред рдмрд╣реБрдд рд╕рд╛рд░реА рд░реЛрдЪрдХ рдЬрд╛рдирдХрд╛рд░реА, рдмрд┐рдирд╛ рдХрд┐рд╕реА рдЕрддрд┐рд░рд┐рдХреНрдд рдХреЗред

http://planet.lisp.org/

рд▓рд┐рд╕реНрдкрдлреЛрд░рдо рдПрдХ рдЕрдЪреНрдЫрд╛ рдордВрдЪ рд╣реИ:

http://www.lispforum.com/

рд▓реЗрдХрд┐рди рдореИрдВ рд╡реНрд░рдд рдирд╣реАрдВ рдХрд░рддрд╛, рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рд╡рд╣рд╛рдБ рдХрднреА-рдХрднреА рдЖрддрд╛ рдерд╛ред

Usenet / Google рд╕рдореВрд╣ рдкрд░ рдЕрднреА рднреА comp.lang.lisp рд╕рдореВрд╣ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╡реЗ рдЯреНрд░реЛрд▓ рджреНрд╡рд╛рд░рд╛ рдШрдиреА рдЖрдмрд╛рджреА рд╡рд╛рд▓реЗ рд╣реИрдВред рд╡рд╣рд╛рдБ рд▓рд┐рдЦрдиреЗ рд╡рд╛рд▓реЗ рд▓реЗрдЦрдХ рдХрд╛рдлреА рд╕рд╛рдХреНрд╖рд░ рд╣реИрдВ, рдЬрдмрдХрд┐ рдЕрдкрд╡рд┐рддреНрд░ рдЕрдЯрдХрд▓реЗрдВ рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдШрдЯрдирд╛ рд╣реИред рдЗрди рд╕рдореВрд╣реЛрдВ рдХреЛ рдкрдврд╝рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдкрдХреЛ рд▓рд┐рд╕реНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдиреНрд╣реЗрдВ рдкрдврд╝рдирд╛ рдирд╣реАрдВ рд╣реИред

http://groups.google.com/group/comp.lang.lisp

рд╡рд┐рд╢рд┐рд╖реНрдЯ рдореЗрд▓рд┐рдВрдЧ рд╕реВрдЪрд┐рдпреЛрдВ рдореЗрдВ рд╢реЛрд░ рдЕрдиреБрдкрд╛рдд рдХреЗ рд▓рд┐рдП рдПрдХ рдмреЗрд╣рддрд░ рд╕рдВрдХреЗрдд рд╣реИред рд╕рднреА рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдЕрдкрдиреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдФрд░ рд╕рдВрджрд░реНрдн рдореЗрд▓рд┐рдВрдЧ рд╕реВрдЪреА рдмрдирд╛рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ, рдЕрдзрд┐рдХрд╛рдВрд╢ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдЕрдкрдиреА рдореЗрд▓рд┐рдВрдЧ рд╕реВрдЪреА рднреА рдмрдирд╛рддреЗ рд╣реИрдВред SBCL рдХреЗ рд▓рд┐рдП, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрд╣ рд╣реИ:

https://lists.sourceforge.net/lists/listinfo/sbcl-help

рдУрдкрди-рд╕реЛрд░реНрд╕ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рдмреАрдЪ, freenode.org рдкрд░ # рд▓рд┐рд╕реНрдк рдЪреИрдирд▓ рд▓реЛрдХрдкреНрд░рд┐рдп рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдзреНрдпрд╛рди рд░рдЦреЗрдВ, рдХрд┐ # рд▓рд┐рд╕реНрдк рдореЗрдВ рд╡рд┐рд╖рдп рдХрд╛ рдмрд╣реБрдд рдХрдард┐рди рдкрд╛рд▓рди рд╣реИ, рдФрд░ рдпрд╣ рд╡рд┐рд╖рдп рдХреЙрдорди рд▓рд┐рд╕реНрдк рд╣реИ, рди рдХрд┐ "рд▓рд┐рд╕реНрдк рдмрд┐рд▓реНрдХреБрд▓"ред рдмрд╣реБрдд рдирд░рдо рдирд┐рдпрдореЛрдВ рдХреЗ рд╕рд╛рде рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ #lispcafe рдЪреИрдирд▓ рд╣реИред

рдЧреЗрдо рдбреЗрд╡рд▓рдкрд░реНрд╕ рд╕рдореБрджрд╛рдп рдХрд╛рдлреА рд╕рдХреНрд░рд┐рдп рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рдЗрд╕рд╕реЗ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рдирд╣реАрдВ рд╣реВрдВред Google рдЖрдкрдХреА рд╕рд╣рд╛рдпрддрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред

рдЖрдо рд▓рд┐рд╕реНрдк рдкреЗрд╢реЗрд╡рд░ рдкреНрд░реЛ рд╕реВрдЪреА рдкрд░ рд╕рдВрд╡рд╛рдж рдХрд░рддреЗ рд╣реИрдВред рд▓рд┐рд╕реНрдк рдХреА рдЕрдиреНрдп рдмреЛрд▓рд┐рдпреЛрдВ рдХреА рдЪрд░реНрдЪрд╛ рдПрдХ рдЕрдкрдорд╛рдирдЬрдирдХ рд╣реИ, рд╢реБрд░реБрдЖрддреА рд╕реЗ рдкреНрд░рд╢реНрди рд╕реНрд╡реАрдХрд╛рд░ рдирд╣реАрдВ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред

http://lists.common-lisp.net/mailman/listinfo/pro

рднрд╛рд╖рд╛ рдХреЗ рдЧреБрдг


рдлрд╝рд╛рдЗрд▓ рд╕рдВрдХрд▓рд┐рдд рдХреИрд╕реЗ рдХрд░реЗрдВ?

рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдЙрддреНрддрд░: рд▓рд┐рд╕реНрдк рдкреНрд░рд╛рд░рдВрдн рдХрд░реЗрдВ рдФрд░ рдЯрд╛рдЗрдк рдХрд░реЗрдВ:

 (compile-file "/path/to/myfile.lisp") 


рдлрд┐рд░, рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ, рдЖрдкрдХреЛ рд╕рдВрдХрд▓рд┐рдд рдлрд╝рд╛рдЗрд▓ рдХреЛ рд▓реЛрдб (рд▓реЛрдб ...) рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рдЙрддреНрддрд░: рдЕрдзрд┐рдХрд╛рдВрд╢ рд╕рдВрдХрд▓рд┐рдд рднрд╛рд╖рд╛рдПрдВ рдЧреИрд░-рд╕рдВрд╡рд╛рджрд╛рддреНрдордХ рд╣реИрдВ - рдЖрдк рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдпрд╛ рдЖрдИрдбреАрдИ рд╕реЗ рдлрд╝рд╛рдЗрд▓ рд╕рдВрдХрд▓рд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рдлрд┐рд░ рд╕рдВрдХрд▓рд┐рдд рдлрд╝рд╛рдЗрд▓ рдЪрд▓рд╛рдПрдВред рд▓рд┐рд╕реНрдк рдореЗрдВ, рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИред

рдЬрдмрдХрд┐ рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░ рдЖрдк рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдПрдХ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ, рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдХрд╛рд░реНрдп рд╕рддреНрд░ рд╕рдВрдкрд╛рджрди-рд╕рдВрдХрд▓рди-рдирд┐рд╖реНрдкрд╛рджрди рдЪрдХреНрд░ рдХреА рддрд░рд╣ рдирд╣реАрдВ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдЙрдореНрдореАрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдЖрдорддреМрд░ рдкрд░, рдЗрдВрдЯрд░реИрдХреНрд╢рди рдПрдХ рд░рдирд┐рдВрдЧ рд▓рд┐рд╕реНрдк рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рд╕рд╛рде рд╣реЛрддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдПрдХ рдХрд╛рдордХрд╛рдЬреА рд╕рддреНрд░ рд╣реЛрддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдЖрдк рдЕрдВрддрдГрдХреНрд░рд┐рдпрд╛рддреНрдордХ рд░реВрдк рд╕реЗ рдХреЛрдб рдЬреЛрдбрд╝рддреЗ рд╣реИрдВред

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:

  1. рдЦреБрд▓реЗ рдПрдорд╛рдХреНрд╕, рд╕реНрд▓рд┐рдореНрд╕ рдФрд░ рд▓рд┐рд╕реНрдк Mx slime рд▓реЙрдиреНрдЪ Mx slime рд▓рд┐рдП Mx slime рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ;
  2. рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдПрд╕рдбреАрдПрдл рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛, рдореМрдЬреВрджрд╛ рдХреЛрдб рдХреЛ рд▓реЛрдб рдХрд░рдирд╛;
  3. рд╡рд╛рдВрдЫрд┐рдд рдлрд╝рд╛рдЗрд▓ рдЦреЛрд▓реЗрдВ, рдлрд╝рдВрдХреНрд╢рди рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ рдФрд░ Cc Cc рджрдмрд╛рдПрдВ, рдЬрд┐рд╕рд╕реЗ рдЗрд╕рдХреА рдкреБрди: рд╕реНрдерд╛рдкрдирд╛ рд╣реЛ рдЬрд╛рдПрдЧреА;
  4. Slime REPL рдкрд░ рдЬрд╛рдПрдВ рдФрд░ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░реЗрдВ;
  5. рдЪрд░рдг 3 рд╕реЗ рджреЛрд╣рд░рд╛рдПрдВред


рдЙрдкрд░реЛрдХреНрдд рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдирд╛рдо ASDF "рдПрдХ рдФрд░ рд╕рд┐рд╕реНрдЯрдо рдкрд░рд┐рднрд╛рд╖рд╛ рд╕реБрд╡рд┐рдзрд╛" рдХреЗ рд▓рд┐рдП рд╣реИред рдпрд╣ рд╕рд┐рд╕реНрдЯрдо рдЖрдкрдХреЛ рдпрд╣ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдХрд┐ рдПрдХ рд╣реА рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рдбрд╛рдЙрдирд▓реЛрдб рдпрд╛ рд╕рдВрдХрд▓рди рдХреЗ рд▓рд┐рдП рдПрдХ рд╣реА рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдХрдИ рдлрд╛рдЗрд▓реЗрдВ рдХреИрд╕реЗ рдПрдХрддреНрд░рд┐рдд рдХрд░реЗрдВред рдореЗрдХ рдЬреИрд╕рд╛ рдХреБрдЫред

рдПрдХ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдлрд╝рд╛рдЗрд▓ рдХреИрд╕реЗ рдмрдирд╛рдПрдВ?

рдЙрддреНрддрд░ рдЙрд╕ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЖрдк рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдкреНрд░рд▓реЗрдЦрди рджреЗрдЦреЗрдВред рдЕрдЧрд░ рд╣рдо SBCL рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВ:

 ;;    SBCL,    save-lisp-and-die. ;;     - MY-FUNCTION. (save-lisp-and-die "my.exe" :executable t :toplevel 'my-function) 


FUNCALL рдФрд░ APPLY - рдХреНрдпрд╛ рдЕрдВрддрд░ рд╣реИ, рдХреНрдпрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реИ?

рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдЙрддреНрддрд░: рдЬрд╣рд╛рдВ рднреА рдЖрдк FUNCALL рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЕрдиреНрдп рдорд╛рдорд▓реЛрдВ рдореЗрдВ, APPLY рдЙрдкрдпреЛрдЧ APPLY ред

рд╡рд┐рд╕реНрддреГрдд рдЙрддреНрддрд░: FUNCALL рдХрд╣рддреЗ FUNCALL рддрд░реНрдХреЛрдВ FUNCALL рд╕рдВрдЦреНрдпрд╛ рдЬреНрдЮрд╛рдд рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред APPLY (рдФрд░ MULTIPLE-VALUE-CALL ) рдХреЛ рддрд░реНрдХреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред

 (defun map-list-with-1 (function list arg) (mapcar (lambda (elt) (funcall function elt arg)) list)) (defun map-list-with-n (function list &rest args) (mapcar (lambda (elt) (apply function elt args)) list)) 


APPLY рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ MAP-LIST-WITH-1 FUNCALL MAP-LIST-WITH-1 рд▓рд┐рдЦрдиреЗ рдХреА рдХреЛрдИ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдлреЛрди FUNCALL рд▓рдЧрднрдЧ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЕрдзрд┐рдХ рдХреБрд╢рд▓ рд╣реЛрдЧрд╛ред

рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд MAP-LIST-WITH-N FUNCALL MAP-LIST-WITH-N рдХреЛ FUNCALL рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдирд╣реАрдВ рд▓рд┐рдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рдХреНрдпреЛрдВрдХрд┐ рдХреЙрд▓ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХреЗ рд▓рд┐рдП рддрд░реНрдХреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдЕрдЬреНрдЮрд╛рдд рд╣реИред APPLY рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

SET, SETQ рдФрд░ SETF - рдХреНрдпрд╛ рдЕрдВрддрд░ рд╣реИ, рдХреНрдпрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реИ?

рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдЙрддреНрддрд░: рд╣рдореЗрд╢рд╛ SETF рдЙрдкрдпреЛрдЧ SETF ред

рд╡рд┐рд╕реНрддреГрдд рдЙрддреНрддрд░: рдПрдХ рдмрд╛рд░ рдЬрдм рдХреЙрдорди рд▓рд┐рд╕реНрдк рдирд╣реАрдВ рдерд╛, рддрдм рдХреЛрдИ рд▓реЗрдХреНрд╕рд┐рдХрд▓ рдЪрд░ рдирд╣реАрдВ рдереЗ, рдХреЗрд╡рд▓ рдЧрддрд┐рд╢реАрд▓ рдереЗред рдФрд░ рддрдм рди рддреЛ SETQ рдерд╛ рдФрд░ рди рд╣реА SETF , рдХреЗрд╡рд▓ SET ред

рдЖрдЬ рдХреНрдпрд╛ рд▓рд┐рдЦрд╛ рд╣реИ?

 (setf (symbol-value '*foo*) 42) 


рдЙрд╕ рддрд░рд╣ рджрд░реНрдЬ рдХрд┐рдпрд╛ рдЧрдпрд╛

 (set (quote *foo*) 42) 


рдЬреЛ рдЕрдВрддрддрдГ SETQ (SET Quoted) рддрдХ рдХрдо рд╣реЛ рдЧрдпрд╛

 (setq *foo* 42) 


рддрдм рд▓реЗрдХреНрд╕рд┐рдХрд▓ рдЪрд░ рджрд┐рдЦрд╛рдИ рджрд┐рдП рдФрд░ SETQ рдЙрдкрдпреЛрдЧ рдЙрдиреНрд╣реЗрдВ рдЕрд╕рд╛рдЗрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рдиреЗ рд▓рдЧрд╛, рдЗрд╕рд▓рд┐рдП SETQ SET рдЪрд╛рд░реЛрдВ рдУрд░ рдХреЗрд╡рд▓ рдПрдХ рдЖрд╡рд░рдг рдмрди рдЧрдпрд╛ред

рдмрд╛рдж рдореЗрдВ, рдХрд┐рд╕реА рдиреЗ SETF (SET рдлреАрд▓реНрдб) рдХрд╛ рдЖрд╡рд┐рд╖реНрдХрд╛рд░ рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛рдУрдВ рдореЗрдВ рдореВрд▓реНрдпреЛрдВ рдХреЛ рдЕрд╕рд╛рдЗрди рдХрд░рдиреЗ рдХреЗ рд╕рд╛рдорд╛рдиреНрдпреАрдХреГрдд рддрд░реАрдХреЗ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд┐рдпрд╛, рдЕрдиреНрдп рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ L-рдорд╛рдиреЛрдВ рдХреЛ рдкреНрд░рддрд┐рдмрд┐рдВрдмрд┐рдд рдХрд┐рдпрд╛:

 x.car := 42; 


рдХреЗ рд░реВрдк рдореЗрдВ рд▓рд┐рдЦрд╛ рд╣реИ

 (setf (car x) 42) 


рд╕рдорд░реВрдкрддрд╛ рдФрд░ рд╕рд╛рдорд╛рдиреНрдпрддрд╛ рдХреЗ рд▓рд┐рдП, SETF рдореЗрдВ SETQ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рднреА рд╢рд╛рдорд┐рд▓ рд╣реИред рдЖрдк рдХрд╣ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ SETQ рдПрдХ рдирд┐рдореНрди-рд╕реНрддрд░реАрдп рдЖрджрд┐рдо рдерд╛, рдФрд░ SETF рдПрдХ рдЙрдЪреНрдЪ-рд╕реНрддрд░реАрдп рдСрдкрд░реЗрд╢рди рдерд╛ред

рдлрд┐рд░ рдкреНрд░рддреАрдХрд╛рддреНрдордХ рдореИрдХреНрд░реЛрдЬрд╝ рдЖрдПред рдЪреВрдВрдХрд┐ рдкреНрд░рддреАрдХрд╛рддреНрдордХ рдореИрдХреНрд░реЛрдЬрд╝ рдкрд╛рд░рджрд░реНрд╢реА рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЗрд╕реЗ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ рддрд╛рдХрд┐ SETF рдЙрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ SETF рддрд░рд╣ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░реЗ рдЬрдм рдЕрд╕рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ "рд╡реЗрд░рд┐рдПрдмрд▓" рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рдкреНрд░рддреАрдХрд╛рддреНрдордХ рдореИрдХреНрд░реЛ рд╣реИ:

 (defvar *hidden* (cons 42 42)) (define-symbol-macro foo (car *hidden*)) foo => 42 (setq foo 13) foo => 13 *hidden* => (13 . 42) 


рдФрд░ рдЕрдм рд╣рдо рдЗрди рджрд┐рдиреЛрдВ рдореЗрдВ рдЦреБрдж рдХреЛ рдкрд╛рддреЗ рд╣реИрдВ: SET рдФрд░ SETQ рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рдЕрддрд┐рд╡рд╛рдж рд╣реИ, рдкреБрд░рд╛рдиреА рдмреЛрд▓рд┐рдпреЛрдВ рд╕реЗ рдмрдЪреЗ рд╣реБрдП рд╣реИрдВ рдФрд░ рд╕рдВрднрд╡рддрдГ, рдЕрдЧрд▓реЗ рдЖрдо рд▓рд┐рд╕реНрдк рд╣реЛрдВрдЧреЗред

рд╣рдореЗрд╢рд╛ SETF рдЙрдкрдпреЛрдЧ SETF ред

'(рез реи рей) рдпрд╛ (рд╕реВрдЪреА рез реи рей)?

рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдЙрддреНрддрд░: рд▓рд┐рдЦреЗрдВ

 (list 1 2 3) 


рдЬрдм рддрдХ рдЖрдк рдЕрдВрддрд░ рдХреЛ рд╕рдордЭрддреЗ рд╣реИрдВред рдЕрдЧрд░ рдЖрдк рд▓рд┐рдЦреЗрдВрдЧреЗ

 '(1 2 3) 


рдЗрд╕реЗ рд╡рд┐рдирд╛рд╢рдХрд╛рд░реА рд░реВрдк рд╕реЗ рд╕рдВрд╢реЛрдзрд┐рдд рди рдХрд░реЗрдВ (рдпрд╛рдиреА SORT рдпрд╛ NREVERSE рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ)ред

рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рдЙрддреНрддрд░: рдкрд╣рд▓рд╛, рдПрдХ рдПрдХрд▓ рдЙрджреНрдзрд░рдг рдПрдХ рдореИрдХреНрд░реЛ рд╣реИ рдЬреЛ рдзрд░реНрдорд╛рдиреНрддрд░рд┐рдд рд╣реЛрддрд╛ рд╣реИ

 'anything 


рдореЗрдВ

 (quote anything) 


рдРрд╕рд╛ рдкрдврд╝рддреЗ рд╕рдордп

 '(1 2 3) === (quote (1 2 3)) 


рджреВрд╕рд░реЗ, QUOTE рдПрдХ рд╡рд┐рд╢реЗрд╖ рдСрдкрд░реЗрдЯрд░ рд╣реИ рдЬреЛ рдЕрдкрдиреЗ рддрд░реНрдХреЛрдВ рдХреЛ рдмрд┐рдирд╛ рд╡рд┐рд╡рд╛рджрд┐рдд рд▓реМрдЯрд╛рддрд╛ рд╣реИред рдЗрддрдирд╛

 '(1 2 3) 


рдПрдХ рд╢рд╛рдмреНрджрд┐рдХ рд╕реВрдЪреА рджреЗрддрд╛ рд╣реИред рдЕрдзрд┐рдХрд╛рдВрд╢ рднрд╛рд╖рд╛рдУрдВ рдХреА рддрд░рд╣, рд╢рд╛рдмреНрджрд┐рдХ рдбреЗрдЯрд╛ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд рдкрд░рд┐рдгрд╛рдо рд╣реЛрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХрдВрдкрд╛рдЗрд▓рд░ рд╢рд╛рдмреНрджрд┐рдХ рдпреБрдХреНрдд рд╕реНрдерд┐рд░рд╛рдВрдХ рдХреЛ рд╕рдорддрд▓ рдХрд░ рд╕рдХрддрд╛ рд╣реИ:

 (let ((a '(1 2 3)) (b '(1 2 3))) (eq ab)) ; => T  NIL 


рдкрд░рд┐рдгрд╛рдо рдпрд╣ рд╣реИ рдХрд┐ A, B рдХреЛ рдмрджрд▓рдХрд░ рднреА рдмрджрд▓ рд╕рдХрддрд╛ рд╣реИред рддреЛ QUOTE рдЙрдкрдпреБрдХреНрдд рдХреНрдпреЛрдВ рд╣реИ? рдпрджрд┐, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЗ рдкрд╛рд╕ рдмрдбрд╝реА рдЕрдкрд░рд┐рд╡рд░реНрддрдиреАрдп рд╕реВрдЪрд┐рдпрд╛рдВ рд╣реИрдВ рдЬреЛ рд╕рдВрдХрд▓рдХ рдЧрдардмрдВрдзрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рддреЛ рдЙрдиреНрд╣реЗрдВ рд╢рд╛рдмреНрджрд┐рдХ рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд░рдирд╛ рд╕рдВрдХрд▓рдХ рдХреЛ рдРрд╕рд╛ рдХрд░рдиреЗ рдХрд╛ рдЕрдзрд┐рдХрд╛рд░ рджреЗрддрд╛ рд╣реИред

рдХреНрдпрд╛ * EARS *?

рдЖрдк рдЬреЛ рднреА рдЪрд░, DEFVAR рдпрд╛ DEFPARAMETER рдШреЛрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рд╣рдореЗрд╢рд╛ * SUCH NAME * рдХрд░реЗрдВред рдФрд░ рд╕реНрдерд╛рдиреАрдп рдЪрд░ рдХреЗ рд▓рд┐рдП рдРрд╕рд╛ рди рдХрд░реЗрдВред

 (defvar *-* ...) (defvar -- ...) 


рдХреНрдпреЛрдВ? рдпрджрд┐ рдЖрдк рдЕрднреА рднреА рдирд╣реАрдВ рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рд╡рд┐рд╢реЗрд╖ рдЪрд░ рдХреНрдпрд╛ рд╣реИрдВ, рддреЛ рдЖрдк рдЬрд┐рд╕ рдкреБрд╕реНрддрдХ рдХреЛ рдкрдврд╝ рд░рд╣реЗ рд╣реИрдВ рдЙрд╕реЗ рдкрдврд╝рдирд╛ рдЬрд╛рд░реА рд░рдЦреЗрдВ рдФрд░ рд╕рдорд╛рдкреНрдд рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рд╡рд╛рдкрд╕ рд▓реМрдЯреЗрдВ, рд▓реЗрдХрд┐рди рдЕрдм рдХрд╛рдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред

рдХрд╛рди рджреЛ рд╕рд░рд▓ рдЧрд▓рддрд┐рдпреЛрдВ рд╕реЗ рдмрдЪрд╛рддреЗ рд╣реИрдВ рдЬреЛ рдмрдирд╛рдиреЗ рдореЗрдВ рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реИрдВред

рддреНрд░реБрдЯрд┐ 1: рдПрдХ рд╡рд┐рд╢реЗрд╖ рдЪрд░ рдХрд╛ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдмрдВрдзрдиред

 (defparameter foo "foo!") (defun say-it () (write-line foo)) (defun say-more (foo) (say-it) (format t "now say ~A~%" foo)) 


рдЕрдм

 (say-more "bar!") 


рдЫрдк рдЬрд╛рдПрдЧрд╛

 say bar! now say bar! 


рдЙрдореНрдореАрдж рдХреЗ рдмрдЬрд╛рдп

 say foo! now say bar! 


... рдЙрдлрд╝!

рддреНрд░реБрдЯрд┐ 2: рдЯрд╛рдЗрдкреЛ рдХреЗ рдХрд╛рд░рдг, рд╕реНрдерд╛рдиреАрдп рдЪрд░ рдХреЗ рдмрдЬрд╛рдп рд╡рд┐рд╢реЗрд╖ рд╕реЗ рд░реАрдбрд┐рдВрдЧ рдмрдирд╛рдИ рдЬрд╛рддреА рд╣реИ, рдЪреЗрддрд╛рд╡рдиреА рдЬрд╛рд░реА рдирд╣реАрдВ рдХреА рдЬрд╛рддреА рд╣реИред

рдЖрдк рдЖрдорддреМрд░ рдкрд░ рдПрдХ рд╕рдВрдХрд▓рди-рд╕рдордп рдЪреЗрддрд╛рд╡рдиреА рдФрд░ рдПрдХ рд░рдирдЯрд╛рдЗрдо рддреНрд░реБрдЯрд┐ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВрдЧреЗ рдпрджрд┐

 (defun foo (bar) bat) 


рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ рд▓рд┐рдЦреЗрдВ

 (defparameter bat "baseball") 


рддрдм рдХреЛрдИ рддреНрд░реБрдЯрд┐ рдирд╣реАрдВ рд╣реЛрдЧреА рдФрд░ рдЖрдк рдмрд╣реБрдд рд╕рдордп рдбрд┐рдмрдЧрд┐рдВрдЧ рдореЗрдВ рдмрд┐рддрд╛рдПрдВрдЧреЗ, рдпрд╣ рд╕рдордЭрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВрдЧреЗ рдХрд┐ рдХреНрдпрд╛ рдЧрд▓рдд рд╣реИред

рдпрджрд┐ рдЖрдк рдЕрдкрдиреЗ рд▓рд┐рдП рдХреЛрдб рд▓рд┐рдЦрддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рд╡рд╣реА рд╣реИ рдЬреЛ рдЖрдк рдХрд╛рди рд▓рдЧрд╛рддреЗ рд╣реИрдВ рдпрд╛ рдирд╣реАрдВ, рд▓реЗрдХрд┐рди рдЬрдм рдЖрдк рдХреЛрдб рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рддреЛ * рдХрд╛рди * рдХреА рдЕрдиреБрдкрд╕реНрдерд┐рддрд┐ рдХрд╛ рдорддрд▓рдм рдЕрдиреНрдп рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдордп рдХреА рдмрд░реНрдмрд╛рджреА рд╣реИред рдХреГрдкрдпрд╛ рдРрд╕рд╛ рди рдХрд░реЗрдВ!

рдХрд╛рдиреЛрдВ рдХреА рдХрдореА рддреНрд░реБрдЯрд┐ рдХреА рднрд╛рд╡рдирд╛ рдкреИрджрд╛ рдХрд░рддреА рд╣реИ: рдЬрдм рдореИрдВ рджреЗрдЦрддрд╛ рд╣реВрдВ

 (defparameter - ...) 


рдореИрдВ рд╕рдордЭрддрд╛ рд╣реВрдВ рдХрд┐ рдЖрдкрдХреЛ рдХреЛрдб рдХреЛ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдзреНрдпрд╛рди рд╕реЗ рдкрдврд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕ рдмрд╛рдд рдХреА рдХреЛрдИ рдЧрд╛рд░рдВрдЯреА рдирд╣реАрдВ рд╣реИ рдХрд┐ рдкрд╣рд▓реА рдирдЬрд╝рд░ рд╕реЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╣рд╛рдирд┐рд░рд╣рд┐рдд рджрд┐рдЦрдиреЗ рд╡рд╛рд▓реЗ рдХреЛрдб рдкрд░ рдЧреИрд░-рд╕реНрдерд╛рдиреАрдп рджреБрд╖реНрдкреНрд░рднрд╛рд╡ рдпрд╛ рдирд┐рд░реНрднрд░рддрд╛ рдирд╣реАрдВ рд╣реЛрдЧреАред

рд╣рдореЗрд╢рд╛ * рдХрд╛рди * рд▓рдЧрд╛рдПрдВред рд╡реЗ рдХрд╣рддреЗ рд╣реИрдВ рдХрд┐ рд╕рднреА рдирд┐рдпрдореЛрдВ рдХреЗ рдЕрдкрд╡рд╛рдж рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдЗрд╕ рдирд┐рдпрдо рдХреЗ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЕрдкрд╡рд╛рдж рдХреЛ рдЦреЛрдЬрдирд╛ рдмрд╣реБрдд рдореБрд╢реНрдХрд┐рд▓ рд╣реИред

рдЕрдЪреНрдЫрд╛ рдХреЛрдб рд╣реИ
- рдирд┐рдХреЛрдбреЗрдорд╕

Source: https://habr.com/ru/post/In143618/


All Articles