MPS 2018.3: рдЬреЗрдирд░реЗрд╢рди рдкреНрд▓рд╛рди, рдЕрд╕реЗрдВрдмрд▓реА рдФрд░ рдкреИрдХреЗрдЬрд┐рдВрдЧ рд▓реИрдВрдЧреНрд╡реЗрдЬ рдореЗрдВ рд╕реБрдзрд╛рд░ рдФрд░ рдПрдбрд┐рдЯрд░ рд▓реИрдВрдЧреНрд╡реЗрдЬ рдореЗрдВ рдЕрдкрдбреЗрдЯреЗрдб рдЗрдВрдЯрд░рдлреЗрд╕

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


рдЫрд╡рд┐

рдЖрдзрд╛рд░ рднрд╛рд╖рд╛


рдЕрддрд┐рджреЗрдп / рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдЕрд╡рдзрд╛рд░рдгрд╛рдУрдВ рдХреЛ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рддреАрдХ


рдкреБрдирд░реНрдкрд░рд┐рднрд╛рд╖рд┐рдд / рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдЕрд╡рдзрд╛рд░рдгрд╛рдУрдВ рдХреЗ рдкреНрд░рддреАрдХ рдЕрд╡рдзрд╛рд░рдгрд╛рдУрдВ рдФрд░ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдЕрд╡рдзрд╛рд░рдгрд╛рдУрдВ рдХреЗ рдХреНрд╖реЗрддреНрд░реЛрдВ рдкрд░ рдкреНрд░рдХрдЯ рд╣реБрдП рд╣реИрдВ, рдЬреЛ рдмрд╛рд▓ рдЕрд╡рдзрд╛рд░рдгрд╛рдУрдВ рдХреЛ рдиреЗрд╡рд┐рдЧреЗрд╢рди рдХреЛ рд╕рд░рд▓ рдмрдирд╛рддреЗ рд╣реИрдВред


рдЫрд╡рд┐

BaseLanguage рдХрдХреНрд╖рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдХрд╕реНрдЯрдо рдкреИрдХреЗрдЬ


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


рдЫрд╡рд┐

BaseLanguage рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЗ рд▓рд┐рдП рдирдИ рдЬреЗрдирд░реЗрдЯрд░ рд╕реБрд╡рд┐рдзрд╛рдПрдБ


BaseLanguage рдХреЗ рд▓рд┐рдП, рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдЕрдХреНрд╕рд░ рдмрдирд╛рдП рдЬрд╛рддреЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдХреБрдЫ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рдЬрдирд░реЗрдЯрд░ рд▓рд┐рдЦрдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЗ рд▓рд┐рдП рдЬрдирд░реЗрдЯрд░ рд▓рд┐рдЦрдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рд╕рд░рд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдордиреЗ рдХрдИ рдирдИ рдЕрд╡рдзрд╛рд░рдгрд╛рдУрдВ рдХреЛ BaseLanguage рдореЗрдВ рдЬреЛрдбрд╝рд╛ рд╣реИред


рд▓реИрд╡рд▓реНрдпреВ рдПрдХреНрд╕рдкреНрд░реЗрд╢рдВрд╕ рдмрдирд╛рдирд╛


рдПрдХ рдЕрдВрддрд░рд╛рд▓ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдПрдХ рдЪрд░ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдЖрдк рдПрдХ рдореВрд▓реНрдп рдкрдврд╝ рдпрд╛ рд▓рд┐рдЦ тАЛтАЛрд╕рдХрддреЗ рд╣реИрдВред рдХреБрдЫ рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рд▓рд╡рд▓реНрдпреВ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдЙрддреНрдкрдиреНрди рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЙрд╕ рд╕рдВрджрд░реНрдн рдкрд░ рдирд┐рд░реНрднрд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдПрдХ рдирдИ рд╕рд╣рд╛рдпрдХ рдЕрд╡рдзрд╛рд░рдгрд╛, generic lvalue-expression рдЬрдирд░реЗрдЯрд░ рдХреЛ рд╕рд░рд▓ рдХрд░реЗрдЧрд╛ рдФрд░ рдЗрд╕реЗ рд╕рдВрджрд░реНрдн-рд╕реНрд╡рддрдВрддреНрд░ рдмрдирд╛ рджреЗрдЧрд╛ред


рдЫрд╡рд┐

рд▓рд┐рдВрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП Lvalue рднрд╛рд╡ рдкрд░рд┐рд╡рд░реНрддрд┐рдд


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


рдирдП рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ, рдЖрдк @byRef рдХреЗ рд╕рд╛рде рдХрд┐рд╕реА рднреА Lvalue рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреЛ рд▓рдкреЗрдЯ рд╕рдХрддреЗ рд╣реИрдВред BaseLanguage рдЬрдирд░реЗрдЯрд░ рд▓рд┐рдкрдЯреЗ рд╣реБрдП рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреЛ рдкреНрд░рдХрд╛рд░ рдХреЗ Reference<T> рдХреА рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рд▓рд┐рдкрдЯреЗ рд╣реБрдП рдЪрд░ рдХреЗ рд▓рд┐рдП рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдФрд░ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред


рдЫрд╡рд┐

рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ рдирдИ рдЕрд╡рдзрд╛рд░рдгрд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдкрдврд╝реЗрдВред


рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди


MPS рдХреЗ рдирдП рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ, рдЖрдк BaseLanguage рдЗрдВрдЯрд░рдлреЗрд╕ рдореЗрдВ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рддрд░реАрдХреЗ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХреАрд╡рд░реНрдб DefaultModifier рдЕрд╡рдзрд╛рд░рдгрд╛, рд╕рдВрд╢реЛрдзрдХ рдЕрд╡рдзрд╛рд░рдгрд╛ рдХреЗ рд╡рд┐рд╕реНрддрд╛рд░ рджреНрд╡рд╛рд░рд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред DefaultModifier jetbrains.mps.baseLanguage.jdk8 рднрд╛рд╖рд╛ рдореЗрдВ рдирд┐рд╣рд┐рдд рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдореЗрдВ рдПрдХ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╡рд┐рдзрд┐ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, jdk8 рднрд╛рд╖рд╛ рдЖрдпрд╛рдд рдХрд░реЗрдВред


рдЫрд╡рд┐

рдЬрдирдХ


рдЬрдирд░реЗрдЯрд░ рднрд╛рд╖рд╛ (рдореЙрдбрд▓ рдкрд░рд┐рд╡рд░реНрддрди рднрд╛рд╖рд╛)


рд╣рдордиреЗ $ CALL $ рдХреЗ рд╕рд╛рде рдЗрд╕рдХреЗ рдЙрдкрдпреЛрдЧ рдХреА рдЬрдЧрд╣, рдореИрдХреНрд░реЛ $ INCLUDE $ рдХреЛ рд╣рдЯрд╛ рджрд┐рдпрд╛ред рдЙрдкрдпреБрдХреНрдд рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдЖрдкрдХреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛ред рдореИрдХреНрд░реЛ $ INCLUDE $ рддрд░реНрдХреЛрдВ рдХреЗ рд╕рд╛рде рдЯреЗрдореНрдкрд▓реЗрдЯреНрд╕ рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рджреЛ рд╕рдорд╛рди рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдореИрдХреНрд░реЛрдЬрд╝ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рднрд╛рд╖рд╛ рдХреЛ рдЬрдЯрд┐рд▓ рдмрдирд╛рддреА рд╣реИред


рдореИрдХреНрд░реЛ $ WEAVE $ рдФрд░ рдмреБрдирд╛рдИ рдирд┐рдпрдо рдЕрдм рддрд░реНрдХреЛрдВ рдХреЗ рд╕рд╛рде рдкреИрдЯрд░реНрди рдХреЛ рдХреЙрд▓ рдХрд░рдирд╛ рд╕реАрдЦ рдЧрдП рд╣реИрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╣рдордиреЗ рдПрдХ рдЕрдкреНрд░рд┐рдп рддрдп рдХрд┐рдпрд╛, рдпрджреНрдпрдкрд┐ рдмрд╣реБрдд рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рджреЛрд╖ рдирд╣реАрдВ рд╣реИ рдЬреЛ рд╕рдВрдХрд▓рд┐рдд рдФрд░ рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХрд┐рдП рдЧрдП рдЯреЗрдореНрдкрд▓реЗрдЯреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рд╣реЛрддрд╛ рд╣реИред рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХрд┐рдП рдЧрдП рдХреЛрдб рд╕реЗ рдмрд╛рд╣рд░реА рдЯреЗрдореНрдкрд▓реЗрдЯ рдХрд╛ "рдкрд░рд┐рдЪрдп" (рдмреБрдирд╛рдИ) рд╣рдореЗрд╢рд╛ рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХреА рдУрд░ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдм рд╕рдВрдХрд▓рд┐рдд рдЯреЗрдореНрдкрд▓реЗрдЯ рдХрд╛рдо рдХрд░реЗрдЧрд╛ (рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рд╕рдВрдХрд▓рд┐рдд рдЯреЗрдореНрдкрд▓реЗрдЯреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдЬрдирд░реЗрдЯрд░ рдЧреБрдгреЛрдВ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИ)ред рдЗрд╕реА рддрд░рд╣, рд╕рдВрдХрд▓рд┐рдд рдПрдХ рдХрд╛рдо рд╕реЗ рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХрд┐рдП рдЧрдП рдмрд╛рд╣рд░реА рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреЗ "рдмреБрдирд╛рдИ"ред


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


рдпреВрдЖрдИ / рдпреВрдПрдХреНрд╕ рддрддреНрд╡


рдореИрдХрдмреБрдХ рдЯрдЪрдмрд╛рд░ рд╕рдкреЛрд░реНрдЯ


рдПрдХ рдЯрдЪрдмрд╛рд░ рдХреЗ рд╕рд╛рде рдореИрдХрдмреБрдХ рдХреЗ рдорд╛рд▓рд┐рдХ рдЕрдм рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдПрдордкреАрдПрд╕ рдореЗрдВ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ: рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЯрдЪрдмрд╛рд░ рд╕реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рд▓реЙрдиреНрдЪ рдХрд░рдиреЗ, рдмрдирд╛рдиреЗ рдФрд░ рдбрд┐рдмрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХрд░реЗрдВ, рд╕рд╛рде рд╣реА рд╕рд╛рде рдПрдХ рд░рди / рдбрд┐рдмрдЧ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ рдпрд╛ рдПрдХ рдирдпрд╛ рдмрдирд╛рдПрдВред рдЯрдЪрдмрд╛рд░ рдирд┐рдпрдВрддреНрд░рдг рд╕реЗрдЯрд┐рдВрдЧреНрд╕ / рд╡рд░реАрдпрддрд╛рдПрдБ рдкрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ | рд╕реВрд░рдд рдФрд░ рд╡реНрдпрд╡рд╣рд╛рд░ | рдореЗрдиреВ рдФрд░ рдЯреВрд▓рдмрд╛рд░ред


рдФрд░ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рдЯрдЪрдмрд╛рд░ рдХреА рдХреНрд╖рдорддрд╛рдУрдВ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ! рдмрд╕ рдЗрдЪреНрдЫрд┐рдд рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХреЛ рд╕рдВрдмрдВрдзрд┐рдд InterfaceGroup ред


рдЫрд╡рд┐

рдЙрдЪреНрдЪ рд╡рд┐рдкрд░реАрдд рд╡рд┐рд╖рдп


рдЗрдВрдЯреЗрд▓реАрдЬ рдкреНрд▓реЗрдЯрдлрд╛рд░реНрдо рдХреА рддрд░рд╣, рдПрдордкреАрдПрд╕ рдореЗрдВ рдПрдХ рдирдпрд╛ рдЙрдЪреНрдЪ-рд╡рд┐рдкрд░реАрдд рдереАрдо рд╣реИред рдЗрд╕реЗ рд╕реЗрдЯрд┐рдВрдЧ / рд╡рд░реАрдпрддрд╛рдПрдБ -> рдЙрдкрд╕реНрдерд┐рддрд┐ рдФрд░ рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ рд╕рдХреНрд╖рдо рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред


рдЫрд╡рд┐

рдкрджрд╛рд╡рдирдд рдХреЛрдб рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдХрд░рдг


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


рдЫрд╡рд┐

рдУрд╡рд░рд░рд╛рдЗрдб / рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рд╡реНрдпрд╡рд╣рд╛рд░ рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЛ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рддреАрдХ


рд╡реНрдпрд╡рд╣рд╛рд░ рдХрдХреНрд╖рд╛рдУрдВ рдХреЗ рдХреНрд╖реЗрддреНрд░реЛрдВ рдореЗрдВ, рд╣рдордиреЗ рдУрд╡рд░рд░рд╛рдЗрдб / рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рд╡реНрдпрд╡рд╣рд╛рд░ рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЛ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдЗрдХрди рдЬреЛрдбрд╝реЗред рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд getPresentation () рд╡рд┐рдзрд┐рдпреЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рд╣реИ рдЬреЛ рдЪрдпрдирд┐рдд рд╡рд┐рдзрд┐ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдпрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд░рддреА рд╣реИред рд╕реВрдЪреА рд╕реЗ, рдЖрдк рдЖрд╕рд╛рдиреА рд╕реЗ рдЗрдирдореЗрдВ рд╕реЗ рдХрд┐рд╕реА рднреА рд╡рд┐рдзрд┐ рдкрд░ рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВред


рдЫрд╡рд┐

рдУрд╡рд░рд░рд╛рдЗрдбрд┐рдВрдЧ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреЙрдк-рдЕрдк рдПрдиреНрд╣рд╛рдВрд╕рдореЗрдВрдЯ


рдУрд╡рд░рд░рд╛рдЗрдб / рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдЕрд╡рдзрд╛рд░рдгрд╛рдУрдВ / рд╡рд░реНрдЧреЛрдВ / рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЗ рдкреЙрдк-рдЕрдк рдЕрддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ рд╣реЛ рдЧрдП рд╣реИрдВред рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ MPS рдкреГрд╖реНрдарднреВрдорд┐ рдореЗрдВ рдПрдХ рдкреЙрдкрдЕрдк рдореЗрдВ рдЦреЛрдЬ рдкрд░рд┐рдгрд╛рдо рдЬреЛрдбрд╝ рджреЗрдЧрд╛ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЕрдм рдЖрдк рдСрдмреНрдЬреЗрдХреНрдЯ рдирд╛рдо рд╕реЗ рдЦреЛрдЬ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред


рдЫрд╡рд┐

рдЦреЛрдЬрдХ рдкрд░рд┐рд╡рд░реНрддрди


рдЗрд╕ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ, рд╣рдордиреЗ рдЦреЛрдЬрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдЕрдкрдбреЗрдЯ рдФрд░ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд┐рдпрд╛ рд╣реИред рдЦреЛрдЬрдХ рдХреЗ рдЕрддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рд▓рд┐рдП, рд╡рд┐рд╢реЗрд╖ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ OnEachNodeFoundByExpression рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, рдЬреЛ рдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рдЬреНрдЮрд╛рдд рдиреЛрдб рдХреЗ рд▓рд┐рдП рдХреЙрд▓рдмреИрдХ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд╕рд╛рде рдЦреЛрдЬрдХ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд░рд▓ рдХреЙрд▓ рд╣реИред


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


рдЫрд╡рд┐

рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рдирд╛


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


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


рдЫрд╡рд┐

рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдФрд░ рдкреИрдХреЗрдЬрд┐рдВрдЧ рднрд╛рд╖рд╛


рдпреБрдХреНрддрд┐рдпрд╛рдБ рдФрд░ рдЪрд╛рд▓реЗрдВ


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


рдЫрд╡рд┐

рдпреБрдХреНрддрд┐рдпрд╛рдБ рдФрд░ рдЪрд╛рд▓реЗрдВ рд╡рд┐рд╡рд░рдг рднрд╛рд╖рд╛


рд╕рдорд╛рдзрд╛рди рдореЙрдбреНрдпреВрд▓ рд╕реЗ рдПрдХ рдирд┐рд░реНрдорд╛рдг рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдпреБрдХреНрддрд┐рдпреЛрдВ рдФрд░ рдЯреНрд░рд┐рдХреНрд╕ рдХреЛ рдЖрдпрд╛рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдПрдХ рд╕рдорд╛рдзрд╛рди рдмрдирд╛рдПрдВ рдФрд░ рднрд╛рд╖рд╛рдУрдВ рдХреЛ рдЖрдпрд╛рдд рдХрд░реЗрдВ jetbrains.mps.build.tips рдФрд░ jetbrains.mps.core.xmlред рдлрд┐рд░ MPSTipsAndTricks рдЕрд╡рдзрд╛рд░рдгрд╛ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдмрдирд╛рдПрдВ рдФрд░ рдЗрд╕рдореЗрдВ рдЕрдкрдиреА рдпреБрдХреНрддрд┐рдпреЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░реЗрдВред рдкреНрд░рддреНрдпреЗрдХ рдЯрд┐рдк HTML рдкрд╛рда рд╣реИ рдФрд░ рдЗрд╕рдореЗрдВ рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рдЪрд┐рддреНрд░ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред


рдЫрд╡рд┐

рдкреИрдХрд┐рдВрдЧ рдХреЗ рддрд░реАрдХреЗ


рд╣рдордиреЗ рдХрд╕реНрдЯрдо рдкреИрдХреЗрдЬрд┐рдВрдЧ рдХреЛ BuildMps_IdeaPlugin рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд┐рдпрд╛ред рдЗрд╕рдХреЗ рдмрдЬрд╛рдп, BuildMpsLayout_Plugin рдирд┐рд░реНрдорд╛рдг рдореЗрдВ рдкреИрдХреЗрдЬрд┐рдВрдЧ рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред


рдСрдЯреЛ рдкреИрдХреЗрдЬрд┐рдВрдЧ рдЕрд╕реЗрдВрдмрд▓реА рд╡рд┐рдзрд┐ рднрд╛рд╖рд╛ рдФрд░ рд╕рдорд╛рдзрд╛рди рдкреНрд░рдХрд╛рд░ рдХреЗ рд╕рднреА рдореЙрдбреНрдпреВрд▓ рдкреНрд▓рдЧ-рдЗрди рд░реВрдЯ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдХреЗ 'рднрд╛рд╖рд╛рдУрдВ' рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд░рдЦрддреА рд╣реИ, рдФрд░ рдореИрдиреБрдЕрд▓ рдкреИрдХреЗрдЬрд┐рдВрдЧ рд╡рд┐рдХрд▓реНрдк рдбреЗрд╡рд▓рдкрд░ рдХреЛ рдкреНрд▓рдЧ-рдЗрди рд╕рдВрд░рдЪрдирд╛ рдХреЛ рд╕реНрд╡рддрдВрддреНрд░ рд░реВрдк рд╕реЗ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред


рдЫрд╡рд┐

рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдФрд░ рдкреИрдХреЗрдЬрд┐рдВрдЧ рднрд╛рд╖рд╛ рдХрд╛ рдирдпрд╛ рдбрд┐рдЬрд╛рдЗрди


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


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


рдЫрд╡рд┐

рд╕рдВрдкрд╛рджрдХ


рд╕реЗрд▓ рдПрдХреНрд╢рди рдореИрдкреНрд╕ рдХрд╛ рдкреБрдирдГ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ


рдореМрдЬреВрджрд╛ рдХрд╛рд░реНрд░рд╡рд╛рдИ рдорд╛рдирдЪрд┐рддреНрд░ рд╕реЗ рд╕реЗрд▓ рдПрдХреНрд╢рди рдореИрдк рддрддреНрд╡реЛрдВ рдХреЛ рдЖрдпрд╛рдд рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреБрди: рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред


рдЫрд╡рд┐

рдЕрдиреНрдп рд╕реБрдзрд╛рд░


рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдВрдХрд▓рд┐рдд рдбреЗрдЯрд╛рдЯрд┐рдкреНрд╕


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


рдПрдиреЛрдЯреЗрд╢рди рдореЗрдВ рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдбреЗрдЯрд╛ рдХреА рдмрдЪрдд


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


рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдиреЛрдбреНрд╕ рдмрдирд╛рдиреЗ рд╡рд╛рд▓реА рдорд╛рдЗрдЧреНрд░реЗрд╢рди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ, рдЖрдкрдХреЛ рдЗрд╕ рддрд░рд╣ рдХреЗ рдиреЛрдбреНрд╕ рдХреА рдЕрд╡рдзрд╛рд░рдгрд╛ рдХреЛ рдШреЛрд╖рд┐рдд рдХрд░рдиреЗ рдФрд░ рдореЙрдбрд▓ рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдПрдиреЛрдЯреЗрд╢рди рдбрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдкреБрдЯреНрдЯрд╛рдЯрд╛ () рдирд┐рд░реНрдорд╛рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:


рдЫрд╡рд┐

рдбреЗрдЯрд╛ рд╡рд╛рд▓реЗ рдиреЛрдбреНрд╕ рдХреЛ рдкреБрдирдГ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдкрд╣рд▓реЗ рдЬреИрд╕рд╛ рд╣реИ:


рдЫрд╡рд┐

рд╕рдВрдШрд░реНрд╖ рд╕рдорд╛рдзрд╛рди рд╕рдВрд╡рд╛рдж рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди


рдкрд╣рд▓реЗ, рдПрдХ рд╕рдВрдШрд░реНрд╖ рдореЗрдВ, рдкрд░рд┐рд╡рд░реНрддрди рдХреЗрд╡рд▓ рдПрдХ рддрд░рдл рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рдерд╛ред рд▓реЗрдХрд┐рди рдХрднреА-рдХрднреА рдЕрдиреНрдп рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рди рдЦреЛрдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред


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


рд╕рдВрдШрд░реНрд╖ рдХреЗ рдмрд╛рдИрдВ рдУрд░ рдкрд░рд┐рд╡рд░реНрддрди рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдк рджрд╛рдИрдВ рдУрд░ рдХреА рд░реЗрдЦрд╛ рдХреЛ рд▓рд╛рдЧреВ рдпрд╛ рдЕрдирджреЗрдЦрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:


рдЫрд╡рд┐

рдЖрдк рдпрд╣рд╛рдВ рдирдпрд╛ рд╕рдВрд╕реНрдХрд░рдг рдбрд╛рдЙрдирд▓реЛрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ , рд╣рдореЗрдВ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпрд╣ рдЖрдкрдХреЛ рдкреНрд░рд╕рдиреНрди рдХрд░реЗрдЧрд╛ред рдХрд┐рд╕реА рднреА рдорд╛рдорд▓реЗ рдореЗрдВ, рд╣рдо рдЖрдкрдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░реЗрдВрдЧреЗ! рдЗрд╕ рдкреЗрдЬ рдкрд░ рдлрд┐рдХреНрд╕ рдХреА рдкреВрд░реА рд╕реВрдЪреА рдЙрдкрд▓рдмреНрдз рд╣реИред рдХреГрдкрдпрд╛ рд╣рдореЗрдВ рдЯреНрд░реИрдХрд░ рдореЗрдВ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдмрддрд╛рдПрдВ ред


рдЖрдкрдХреА JetBrains MPS рдЯреАрдо
рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбреНрд░рд╛рдЗрд╡

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


All Articles