ΠΡΠΎΠ΅ΠΊΡΠΎΡ PaSh, ΠΊΠΎΡ ΡΠ°Π·Π²ΠΈΠ²Π° Π°Π»Π°ΡΠΊΠΈ Π·Π° ΠΏΠ°ΡΠ°Π»Π΅Π»Π½ΠΎ ΠΈΠ·Π²ΡΡΡΠ²Π°ΡΠ΅ Π½Π° ΡΠΊΡΠΈΠΏΡΠΈ Π½Π° ΡΠΊΠΎΠ»ΠΊΠ°, Π½Π°ΡΠ°Π²ΠΈ Π΄Π΅ΠΊΠ° ΡΠ΅ Π΄Π²ΠΈΠΆΠΈ ΠΏΠΎΠ΄ ΠΏΠΎΠΊΡΠΎΠ²ΠΈΡΠ΅Π»ΡΡΠ²ΠΎ Π½Π° Π€ΠΎΠ½Π΄Π°ΡΠΈΡΠ°ΡΠ° Linux, ΠΊΠΎΡΠ° ΡΠ΅ ΠΎΠ±Π΅Π·Π±Π΅Π΄ΠΈ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ° ΠΈ ΡΡΠ»ΡΠ³ΠΈ Π½Π΅ΠΎΠΏΡ ΠΎΠ΄Π½ΠΈ Π·Π° ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΡΠ²Π°ΡΠ΅ Π½Π° ΡΠ°Π·Π²ΠΎΡΠΎΡ. ΠΡΠΎΠ΅ΠΊΡΠ½ΠΈΠΎΡ ΠΊΠΎΠ΄ Π΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΠΈΡΠ°Π½ ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½ΡΠ°ΡΠ° MIT ΠΈ Π²ΠΊΠ»ΡΡΡΠ²Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈ Π²ΠΎ Python, Shell, C ΠΈ OCaml.
PaSh Π²ΠΊΠ»ΡΡΡΠ²Π° JIT ΠΊΠΎΠΌΠΏΠ°ΡΠ»Π΅Ρ, Π²ΡΠ΅ΠΌΠ΅ΡΡΠ°Π΅ΡΠ΅ ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΡΠΎ ΠΏΡΠΈΠ±Π΅Π»Π΅ΡΠΊΠΈ:
- Runtime ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡΠ²Π° Π·Π±ΠΈΡ Π½Π° ΠΏΡΠΈΠΌΠΈΡΠΈΠ²ΠΈ Π·Π° ΠΏΠΎΠ΄Π΄ΡΡΠΊΠ° Π½Π° ΠΏΠ°ΡΠ°Π»Π΅Π»Π½ΠΎ ΠΈΠ·Π²ΡΡΡΠ²Π°ΡΠ΅ Π½Π° ΡΠΊΡΠΈΠΏΡΠΈ.
- ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° ΡΠΎ ΠΏΡΠΈΠ±Π΅Π»Π΅ΡΠΊΠΈ Π΄Π΅ΡΠΈΠ½ΠΈΡΠ° Π·Π±ΠΈΡ Π½Π° ΡΠ²ΠΎΡΡΡΠ²Π° ΠΊΠΎΠΈ ΠΎΠΏΠΈΡΡΠ²Π°Π°Ρ ΡΠΈΡΡΠ°ΡΠΈΠΈ Π²ΠΎ ΠΊΠΎΠΈ Π΅ Π΄ΠΎΠ·Π²ΠΎΠ»Π΅Π½Π° ΠΏΠ°ΡΠ°Π»Π΅Π»ΠΈΠ·Π°ΡΠΈΡΠ° Π½Π° ΠΏΠΎΠ΅Π΄ΠΈΠ½Π΅ΡΠ½ΠΈ Π½Π°ΡΠ΅Π΄Π±ΠΈ Π½Π° POSIX ΠΈ GNU Coreutils.
- ΠΠΎΠΌΠΏΠ°ΡΠ»Π΅ΡΠΎΡ Π²Π΅Π΄Π½Π°Ρ ΡΠ° Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠ° ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½Π°ΡΠ° Shell ΡΠΊΡΠΈΠΏΡΠ° Π²ΠΎ Π°ΠΏΡΡΡΠ°ΠΊΡΠ½ΠΎ ΡΠΈΠ½ΡΠ°ΠΊΡΠ½ΠΎ Π΄ΡΠ²ΠΎ (AST), Π³ΠΎ Π΄Π΅Π»ΠΈ Π½Π° ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠΈ ΠΏΠΎΠ³ΠΎΠ΄Π½ΠΈ Π·Π° ΠΏΠ°ΡΠ°Π»Π΅Π»Π½ΠΎ ΠΈΠ·Π²ΡΡΡΠ²Π°ΡΠ΅ ΠΈ Π²ΡΠ· ΠΎΡΠ½ΠΎΠ²Π° Π½Π° Π½ΠΈΠ² ΡΠΎΡΠΌΠΈΡΠ° Π½ΠΎΠ²Π° Π²Π΅ΡΠ·ΠΈΡΠ° Π½Π° ΡΠΊΡΠΈΠΏΡΠ°ΡΠ°, ΡΠΈΠΈ Π΄Π΅Π»ΠΎΠ²ΠΈ ΠΌΠΎΠΆΠ°Ρ Π΄Π° ΡΠ΅ ΠΈΠ·Π²ΡΡΠ°Ρ ΠΈΡΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½ΠΎ. ΠΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈΡΠ΅ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄ΠΈΡΠ΅ ΠΊΠΎΠΈ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡΠ²Π°Π°Ρ ΠΏΠ°ΡΠ°Π»Π΅Π»ΠΈΠ·Π°ΡΠΈΡΠ° Π³ΠΈ Π·Π΅ΠΌΠ° ΠΊΠΎΠΌΠΏΠ°ΡΠ»Π΅ΡΠΎΡ ΠΎΠ΄ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° ΡΠΎ ΠΏΡΠΈΠ±Π΅Π»Π΅ΡΠΊΠΈ. ΠΠΎ ΠΏΡΠΎΡΠ΅ΡΠΎΡ Π½Π° Π³Π΅Π½Π΅ΡΠΈΡΠ°ΡΠ΅ Π½Π° ΠΏΠ°ΡΠ°Π»Π΅Π»Π½Π° Π²Π΅ΡΠ·ΠΈΡΠ° Π½Π° ΡΡΠ΅Π½Π°ΡΠΈΠΎΡΠΎ, Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ ΠΎΠ΄ Runtime ΡΠ΅ Π²ΠΌΠ΅ΡΠ½ΡΠ²Π°Π°Ρ Π²ΠΎ ΠΊΠΎΠ΄ΠΎΡ.
ΠΠ° ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΊΡΠΈΠΏΡΠ° ΠΊΠΎΡΠ° ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠ²Π° Π΄Π²Π΅ Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ f1.md ΠΈ f2.md cat f1.md f2.md | tr AZ az | tr -cs A-Za-z '\n' | ΡΠΎΡΡΠΈΡΠ°ΡΠ΅ | uniq | comm -13 dict.txt β > Π½Π°Π΄Π²ΠΎΡ ΠΌΠ°ΡΠΊΠ° Π½Π°Π΄Π²ΠΎΡ | wc -l | sed 's/$/ ΠΏΠΎΠ³ΡΠ΅ΡΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈ Π·Π±ΠΎΡΠΎΠ²ΠΈ!/' Π²ΠΎΠΎΠ±ΠΈΡΠ°Π΅Π½ΠΎ Π±ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠ²Π°Π» Π΄Π²Π΅ Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π½ΠΎ:
ΠΠ·Π²ΠΎΡ: opennet.ru