9 Π»Π΅Ρ‚ Mojolicious! ΠŸΡ€Π°Π·Π΄Π½ΠΈΡ‡Π½Ρ‹ΠΉ Ρ€Π΅Π»ΠΈΠ· 8.28 с async/await!

Mojolicious — соврСмСнный Π²Π΅Π±-Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ Π½Π° Perl. Mojo — Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΏΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Π½Π°Π±ΠΎΡ€Π° инструмСнтов для Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ°. ΠœΠΎΠ΄ΡƒΠ»ΠΈ сСмСйства Mojo::* ΡˆΠΈΡ€ΠΎΠΊΠΎ примСняСтся ΠΈ Π² сторонних ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ….

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠ΄Π°:

use Mojo::Base -strict, -async;

async sub hello_p {
return ‘Hello Mojo!’;
}

hello_p()->then(sub { say @_ })->wait;

Π‘ΠΎΠ»ΡŒΡˆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ.

Π Π°Π½Π΅Π΅ Perlfoundation выдСляла Π³Ρ€Π°Π½Ρ‚ Π½Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ модуля Future::AsyncAwait. НСкотороС врСмя спустя, основной Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Mojolicious (Π‘Π΅Π±Π°ΡΡ‚ΡŒΡΠ½ РидСль) сообщал, Ρ‡Ρ‚ΠΎ вСдутся Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΠΎ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ async/await.

Π’Π°ΠΊΠΆΠ΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΌΠ΅Ρ‚ΠΎΠ΄Π° all_settled для Mojo::Promise.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: linux.org.ru

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ