เปเบซเบผเปˆเบ‡เป€เบ›เบตเบ”เบ‚เบญเบ‡เป‚เบ›เบฃเปเบเบฃเบก Flow9

เบšเปเบฅเบดเบชเบฑเบ” Area9 เป€เบ›เบตเบ” เบฅเบฐเบซเบฑเบ”เปเบซเบผเปˆเบ‡เบžเบฒเบชเบฒเบเบฒเบ™เบ‚เบฝเบ™เป‚เบ›เบผเปเบเบผเบกเบ—เบตเปˆเป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ” เบเบฐเปเบช9, เป„เบ”เป‰เบชเบธเบกเปƒเบชเปˆเบเบฒเบ™เบชเป‰เบฒเบ‡เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเบœเบนเป‰เปƒเบŠเป‰. เบฅเบฐเบซเบฑเบ”เปƒเบ™เบžเบฒเบชเบฒ Flow9 เบชเบฒเบกเบฒเบ”เบ–เบทเบเบฅเบงเบšเบฅเบงเบกเป€เบ›เบฑเบ™เป„เบŸเบฅเปŒเบ—เบตเปˆเบ›เบฐเบ•เบดเบšเบฑเบ”เป„เบ”เป‰เบชเปเบฒเบฅเบฑเบš Linux, iOS, Android, Windows เปเบฅเบฐ macOS, เปเบฅเบฐเปเบ›เป€เบ›เบฑเบ™เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเป€เบงเบฑเบšเป„เบŠเบ•เปŒเปƒเบ™ HTML5 / JavaScript (WebAssembly) เบซเบผเบทเบ‚เปเป‰เบ„เบงเบฒเบกเปเบซเบผเปˆเบ‡เปƒเบ™ Java, D, Lisp, ML เปเบฅเบฐ C ++. เบฅเบฐเบซเบฑเบ” compiler เป€เบ›เบตเบ” เป„เบ”เป‰เบ–เบทเบเบญเบฐเบ™เบธเบเบฒเบ”เบžเบฒเบเปƒเบ•เป‰ GPLv2 เปเบฅเบฐเบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ”เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™เป„เบ”เป‰เบฎเบฑเบšเบญเบฐเบ™เบธเบเบฒเบ”เบžเบฒเบเปƒเบ•เป‰เปƒเบšเบญเบฐเบ™เบธเบเบฒเบ” MIT.

เบžเบฒเบชเบฒเป„เบ”เป‰เบ–เบทเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเบ•เบฑเป‰เบ‡เปเบ•เปˆเบ›เบต 2010 เบกเบฒเป€เบ›เบฑเบ™เบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ—เบปเปˆเบงเป„เบ› เปเบฅเบฐเบซเบผเบฒเบเป€เบงเบ—เบตเบชเบณเบฅเบฑเบš Adobe Flash. Flow9 เบ–เบทเบเบˆเบฑเบ”เป€เบ›เบฑเบ™เปเบžเบฅเบฐเบ•เบฐเบŸเบญเบกเบชเป‰เบฒเบ‡เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเปเบšเบšเบเบฒเบŸเบดเบเบ—เบตเปˆเบ—เบฑเบ™เบชเบฐ เป„เป เบ—เบตเปˆเบชเบฒเบกเบฒเบ”เปƒเบŠเป‰เป„เบ”เป‰เบ—เบฑเบ‡เป€เบงเบฑเบšเปเบฅเบฐ desktop เปเบฅเบฐเปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™เบกเบทเบ–เบท. เป‚เบ„เบ‡เบเบฒเบ™เบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เปƒเบ™เบซเบผเบฒเบเป†เป‚เบ„เบ‡เบเบฒเบ™เบžเบฒเบเปƒเบ™ Area9 เปเบฅเบฐเปƒเบ™เป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™เป€เบญเบตเป‰เบ™เบงเปˆเบฒ Flow, เปเบ•เปˆเบเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเป€เบ›เบตเบ”เบฅเบฐเบซเบฑเบ”เบกเบฑเบ™เป„เบ”เป‰เบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเบ›เปˆเบฝเบ™เบŠเบทเปˆเป€เบ›เบฑเบ™ Flow9 เป€เบžเบทเปˆเบญเบซเบผเบตเบเป€เบงเบฑเป‰เบ™เบเบฒเบ™เปเบŠเบเปเบŠเบ‡เบเบฑเบšเบเบฒเบ™เบงเบดเป€เบ„เบฒเบฐเบชเบฐเบ–เบดเบ•เบด. เบเบฒเบ™เป„เบซเบผ เบˆเบฒเบเป€เบŸเบชเบšเบธเบ.

Flow9 เบฅเบงเบก syntax เบ—เบตเปˆเบ„เบธเป‰เบ™เป€เบ„เบตเบเบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™เบเบฑเบšเบžเบฒเบชเบฒ C (เป€เบšเบดเปˆเบ‡ เบเบฒเบ™เบ›เบฝเบšเบ—เบฝเบš เบฅเบฐเบซเบฑเบ”เปƒเบ™ Flow9 เปเบฅเบฐ JavaScript), เบกเบตเป€เบ„เบทเปˆเบญเบ‡เบกเบทเบเบฒเบ™เบ‚เบฝเบ™เป‚เบ›เบผเปเบเบผเบกเบ—เบตเปˆเป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”เปƒเบ™เปเบšเบš ML ะธ เป‚เบญเบเบฒเบ” เบžเบฒเบชเบฒเบชเบฐเป€เบžเบฒเบฐเป‚เบ”เป€เบกเบ™เบ—เบตเปˆเบชเบธเบกเปƒเบชเปˆเบเบฒเบ™เปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒเบชเบฐเป€เบžเบฒเบฐเบขเปˆเบฒเบ‡เบกเบตเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบ—เบตเปˆเป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰ (เบชเปเบฒเบฅเบฑเบš Flow9 เบ™เบตเป‰เปเบกเปˆเบ™เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบš). Flow9 เบ–เบทเบเบญเบญเบเปเบšเบšเบกเบฒเป€เบžเบทเปˆเบญเปƒเบŠเป‰เบเบฒเบ™เบžเบดเบกเบขเปˆเบฒเบ‡เป€เบ‚เบฑเป‰เบกเบ‡เบงเบ”, เปเบ•เปˆเบ–เป‰เบฒเบˆเปเบฒเป€เบ›เบฑเบ™, เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ—เบตเปˆเบˆเบฐเปƒเบŠเป‰เบเบฒเบ™เบžเบดเบกเปเบšเบšเป„เบ”เบ™เบฒเบกเบดเบเบ”เป‰เบงเบเบเบฒเบ™เบเบงเบ”เบžเบปเบšเบ›เบฐเป€เบžเบ”เบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”, เป€เบŠเบฑเปˆเบ™เบ”เบฝเบงเบเบฑเบ™เบเบฑเบš links. Polymorphism เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™ (เบซเบ™เป‰เบฒเบ—เบตเปˆเบซเบ™เบถเปˆเบ‡เบชเบฒเบกเบฒเบ”เบ›เบฐเบกเบงเบ™เบœเบปเบ™เบ‚เปเป‰เบกเบนเบ™เบ‚เบญเบ‡เบ›เบฐเป€เบžเบ”เบ•เปˆเบฒเบ‡เป†), เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบชเป‰เบฒเบ‡ subtypes, modules, arrays, hashes, lambda expressions.

เบฅเบฐเบซเบฑเบ”เบ”เบฝเบงเบเบฑเบ™เบชเบฒเบกเบฒเบ”เบ–เบทเบเบฅเบงเบšเบฅเบงเบกเบชเปเบฒเบฅเบฑเบšเปเบžเบฅเบฐเบ•เบฐเบŸเบญเบกเบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™, เบšเปเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบกเบต porting เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบเปเบฅเบฐเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบฅเบฐเบซเบฑเบ”. เปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™เบ”เบฝเบงเบเบฑเบ™เบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เบงเบฝเบเบขเบนเปˆเปƒเบ™เบ•เบปเบงเบ—เปˆเบญเบ‡เป€เบงเบฑเบš, เปƒเบ™เบญเบธเบ›เบฐเบเบญเบ™เบกเบทเบ–เบทเบ—เบตเปˆเบกเบตเบซเบ™เป‰เบฒเบˆเปเบชเปเบฒเบœเบฑเบ”, เปเบฅเบฐเปƒเบ™เบฅเบฐเบšเบปเบš desktop เบ—เบตเปˆเบกเบตเปเบ›เป‰เบ™เบžเบดเบกเปเบฅเบฐเบซเบ™เบน. เบžเบงเบเป€เบฎเบปเบฒเบชเบฐเป€เบซเบ™เบตเบเบฒเบ™เบฅเบงเบšเบฅเบงเบกเบญเบปเบ‡เบ›เบฐเบเบญเบšเบ—เบตเปˆเบเบฝเบกเบžเป‰เบญเบกเบ—เบตเปˆเบกเบตเบญเบปเบ‡เบ›เบฐเบเบญเบšเบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเปƒเบ™เบฎเบนเบšเปเบšเบš React, เบญเบญเบเปเบšเบšเป‚เบ”เบเบชเบญเบ”เบ„เปˆเบญเบ‡เบเบฑเบšเปเบ™เบงเบ„เบงเบฒเบกเบ„เบดเบ”เบ‚เบญเบ‡ Google Material Design. เบเบฒเบ™เบญเบญเบเปเบšเบšเบชเบฒเบกเบฒเบ”เบ„เบงเบšเบ„เบธเบกเป„เบ”เป‰เปƒเบ™เบฅเบฐเบ”เบฑเบš pixels เบฅเบงเบ‡. เป€เบžเบทเปˆเบญเบเปเบฒเบ™เบปเบ”เบฎเบนเบšเปเบšเบš เบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เป„เบ”เป‰ เปƒเบŠเป‰ syntax CSS เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™. เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบชเบฐเปเบ”เบ‡เบœเบปเบ™เปƒเบ™ Linux, macOS เปเบฅเบฐ Windows เป€เบกเบทเปˆเบญเบฅเบงเบšเบฅเบงเบกเบขเบนเปˆเปƒเบ™ C++ เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰ backend เบญเบตเบ‡เปƒเบชเปˆ Qt เบเบฑเบš OpenGL, เปเบฅเบฐเป€เบกเบทเปˆเบญเบ–เบทเบเบฅเบงเบšเบฅเบงเบกเปƒเบ™ Java - JavaFX.

เบ‚เปเบ‚เบญเบšเปƒเบˆเบเบฑเบšเบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เป€เบ•เบฑเบเบ™เบดเบเบเบฒเบ™เบ‚เบฝเบ™เป‚เบ›เบฅเปเบเบฅเบกเบ—เบตเปˆเป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”, เบฅเบฐเบซเบฑเบ”เบฅเบฒเบเบฅเบฑเบเบญเบฑเบเบชเบญเบ™เปเบฅเบฐเบญเบปเบ‡เบ›เบฐเบเบญเบšเบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเบชเบฒเบกเบฒเบ”เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบเบนเป‰เบขเบทเบกเบˆเบฒเบเป‚เบ„เบ‡เบเบฒเบ™เบญเบทเปˆเบ™เป†เป„เบ”เป‰เบขเปˆเบฒเบ‡เบ‡เปˆเบฒเบเบ”เบฒเบ. เบžเบฒเบชเบฒเปเบกเปˆเบ™เบกเบตเบ„เบงเบฒเบกเบซเบ™เบฒเปเบซเบ™เป‰เบ™เบซเบผเบฒเบเปเบฅเบฐเบ›เบฐเบเบญเบšเบกเบตเบžเบฝเบ‡เปเบ•เปˆ 25 เบ„เปเบฒ, เปเบฅเบฐเบ„เปเบฒเบญเบฐเบ—เบดเบšเบฒเบเป„เบงเบเบฒเบเบญเบ™เป€เบซเบกเบฒเบฐเบชเบปเบกเบเบฑเบš 255 เป€เบชเบฑเป‰เบ™เบžเป‰เบญเบกเบเบฑเบšเบ„เปเบฒเป€เบซเบฑเบ™. เป€เบžเบทเปˆเบญเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบ—เปเบฒเบ‡เบฒเบ™เบ—เบตเปˆเบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™เปƒเบ™ Flow9, 2-4 เป€เบ—เบปเปˆเบฒเบ‚เบญเบ‡เบฅเบฐเบซเบฑเบ”เบซเบ™เป‰เบญเบเปเบกเปˆเบ™เบ•เป‰เบญเบ‡เบเบฒเบ™เบเปˆเบงเบฒเปƒเบ™ HTML+CSS+JavaScript, C#, Swift เบซเบผเบท Java. เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบเบปเบเบ•เบปเบงเบขเปˆเบฒเบ‡, เบ–เป‰เบฒเบซเบฒเบเบงเปˆเบฒเบชเปเบฒเบฅเบฑเบšเบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเบเบฒเบ™เบ—เบปเบ”เบชเบญเบš Tic-Tac-Toe เบˆเบฒเบ เบ„เบงเบฒเบกเป€เบ›เบฑเบ™เบœเบนเป‰เบ™เปเบฒ เบชเปเบฒเบฅเบฑเบš React เบกเบฑเบ™เปƒเบŠเป‰เป€เบงเบฅเบฒเบ‚เบฝเบ™เบฅเบฐเบซเบฑเบ” 200 เปเบ–เบงเปƒเบ™ React/JavaScript/HTML/CSS, เบชเปเบฒเบฅเบฑเบš Flow9 เบžเบงเบเป€เบฎเบปเบฒเบˆเบฑเบ”เบเบฒเบ™เปƒเบ™ 83 เปเบ–เบง. เบเบดเปˆเบ‡เป„เบ›เบเบงเปˆเบฒเบ™เบฑเป‰เบ™, เปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™เบ™เบตเป‰เบšเปเปˆเบžเบฝเบ‡เปเบ•เปˆเบชเบฒเบกเบฒเบ”เป€เบ›เบตเบ”เบ•เบปเบงเปƒเบ™เบ•เบปเบงเบ—เปˆเบญเบ‡เป€เบงเบฑเบš, เปเบ•เปˆเบเบฑเบ‡เบ–เบทเบเบฅเบงเบšเบฅเบงเบกเป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบฎเบนเบšเปเบšเบšเบ‚เบญเบ‡เปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™เบกเบทเบ–เบทเบชเปเบฒเบฅเบฑเบš iOS เปเบฅเบฐ Android.

เปเบžเบฅเบฐเบ•เบฐเบŸเบญเบกเบ›เบฐเบเบญเบšเบกเบตเบ•เบปเบงเบฅเบงเบšเบฅเบงเบกเบ‚เปเป‰เบกเบนเบ™ flowc เบ•เบปเป‰เบ™เบ•เป, เบฅเบฒเบเบฅเบฑเบเบญเบฑเบเบชเบญเบ™เปƒเบ™ Flow9 เปเบฅเบฐเบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เบงเบฝเบเป€เบ›เบฑเบ™เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบเบฒเบ™เบฅเบงเบšเบฅเบงเบก; flow compiler (เบ‚เบฝเบ™เปƒเบ™ haxe); debugger เบเบฑเบš gdb protocol เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™; เบฅเบฐเบšเบปเบš profileing เบเบฑเบšเบเบฒเบ™เบงเบดเป€เบ„เบฒเบฐเบ„เบงเบฒเบกเบŠเบปเบ‡เบˆเปเบฒเปเบฅเบฐ debugger เป€เบเบฑเบšเบ‚เบตเป‰เป€เบซเบเบทเป‰เบญ; JIT compiler เบชเปเบฒเบฅเบฑเบšเบฅเบฐเบšเบปเบš x86_64; เบ™เบฒเบเบžเบฒเบชเบฒเบชเปเบฒเบฅเบฑเบš ARM เปเบฅเบฐเป€เบงเบ—เบตเบญเบทเปˆเบ™เป†; เป€เบ„เบทเปˆเบญเบ‡เบกเบทเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบฅเบงเบšเบฅเบงเบกเบเบฒเบ™เบ„เบฑเบ”เป€เบฅเบทเบญเบเปƒเบ™ C ++ เปเบฅเบฐ Java เบ‚เบญเบ‡เบžเบฒเบเบชเปˆเบงเบ™เบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบซเบผเบฒเบเบ—เบตเปˆเบชเบธเบ”เบ‚เบญเบ‡เบฅเบฐเบซเบฑเบ”; plugins เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เบฐเบชเบปเบกเบ›เบฐเบชเบฒเบ™เบเบฑเบšเบšเบฑเบ™เบ™เบฒเบ—เบดเบเบฒเบ™เบฅเบฐเบซเบฑเบ” Visual Code, Sublime Text, Kate เปเบฅเบฐ Emacs; parser generator (PEG).

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: opennet.ru

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™