Π£ Π½Π°Ρ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΠΎ ΠΠ»Π΅Π³ Π¨Π΅Π»Π°Π΅Π² β Π‘ΡΠΏΠ΅ΡΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ, partial evaluation, ΠΏΡΠΎΠ΅ΠΊΡΠΈΠΈ Π€ΡΡΠ°ΠΌΡΡΡ ΠΈ ΠΊΠ°ΠΊ GraalVM ΡΠΏΠ°ΡΠ΅Ρ ΠΌΠΈΡ ΠΈΠ»ΠΈ ΡΠΊΠ°ΡΠ°ΡΡ Π² ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΌ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΠΌ ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅, Π²ΠΈΠ΄Π΅ΠΎ ΠΊΠΎΡΠΎΡΠΎΠ΅ Π±ΡΠ»ΠΎ Π·Π°Π³ΡΡΠΆΠ΅Π½ΠΎ Π½Π° ΡΡΡΠ±. ΠΠ»Ρ Π·Π°Π³ΡΡΠ·ΠΊΠΈ Π²ΡΠ±Π΅ΡΠΈΡΠ΅ Π²Π°ΡΠΈΠ°Π½Ρ ΠΈΠ· ΡΠΎΡΠΌΡ Π½ΠΈΠΆΠ΅:
ΠΡΠ»ΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΡΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΡ Π½Π΅
Π·Π°Π³ΡΡΠ·ΠΈΠ»ΠΈΡΡ
ΠΠΠΠΠΠ’Π ΠΠΠΠ‘Π¬ ΠΈΠ»ΠΈ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΠ΅ ΡΡΡΠ°Π½ΠΈΡΡ
ΠΡΠ»ΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΡΠΎ ΡΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΠ΅ΠΌ Π²ΠΈΠ΄Π΅ΠΎ, ΠΏΠΎΠΆΠ°Π»ΡΠΉΡΡΠ° Π½Π°ΠΏΠΈΡΠΈΡΠ΅ Π² ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ ΠΏΠΎ Π°Π΄ΡΠ΅ΡΡ Π²Π½ΠΈΠ·Ρ
ΡΡΡΠ°Π½ΠΈΡΡ.
Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ Π·Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ΅ΡΠ²ΠΈΡΠ° ClipSaver.ru
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΎ Java-ΠΊΠΎΠ½ΡΠ΅ΡΠ΅Π½ΡΠΈΡΡ : β Π²Π΅ΡΠ½ΠΎΠΉ β JPoint: https://jrg.su/gTrwHx β ΠΎΡΠ΅Π½ΡΡ β Joker: https://jrg.su/h7yvG4 β β . . . . Π‘ΡΠΏΠ΅ΡΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ ΠΈ partial evaluation β ΠΎΡΠ΅Π½Ρ Π°ΠΊΡΡΠ°Π»ΡΠ½ΡΠ΅ ΡΠ΅ΠΌΡ Π² ΠΎΠ±Π»Π°ΡΡΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠΎΠ². Java Champion ΠΠ»Π΅Π³ Π¨Π΅Π»Π°Π΅Π² Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ±ΡΡΡΠ½ΠΈΡ ΠΈΡ ΡΠ΅ΠΎΡΠ΅ΡΠΈΡΠ΅ΡΠΊΡΡ Π±Π°Π·Ρ, Π½ΠΎ ΠΈ ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅ Π² ΡΠΆΠ΅ Π΄ΠΎΡΡΡΠΏΠ½ΡΡ ΠΎΠΏΠ΅Π½ΡΠΎΡΡΠ½ΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ , ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ Truffle ΠΈ GraalVM. ΠΡΠΎ ΠΈΠ· Π½Π°Ρ Π² Π΄Π΅ΡΡΡΠ²Π΅ Π½Π΅ Ρ ΠΎΡΠ΅Π» Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΠ²ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ, ΠΈΠ»ΠΈ ΠΈΠ³ΡΠΎΠ²ΠΎΠΉ Π΄Π²ΠΈΠΆΠΎΠΊ, ΠΈΠ»ΠΈ Π΅ΡΠ΅ ΡΡΠΎ-Π½ΠΈΠ±ΡΠ΄Ρ ΡΠ΄Π°ΠΊΠΎΠ΅? Π ΡΡΠΎΠΌ Π΄ΠΎΠΊΠ»Π°Π΄Π΅ ΠΌΡ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ ΠΏΡΠΎ Truffle β ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ·ΡΠΊΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ GraalVM. ΠΠ»Ρ Truffle Π½ΡΠΆΠ½ΠΎ Π²ΡΠ΅Π³ΠΎ Π»ΠΈΡΡ ΠΎΠΏΠΈΡΠ°ΡΡ ΡΠ΅ΠΌΠ°Π½ΡΠΈΠΊΡ ΡΠ·ΡΠΊΠ° Π² Π²ΠΈΠ΄Π΅ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΠ°, ΠΈ Π²ΡΠ°Π»Ρ β ΡΠ΅ΡΠ΅Π· ΠΊΠ°ΠΊΠΎΠ΅-ΡΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ΅Π΅ΡΡΡ ΠΈ ΡΡΠ°Π½Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΠ΄ΠΈΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ Π±ΡΡΡΡΠΎ. ΠΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ, ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Truffle, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ (partial evaluation) ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ. Π Π°ΡΡΠΊΠ°ΠΆΠ΅ΠΌ, ΠΊΠ°ΠΊΠΈΠ΅ Π΄ΡΡΠ³ΠΈΠ΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ Truffle ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅Ρ Π΄Π»Ρ ΡΠ·ΡΠΊΠΎΠ² ΠΈ ΠΏΠΎΡΠ΅ΠΌΡ ΠΎΠ½ Π»ΡΡΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π² ΠΏΡΠΈΡΡΡΡΡΠ²ΠΈΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ° Graal. ΠΠ΅ ΠΊΠ°ΠΆΠ΄ΡΠΉ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ²ΠΎΠΉ ΡΠ·ΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ»ΠΈ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ, Π½ΠΎ Π΄Π΅ΡΠ°Π»ΠΈ ΡΠ°Π±ΠΎΡΡ Truffle ΠΈΠ· ΡΡΠΎΠ³ΠΎ Π΄ΠΎΠΊΠ»Π°Π΄Π° ΠΏΠΎΠΌΠΎΠ³ΡΡ Π»ΡΡΡΠ΅ ΠΏΠΎΠ½ΡΡΡ, ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΠ·ΡΠΊΠΈ, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΠ΅ GraalVM β JavaScript, Ruby, R, Python β ΠΈ ΠΊΠ°ΠΊ Π»ΡΡΡΠ΅ ΠΈΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ.