Lugha ya programu ya Flow9 chanzo huria

Kampuni ya Area9 kufunguliwa misimbo ya chanzo cha lugha ya programu inayofanya kazi Flow9, inayolenga kuunda miingiliano ya watumiaji. Msimbo katika lugha ya Flow9 unaweza kukusanywa kuwa faili zinazotekelezeka za Linux, iOS, Android, Windows na MacOS, na kutafsiriwa katika programu za wavuti katika HTML5/JavaScript (WebAssembly) au maandishi chanzo katika Java, D, Lisp, ML na C++. Msimbo wa mkusanyaji iko wazi imepewa leseni chini ya GPLv2 na maktaba ya kawaida ina leseni chini ya leseni ya MIT.

Lugha imekuwa ikiendelezwa tangu 2010 kama njia mbadala ya kimataifa na yenye mifumo mingi ya Adobe Flash. Flow9 imewekwa kama jukwaa la kuunda miingiliano ya kisasa ya picha ambayo inaweza kutumika kwa Wavuti na kompyuta ya mezani na programu za rununu. Mradi huu unatumika katika miradi mingi ya ndani ya Area9 na hapo awali uliitwa Flow, lakini kabla ya kufungua msimbo iliamuliwa kuupa jina Flow9 ili kuepusha kuingiliwa na kichanganuzi cha takwimu. Flow kutoka kwenye Facebook.

Flow9 inachanganya sintaksia inayofahamika sawa na lugha ya C (ona kulinganisha msimbo katika Flow9 na JavaScript), na zana zinazofanya kazi za upangaji katika mtindo ML ΠΈ fursa lugha mahususi za kikoa zinazolenga kutatua shida maalum kwa ufanisi iwezekanavyo (kwa Flow9 hii ni ukuzaji wa kiolesura). Flow9 imeundwa kutumia uchapaji madhubuti, lakini ikihitajika, inawezekana kutumia uchapaji unaobadilika na utambuzi wa aina otomatiki, na vile vile viungo. Polymorphism inasaidiwa (kazi moja inaweza kusindika data ya aina tofauti), uwezo wa kuunda aina ndogo, moduli, safu, hashi, misemo ya lambda.

Nambari sawa inaweza kukusanywa kwa majukwaa tofauti, bila hitaji la uhamishaji tofauti na mabadiliko kwenye nambari. Programu hiyo hiyo inaweza kufanya kazi kwenye kivinjari, kwenye vifaa vya rununu vilivyo na skrini za kugusa, na kwenye mifumo ya kompyuta ya mezani iliyo na kibodi na kipanya. Tunatoa mkusanyiko uliotengenezwa tayari wa vipengee vilivyo na vipengee vya kiolesura katika mtindo wa React, ulioundwa kwa mujibu wa dhana ya Usanifu wa Google. Ubunifu unaweza kudhibitiwa hadi kiwango cha pikseli. Ili kuweka mitindo mtu anaweza tumia sintaksia ya kawaida ya CSS. Kwa utoaji kwenye Linux, macOS na Windows wakati imeundwa katika C++ hutumiwa backend kulingana na Qt na OpenGL, na wakati imeundwa katika Java - JavaFX.

Shukrani kwa matumizi ya mbinu za kazi za programu, kanuni iliyoandikwa na vipengele vya interface vinaweza kukopwa kwa urahisi kutoka kwa miradi mingine. Lugha ni changamano sana na inajumuisha manenomsingi 25 pekee, na maelezo ya sarufi yanafaa katika mistari 255 pamoja na maoni. Ili kutekeleza utendakazi sawa kwenye Flow9, msimbo unahitajika mara 2-4 kuliko kwenye HTML+CSS+JavaScript, C#, Swift au Java. Kwa mfano, ikiwa kwa programu ya majaribio Tic-Tac-Toe kutoka viongozi kwa React ilichukua kuandika mistari 200 ya msimbo katika React/JavaScript/HTML/CSS, kwa Flow9 tulifanikiwa kuifanya katika mistari 83. Kwa kuongezea, programu tumizi hii haiwezi tu kuzinduliwa kwenye kivinjari, lakini pia imejumuishwa katika mfumo wa programu za rununu za iOS na Android.

Jukwaa linajumuisha mkusanyaji mkuu wa flowc, iliyoandikwa katika Flow9 na yenye uwezo wa kufanya kazi kama seva ya mkusanyiko; mkusanyaji wa kumbukumbu ya mtiririko (iliyoandikwa ndani haxe); debugger na usaidizi wa itifaki ya gdb; mfumo wa wasifu na analyzer ya kumbukumbu na debugger ya kukusanya takataka; Mkusanyaji wa JIT kwa mifumo ya x86_64; mkalimani wa ARM na majukwaa mengine; zana za mkusanyiko wa kuchagua katika C ++ na Java ya sehemu muhimu zaidi za utendaji wa kanuni; programu-jalizi za kuunganishwa na wahariri wa kanuni Msimbo wa Kuonekana, Maandishi Makuu, Kate na Emacs; jenereta ya kuchanganua (Kigingi).

Chanzo: opennet.ru

Kuongeza maoni