рдЫ рдорд╣рд┐рдирд╛рдХреЛ рд╡рд┐рдХрд╛рд╕ рдкрдЫрд┐, рд╕рдореБрджрд╛рдпрдХреЛ рд╕рд╣рднрд╛рдЧрд┐рддрд╛рдорд╛ рдЧреБрдЧрд▓рджреНрд╡рд╛рд░рд╛ рд╡рд┐рдХрд╕рд┐рдд рдЧреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдЩ рднрд╛рд╖рд╛, рд╕рдВрд╕реНрдХрд░рдг рез.реирек рдХреЛ рд░реВрдкрдорд╛ рдЬрд╛рд░реА рдЧрд░рд┐рдПрдХреЛ рдЫред рдпреЛ рднрд╛рд╖рд╛рд▓реЗ рдХрдореНрдкрд╛рдЗрд▓ рдЧрд░рд┐рдПрдХрд╛ рднрд╛рд╖рд╛рд╣рд░реВрдХреЛ рдЙрдЪреНрдЪ рдкреНрд░рджрд░реНрд╢рдирд▓рд╛рдИ рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдЩ рднрд╛рд╖рд╛рд╣рд░реВрдХреЛ рдлрд╛рдЗрджрд╛рд╣рд░реВ рдЬрд╕реНрддреИ рдХреЛрдб рд▓реЗрдЦреНрди рд╕рдЬрд┐рд▓реЛ, рдЙрдЪреНрдЪ рд╡рд┐рдХрд╛рд╕ рдЧрддрд┐, рд░ рддреНрд░реБрдЯрд┐ рд╕реБрд░рдХреНрд╖рд╛рд╕рдБрдЧ рдЬреЛрдбреНрджрдЫред рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛрдб BSD рд▓рд╛рдЗрд╕реЗрдиреНрд╕ рдЕрдиреНрддрд░реНрдЧрдд рд╡рд┐рддрд░рдг рдЧрд░рд┐рдПрдХреЛ рдЫред
рдЧреЛрдХреЛ рд╕рд┐рдиреНрдЯреНрдпрд╛рдХреНрд╕ рдУрдмреЗрд░реЛрди рднрд╛рд╖рд╛рдмрд╛рдЯ рдХреЗрд╣реА рдЙрдзрд╛рд░реЛрдХреЛ рд╕рд╛рде рд╕реА рднрд╛рд╖рд╛рдХреЛ рдкрд░рд┐рдЪрд┐рдд рддрддреНрд╡рд╣рд░реВрдорд╛ рдЖрдзрд╛рд░рд┐рдд рдЫред рднрд╛рд╖рд╛ рдПрдХрджрдо рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдЫ, рддрд░ рдХреЛрдб рдкрдвреНрди рд░ рдмреБрдЭреНрди рд╕рдЬрд┐рд▓реЛ рдЫред рдЧреЛ рдХреЛрдб рдЫреБрдЯреНрдЯреИ рдмрд╛рдЗрдирд░реА рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирдпреЛрдЧреНрдп рдлрд╛рдЗрд▓рд╣рд░реВрдорд╛ рдХрдореНрдкрд╛рдЗрд▓ рдЧрд░рд┐рдПрдХреЛ рдЫ рдЬреБрди рдиреЗрдЯрд┐рдн рд░реВрдкрдорд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдЧрд░рд┐рдиреНрдЫ, рднрд░реНрдЪреБрдЕрд▓ рдореЗрд╕рд┐рди рдкреНрд░рдпреЛрдЧ рдирдЧрд░реА (рдкреНрд░реЛрдлрд╛рдЗрд▓рд┐рдЩ, рдбрд┐рдмрдЧрд┐рдЩ рдореЛрдбреНрдпреБрд▓рд╣рд░реВ рд░ рдЕрдиреНрдп рд░рдирдЯрд╛рдЗрдо рд╕рдорд╕реНрдпрд╛ рдкрддреНрддрд╛ рд▓рдЧрд╛рдЙрдиреЗ рдЙрдкрдкреНрд░рдгрд╛рд▓реАрд╣рд░реВ рд░рдирдЯрд╛рдЗрдо рдХрдореНрдкреЛрдиреЗрдиреНрдЯрд╣рд░реВрдХрд╛ рд░реВрдкрдорд╛ рдПрдХреАрдХреГрдд рд╣реБрдиреНрдЫрдиреН), рдЬрд╕рд▓реЗ C рдХрд╛рд░реНрдпрдХреНрд░рдорд╣рд░реВрд╕рдБрдЧ рддреБрд▓рдирд╛рддреНрдордХ рдХрд╛рд░реНрдпрд╕рдореНрдкрд╛рджрдирдХреЛ рд▓рд╛рдЧрд┐ рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред
рдпреЛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕реБрд░реБрдорд╛ рдмрд╣реБ-рдереНрд░реЗрдбреЗрдб рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдЩ рд░ рдмрд╣реБ-рдХреЛрд░ рдкреНрд░рдгрд╛рд▓реАрд╣рд░реВрдорд╛ рдХреБрд╢рд▓ рд╕рдЮреНрдЪрд╛рд▓рдирд▓рд╛рдИ рдзреНрдпрд╛рдирдорд╛ рд░рд╛рдЦреЗрд░ рд╡рд┐рдХрд╕рд┐рдд рдЧрд░рд┐рдПрдХреЛ рд╣реЛред рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рдЕрдкрд░реЗрдЯрд░ рд╕реНрддрд░рдорд╛, рд╕рдорд╛рдирд╛рдиреНрддрд░ рдЧрдгрдирд╛рд╣рд░реВ рд░ рд╕рдорд╛рдирд╛рдиреНрддрд░ рд╡рд┐рдзрд┐рд╣рд░реВ рдмреАрдЪрдХреЛ рдЕрдиреНрддрд░рдХреНрд░рд┐рдпрд╛ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдЧрд░реНрди рдЙрдкрдХрд░рдгрд╣рд░реВ рд▓рд╛рдЧреВ рдЧрд░рд┐рдиреНрдЫред рднрд╛рд╖рд╛рд▓реЗ рдирд┐рд░реНрдорд┐рдд рдмрдлрд░ рдУрднрд░рд░рди рд╕реБрд░рдХреНрд╖рд╛ рд░ рдлреЛрд╣реЛрд░ рд╕рдЩреНрдХрд▓рди рдХреНрд╖рдорддрд╛рд╣рд░реВ рдкрдирд┐ рдкреНрд░рджрд╛рди рдЧрд░реНрджрдЫред
рдирдпрд╛рдБ рд░рд┐рд▓реАрдЬрдорд╛ рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВ рдордзреНрдпреЗ:
- "greenteagc" рдлреЛрд╣реЛрд░ рд╕рдЩреНрдХрд▓рдирдХрд░реНрддрд╛, рд╕рд╛рдирд╛ рд╡рд╕реНрддреБрд╣рд░реВ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдиреЗ рд░ рд╕реНрдХреНрдпрд╛рди рдЧрд░реНрдиреЗ рдХрд╛рд░реНрдпрд╕рдореНрдкрд╛рджрди рд╕реБрдзрд╛рд░ рдЧрд░реНрди рдбрд┐рдЬрд╛рдЗрди рдЧрд░рд┐рдПрдХреЛ, рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд░реВрдкрдорд╛ рд╕рдХреНрд╖рдо рдкрд╛рд░рд┐рдПрдХреЛ рдЫред рдлреЛрд╣реЛрд░ рд╕рдЩреНрдХрд▓рдирдХреЛ рдЕрддреНрдпрдзрд┐рдХ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВрд▓реЗ "greenteagc" рдкреНрд░рдпреЛрдЧ рдЧрд░реНрджрд╛ рдлреЛрд╣реЛрд░ рд╕рдЩреНрдХрд▓рди рдУрднрд░рд╣реЗрдбрдорд╛ резреж-рекреж% рдХрдореА рджреЗрдЦреЗрдХрд╛ рдЫрдиреНред
- рдирдпрд╛рдБ рдЪрд░рд╣рд░реВ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрди рдбрд┐рдЬрд╛рдЗрди рдЧрд░рд┐рдПрдХреЛ рдирд┐рд░реНрдорд┐рдд new() рдкреНрд░рдХрд╛рд░реНрдпрд▓реЗ рдЕрдм рддрдкрд╛рдИрдВрд▓рд╛рдИ рдЪрд░рдХреЛ рдкреНрд░рд╛рд░рдореНрднрд┐рдХ рдорд╛рди рдирд┐рд░реНрдзрд╛рд░рдг рдЧрд░реНрдиреЗ рдЕрдкрд░реЗрдиреНрдбрдХреЛ рд░реВрдкрдорд╛ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рдХреЛрдб x := int64(300) ptr := &x рдХреЛ рд╕рдЯреНрдЯрд╛, рддрдкрд╛рдИрдВ рдЕрдм рд▓реЗрдЦреНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ: ptr := new(int64(300))
- рдЬреЗрдиреЗрд░рд┐рдХ рдкреНрд░рдХрд╛рд░рд╣рд░реВрд▓рд╛рдИ рдкреНрд░рдХрд╛рд░рдХреЛ рдЖрдлреНрдиреИ рдкреНрдпрд╛рд░рд╛рдорд┐рдЯрд░ рд╕реВрдЪреАрдорд╛ рдЖрд░реНрдЧреБрдореЗрдиреНрдЯрдХреЛ рд░реВрдкрдорд╛ рдЖрдлреВрд▓рд╛рдИ рд╕рдиреНрджрд░реНрдн рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдЗрдиреНрдЫ (рддрдкрд╛рдИрдВрд▓реЗ рдкреНрд░рдХрд╛рд░рд▓рд╛рдИ рдпрд╕рдХреЛ рдЖрдлреНрдиреИ рдкреНрдпрд╛рд░рд╛рдорд┐рдЯрд░рдорд╛ рдкрд╛рд╕ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ)ред рддрд▓рдХреЛ рдЙрджрд╛рд╣рд░рдгрдХреЛ рдкрд╣рд┐рд▓реЛ рдкрдЩреНрдХреНрддрд┐рдорд╛, рдПрдбрд░рдХреЛ рдЖрдлреИрдВрдорд╛ рд╕рдиреНрджрд░реНрднрд▓реЗ рдЕрдм рддреНрд░реБрдЯрд┐ рдЙрддреНрдкрдиреНрди рдЧрд░реНрджреИрди: рдкреНрд░рдХрд╛рд░ Adder[A Adder[A]] interface { Add(A) A } func algo[A Adder[A]](x, y A) A { return x.Add(y) }
- cgo рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ Go рдХреЛрдбрдмрд╛рдЯ C рдлрдВрдХреНрд╢рдирд╣рд░реВ рдХрд▓ рдЧрд░реНрджрд╛ рд▓рд╛рдЧреНрдиреЗ рдУрднрд░рд╣реЗрдб рд▓рдЧрднрдЧ рейреж% рд▓реЗ рдШрдЯреЗрдХреЛ рдЫред
- ремрек-рдмрд┐рдЯ рдкреНрд▓реЗрдЯрдлрд░реНрдорд╣рд░реВрдорд╛ рд░рдирдЯрд╛рдЗрдорд▓реЗ рд╕реНрдЯрд╛рд░реНрдЯрдЕрдкрдорд╛ рдареЗрдЧрд╛рдирд╛ рд╕реНрдкреЗрд╕ рдЕрдирд┐рдпрдорд┐рддрддрд╛ рд▓рд╛рдЧреВ рдЧрд░реНрджрдЫ, рдЬрд╕рд▓реЗ cgo рдорд╛рд░реНрдлрдд рдкрд╣реБрдБрдЪ рдЧрд░рд┐рдПрдХреЛ C рдХреЛрдбрдорд╛ рдХрдордЬреЛрд░реАрд╣рд░реВрдХреЛ рд╢реЛрд╖рдг рдЧрд░реНрдиреЗ рдкреНрд░рдпрд╛рд╕ рдЧрд░реНрджрд╛ рдореЗрдореЛрд░реА рдареЗрдЧрд╛рдирд╛ рднрд╡рд┐рд╖реНрдпрд╡рд╛рдгреАрд▓рд╛рдИ рдЬрдЯрд┐рд▓ рдмрдирд╛рдЙрдБрдЫред рдЕрдирд┐рдпрдорд┐рддрддрд╛ рдЕрд╕рдХреНрд╖рдо рдкрд╛рд░реНрди "GOEXPERIMENT=norandomizedheapbase64" рд╡рд┐рдХрд▓реНрдк рдЙрдкрд▓рдмреНрдз рдЫред
- рдХрдореНрдкрд╛рдЗрд▓рд░рд▓реЗ рд╣рд┐рдкрдХреЛ рд╕рдЯреНрдЯрд╛ рд╕реНрдЯреНрдпрд╛рдХрдорд╛ рд╕реНрд▓рд╛рдЗрд╕рд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдореЗрдореЛрд░реА рдЖрд╡рдВрдЯрд┐рдд рдЧрд░реНрдиреЗ рдкрд░рд┐рд╕реНрдерд┐рддрд┐рд╣рд░реВрдХреЛ рд╕рдВрдЦреНрдпрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдЧрд░рд┐рдПрдХреЛ рдЫ, рдЬрд╕рд▓реЗ рдХрд╛рд░реНрдпрд╕рдореНрдкрд╛рджрдирдорд╛ рд╕рдХрд╛рд░рд╛рддреНрдордХ рдкреНрд░рднрд╛рд╡ рдкрд╛рд░реНрдЫред
- "рдЧреЛ рдлрд┐рдХреНрд╕" рдЖрджреЗрд╢ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдкреНрдпрд╛рдХреЗрдЬ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рдкреВрд░реНрдг рд░реВрдкрдорд╛ рдкреБрди: рд▓реЗрдЦрд┐рдПрдХреЛ рдЫ, рдЬрд╕рд▓реЗ рддрдереНрдпрд╛рдЩреНрдХреАрдп рдХреЛрдб рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдкреНрд░рджрд╛рди рдЧрд░реНрджрдЫред рдЖрдзреБрдирд┐рдХреАрдХрд░рдг рдкреНрдпрд╛рдХреЗрдЬрдорд╛ рдЙрдкрд▓рдмреНрдз рд╡рд┐рд╢реНрд▓реЗрд╖рдХрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдерди рдердкрд┐рдПрдХреЛ рдЫ, рдЬрд╕рд▓реЗ рдирдпрд╛рдБ рднрд╛рд╖рд╛ рд░ рдорд╛рдирдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВрдорд╛ рдЖрдзрд╛рд░рд┐рдд рдХреЛрдб рд╕рд░рд▓реАрдХрд░рдгрд╣рд░реВ рд╕реБрдЭрд╛рд╡ рджрд┐рдиреНрдЫред "//go:fix inline" рдирд┐рд░реНрджреЗрд╢рдирд▓реЗ рдЪрд┐рдиреНрд╣ рд▓рдЧрд╛рдЗрдПрдХрд╛ рд╕рдмреИ рдкреНрд░рдХрд╛рд░реНрдп рдХрд▓рд╣рд░реВрдХреЛ рдЗрдирд▓рд╛рдЗрди рд╡рд┐рд╕реНрддрд╛рд░рдХреЛ рд▓рд╛рдЧрд┐ "рдЗрдирд▓рд╛рдЗрди" рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рдердкрд┐рдПрдХреЛ рдЫред
- рдирдпрд╛рдБ рдкреНрдпрд╛рдХреЗрдЬрд╣рд░реВ crypto/hpke (HPKE тАФ рд╣рд╛рдЗрдмреНрд░рд┐рдб рдкрдмреНрд▓рд┐рдХ рдХреБрдЮреНрдЬреА рдЗрдиреНрдХреНрд░рд┐рдкреНрд╢рди рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди), crypto/mlkem/mlkemtest рд░ testing/cryptotest рдердкрд┐рдПрдХрд╛ рдЫрдиреНред
- AMD64 рдкреНрд░рдгрд╛рд▓реАрд╣рд░реВрдорд╛ SIMD рдирд┐рд░реНрджреЗрд╢рдирд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рднреЗрдХреНрдЯрд░ рд╕рдЮреНрдЪрд╛рд▓рдирд╣рд░реВ рдкреНрд░рджрд░реНрд╢рди рдЧрд░реНрди рдХрдо-рд╕реНрддрд░рдХреЛ рдкрд╣реБрдБрдЪ рдкреНрд░рджрд╛рди рдЧрд░реНрдиреЗ рдкреНрд░рдпреЛрдЧрд╛рддреНрдордХ simd/archsimd рдкреНрдпрд╛рдХреЗрдЬ рдердкрд┐рдпреЛред
- рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдкреНрд░рдХрд╛рд░реНрдпрдХреЛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирдХреЛ рдХреНрд░рдордорд╛ рдЖрд╡рдВрдЯрд┐рдд рдЕрд╕реНрдерд╛рдпреА рдореЗрдореЛрд░реА рд╕реБрд░рдХреНрд╖рд┐рдд рд░реВрдкрдорд╛ рдЦрд╛рд▓реА рдЧрд░реНрди (рд╢реВрдиреНрдп) рдкреНрд░рдпреЛрдЧрд╛рддреНрдордХ рд░рдирдЯрд╛рдЗрдо/рдЧреЛрдкреНрдп рдкреНрдпрд╛рдХреЗрдЬ рдердкрд┐рдпреЛред
- рдЧреЛрд░реЛрдЯрд┐рди рдЪреБрд╣рд╛рд╡рдЯ рдкрддреНрддрд╛ рд▓рдЧрд╛рдЙрдирдХреЛ рд▓рд╛рдЧрд┐ рд░рдирдЯрд╛рдЗрдо/рдкреАрдкреНрд░реЛрдл рдкреНрдпрд╛рдХреЗрдЬрдорд╛ рдПрдЙрдЯрд╛ рдкреНрд░рдпреЛрдЧрд╛рддреНрдордХ рдкреНрд░реЛрдлрд╛рдЗрд▓, рдЧреЛрд░реЛрдЯрд┐рдирд▓рд┐рдХ рдердкрд┐рдПрдХреЛ рдЫред
рд╕реНрд░реЛрдд: opennet.ru
