Habari, Habr! Ninawasilisha kwa mawazo yako tafsiri ya chapisho la Stephen Wolfram
Masharti ya uthabiti wa lugha ya Wolfram
Leo tunasimama kwenye kizingiti cha mafanikio makubwa pamoja na lugha ya programu
Hazina ya Kazi ya Wolfram ni kitu kilichowezeshwa na hali ya kipekee ya Lugha ya Wolfram sio tu kama lugha ya programu, lakini pia kama lugha.
Kwa mfano, hazina ya kazi ya Wolfram tayari inayo
Vivyo hivyo zaidi ya
Ili kufika kwenye ukurasa, nakili kitu hapo juu (kazi ya BLOB), kibandike kwenye safu ya ingizo na kisha utekeleze kitendakazi - tayari kimejengwa kwa lugha ya Wolfram na kuungwa mkono na chaguo-msingi kuanzia na.
Ikumbukwe hapa kwamba wakati usindikaji
Natumaini kwamba kwa msaada
Kazi kutoka kwenye hazina zinaweza kuwa na vipande vidogo au vikubwa vya msimbo vilivyoandikwa katika Lugha ya Wolfram. Kwa mfano, hizi zinaweza kuwa simu
Muundo wa ganda na programu ya Hifadhi ya Kipengele cha Wolfram imeundwa ili kila mtu aweze kuchangia sababu ya kawaida kwa njia rahisi na rahisi kwao - kwa kweli, tu.
Kuna ubadilishanaji na maelezo mengi katika mbinu hii, lakini lengo letu ni kuboresha hazina ya vipengele vya Wolfram kwa matumizi ya mtumiaji na kuhakikisha kuwa vipengele vipya vya mtumiaji vinachangia ipasavyo katika ukuzaji wa lugha. Tunapokua, sina shaka kwamba tutalazimika kuvumbua mbinu mpya za kuchakata na kuhalalisha vitendaji vilivyojengwa ndani ya ghala, si haba kwa kupanga idadi kubwa ya vitendakazi na kutafuta zile ambazo watumiaji wanahitaji. Hata hivyo, inatia moyo kwamba njia tuliyochagua ni mwanzo mzuri. Mimi binafsi
Kuongeza ufanisi huku kupunguza gharama
Hata kabla ya Mtandao, kulikuwa na njia za kushiriki msimbo wa Lugha ya Wolfram (mradi wetu mkuu wa kwanza ulikuwa
Kwa zaidi ya miaka 30, kampuni yetu imefanya kazi kwa bidii ili kudumisha uadilifu wa muundo wa lugha ya Wolfram, na hii ni muhimu ili kuhakikisha kwamba lugha ya Wolfram inakuwa si lugha ya programu tu, bali pia lugha.
Michakato mbalimbali ya hesabu hutokea katika muundo wa utekelezaji wa kila kazi. Ikumbukwe hapa kwamba ni muhimu kwamba kazi ina mwonekano wazi na sare na usomaji wa kuona kwa mtumiaji. Katika muktadha huu, utendakazi uliojengewa ndani wa Lugha ya Wolfram umewasilishwa na zaidi ya mifano 6000 mfululizo ya jinsi ya kupanga vitendaji vizuri (hizi ni zetu.
Kuunda hazina ambayo inafanya kazi vizuri ni kazi ya kupendeza ya kupanga meta. Kwa mfano, ziada ya vikwazo katika programu haitaruhusu kupata umoja unaohitajika na ulimwengu wote wa algorithm. Kama vile idadi isiyotosha ya vizuizi vya utendakazi, hutaweza kutekeleza mlolongo sahihi wa kutosha wa utekelezaji wa algorithm. Mifano kadhaa za awali za kutekeleza maelewano ya mbinu hizi, zilizotekelezwa na kampuni yetu, zilifanya kazi kwa utulivu - hizi ni:
Mifano zote hapo juu zina kipengele cha msingi - vitu na kazi zilizokusanywa katika mradi zina kiwango cha juu sana cha muundo na usambazaji wa taratibu. Bila shaka, maelezo ya muundo wa kile ambacho ni demo au mtandao wa neva au kitu kingine kinaweza kutofautiana sana, lakini muundo wa msingi wa hazina yoyote ya sasa daima hubakia sawa. Kwa hivyo ni nini maoni yako, mtumiaji mpendwa, kuhusu kuunda hazina kama hiyo inayoongeza viendelezi kwa lugha ya Wolfram? Lugha ya Wolfram imeundwa kunyumbulika sana, kwa hivyo inaweza kupanuliwa na kurekebishwa kwa njia yoyote ile. Hali hii ni muhimu sana kwa uwezo wa kuunda miradi mikubwa ya programu kwa haraka katika Lugha ya Wolfram. Ikumbukwe hapa kwamba jinsi unyumbufu wa lugha unavyoongezeka, gharama ya miradi inayotekelezwa kwa lugha hiyo itaongezeka bila shaka. Hii ni kutokana na ukweli kwamba zaidi mtumiaji anatumia lugha hiyo, utendaji wa kujitolea zaidi anapokea, lakini hatupaswi kusahau kwamba mbinu hii inaweza pia kuwa na pande hasi katika suala la kutokuwa na uwezo wa kuhakikisha uthabiti thabiti wa moduli za programu.
Kuna shida ya kawaida na maktaba katika lugha za jadi za programu - ikiwa unatumia maktaba moja, kwa mfano, nambari itafanya kazi kwa usahihi, lakini ikiwa utajaribu kutumia maktaba nyingi, hakuna hakikisho kwamba wataingiliana kwa usahihi. . Pia, katika lugha za kitamaduni za programu - tofauti na lugha kamili ya kompyuta - hakuna njia ya kuhakikisha uwepo wa uwasilishaji thabiti uliojumuishwa kwa kazi zozote au aina za data isipokuwa miundo yao ya kimsingi. Lakini, kwa kweli, shida ni kubwa zaidi kuliko inavyoonekana kwa mtazamo wa kwanza: ikiwa mtu anaunda wima wa kiwango kikubwa cha utendaji, basi bila gharama kubwa za programu kuu ya mradi ambayo tunaweka katika lugha ya Wolfram, haiwezekani. kufikia uthabiti. Kwa hiyo ni muhimu kwamba moduli zote za programu daima zifanye kazi kwa usahihi.
Kwa hivyo wazo la hazina ya kipengele cha Wolfram ni kuzuia tatizo lililoainishwa hapo juu kwa kuongeza tu viendelezi kwa lugha katika vipande vidogo vya msimbo kupitia vipengele vya mtu binafsi ambavyo ni rahisi kukuza kama moduli madhubuti. Hiyo inasemwa, kuna vipengele vya programu ambavyo haviwezi kurahisishwa kwa kutumia vipengele vya mtu binafsi (na kampuni yetu inapanga kutoa algoriti ya programu iliyoboreshwa katika siku za usoni ili kusaidia kutekeleza vifurushi vya programu kwa kiwango kikubwa). Hata hivyo, kulingana na kazi ambazo tayari zimejengwa katika Lugha ya Wolfram, kuna uwezekano mwingi wa upangaji ambao unatekelezwa kulingana na kazi za kibinafsi. Wazo hapa ni kwamba kwa bidii kidogo ya programu inawezekana kuunda idadi ya kazi mpya na muhimu sana ambazo zitatoa mshikamano wa kutosha kwa muundo, zitaratibiwa vizuri na kila mmoja, na pia, kwa kuongeza hii, wao. itaweza kutumika kwa urahisi na kwa wingi katika lugha siku zijazo.
Njia hii, bila shaka, ni maelewano. Ikiwa kifurushi kikubwa kingetekelezwa, ulimwengu mpya mzima wa utendaji unaweza kufikiria ambao ungekuwa na nguvu sana na muhimu. Ikiwa kuna haja ya kupata utendaji mpya ambao utaendana na kila kitu kingine, lakini huna nia ya kutumia jitihada nyingi katika kuendeleza mradi huo, hii, kwa bahati mbaya, inaweza kusababisha kupunguzwa kwa upeo wa mradi wako. Wazo la hazina ya kipengele cha Wolfram ni kutoa utendakazi kwa sehemu inayobainisha ya mradi; mbinu hii itaongeza utendakazi wenye nguvu huku ikifanya iwe rahisi kudumisha uthabiti mzuri katika mradi wa programu.
Saidia kuongeza utendakazi maalum kwenye hazina ya chaguo la kukokotoa
Timu yetu imejitahidi sana kurahisisha watumiaji kuchangia vipengele vya hazina vya Wolfram. Kwenye eneo-kazi (tayari ndani
Kuna hatua mbili kuu ambazo utahitaji kutekeleza: kwanza, kwa kweli andika msimbo wa chaguo lako la kukokotoa na, pili, andika hati zinazoonyesha jinsi utendaji wako unapaswa kufanya kazi.
Bofya kitufe cha "Fungua Sampuli" hapo juu ili kuona mfano wa unachohitaji kufanya:
Kimsingi, unajaribu kuunda kitu sawa na kitendakazi kilichojengewa ndani katika Lugha ya Wolfram. Isipokuwa kwamba inaweza kufanya kitu maalum zaidi kuliko kazi iliyojengwa ndani. Wakati huo huo, matarajio kuhusu ukamilifu na uaminifu wake yatakuwa chini sana.
Unahitaji kuipa chaguo lako la kukokotoa jina linalofuata miongozo ya kutaja kazi ya Lugha ya Wolfram. Kwa kuongeza, utahitaji kuendeleza nyaraka za kazi yako, sawa na kazi za ndani za lugha. Nitazungumza juu ya hili kwa undani zaidi baadaye. Kwa sasa, angalia tu kwamba katika safu ya vifungo juu ya faili ya daftari ya ufafanuzi kuna kifungo
Unapohakikisha kuwa kila kitu kimejazwa vizuri na uko tayari, bofya kitufe cha "Angalia". Ni kawaida kabisa kwamba bado haujapata maelezo yote. Kwa hivyo kazi ya "Angalia" itaendesha kiotomatiki na kufanya ukaguzi mwingi wa mtindo na uthabiti. Mara nyingi, itakuhimiza mara moja kuthibitisha na kukubali masahihisho (Kwa mfano: "Mstari huu lazima umalizike na koloni," na itakuhimiza kuingia kwenye koloni). Wakati mwingine atakuuliza uongeze au ubadilishe kitu wewe mwenyewe. Tutakuwa tukiongeza vipengele vipya kila mara kwa utendakazi wa kiotomatiki wa kitufe cha Angalia, lakini kimsingi madhumuni yake ni kuhakikisha kuwa kila kitu unachowasilisha kwenye hazina ya vipengele tayari kinafuata kwa karibu miongozo mingi ya mitindo iwezekanavyo.
Kwa hiyo, baada ya kuendesha "Angalia", unaweza kutumia "Preview". "Onyesho la kuchungulia" huunda onyesho la kukagua ukurasa wa hati uliofafanua kwa chaguo lako la kukokotoa. Unaweza pia kuunda hakikisho la faili iliyoundwa kwenye kompyuta yako au faili iliyo kwenye hifadhi ya wingu. Ikiwa, kwa sababu fulani, haujaridhika na kile unachokiona katika hakikisho, rudi tu nyuma na ufanye masahihisho muhimu, na kisha ubofye kitufe cha Hakiki tena.
Sasa uko tayari kusukuma kazi yako kwenye hifadhi. Kitufe cha Kupeleka hukupa chaguzi nne:
Jambo muhimu katika hatua hii ni kwamba unaweza kuwasilisha kazi yako kwa hazina ya kazi ya Wolfram ili ipatikane kwa mtu yeyote. Wakati huo huo, unaweza pia kuweka utendaji wako kwa idadi ndogo ya watumiaji. Kwa mfano, unaweza kuunda chaguo la kukokotoa ambalo linapangishwa ndani ya nchi kwenye kompyuta yako ili ipatikane unapotumia kompyuta hiyo mahususi. Au unaweza kuichapisha kwenye yako
Kwa hivyo tuseme unataka kuwasilisha kitendakazi chako kwa msingi wa maarifa wa utendaji wa Wolfram. Ili kufanya hivyo, bofya kitufe cha "Wasilisha" kwenye hifadhi. Kwa hivyo ni nini kinachotokea wakati huu? Maombi yako yamewekwa kwenye foleni mara moja ili kukaguliwa na kuidhinishwa na timu yetu iliyojitolea ya wasimamizi.
Kadiri ombi lako linavyoendelea kupitia mchakato wa uidhinishaji (ambao kwa kawaida huchukua siku kadhaa), utapokea mawasiliano kuhusu hali yake na pengine mapendekezo ya matumizi ya baadaye. Lakini pindi kipengele chako kitakapoidhinishwa, kitachapishwa mara moja kwenye Hifadhi ya Kipengele cha Wolfram na kitapatikana kwa mtu yeyote kutumia. (Na hii itaonekana katika
Ni nini kinachopaswa kuwa kwenye hifadhi?
Ikumbukwe kwamba kampuni yetu ina viwango vya juu sana vya ukamilifu, kutegemewa na ubora wa jumla, na kati ya vitendaji 6000+ ambavyo tayari tumejenga katika lugha ya Wolfram katika kipindi cha miaka 30+ iliyopita, zote zinakidhi mahitaji yaliyo hapo juu. Lengo la Hazina ya Kazi ya Wolfram ni kutumia muundo na utendakazi wote ambao tayari upo katika Lugha ya Wolfram ili kuongeza vitendaji vyepesi zaidi (yaani, utendaji wa juu zaidi) iwezekanavyo.
Bila shaka, utendakazi katika hazina ya kazi ya Wolfram lazima ziambatane na kanuni za muundo wa Lugha ya Wolfram - ili ziweze kuingiliana kikamilifu na vitendaji vingine na matarajio ya watumiaji kuhusu jinsi kipengele hiki kinafaa kufanya kazi ipasavyo. Hata hivyo, si lazima utendakazi ziwe za ukamilifu sawa au kutegemewa.
Katika vipengele vilivyojumuishwa vya lugha ya Wolfram, tunafanya kazi kwa bidii kufanya utendakazi wa programu kuwa wa jumla iwezekanavyo. Hiyo inasemwa, unapokuwa kwenye hazina ya kazi ya Wolfram, hakuna chochote kibaya kwa kuwa na kazi ndani yake ambayo inashughulikia kesi fulani maalum lakini muhimu. Kwa mfano, kazi
Jambo lingine linalohusiana na kazi zilizojengwa ni kwamba kampuni yetu inafanya kila juhudi kushughulikia kesi zote za atypical, kushughulikia kwa usahihi pembejeo zisizo sahihi, na kadhalika. Katika hifadhi ya kazi, ni kawaida kabisa kuwa na kazi maalum ambayo inashughulikia kesi kuu za kutatua tatizo na kupuuza wengine wote.
Jambo lililo wazi ni kwamba ni bora kuwa na vitendaji vinavyofanya zaidi na kuifanya vizuri zaidi, lakini uboreshaji wa hazina ya kazi - kinyume na kazi zilizojengwa ndani ya lugha ya Wolfram - inapaswa kuwa na kazi nyingi zilizounganishwa na kazi zaidi badala ya kuzama ndani. michakato ya utekelezaji wa kila kazi maalum.
Sasa hebu tuangalie mfano wa kazi za kupima kwenye hifadhi. Matarajio ya uthabiti kwa vitendaji kama hivyo kwa kawaida ni ya chini sana kuliko vitendaji vya lugha vilivyojumuishwa. Hii ni kweli hasa katika hali ambapo utendakazi hutegemea rasilimali za nje kama vile API, ni muhimu kufanya majaribio mara kwa mara, ambayo hutokea kiotomatiki ndani ya kanuni za uthibitishaji. Katika faili ya nb, unaweza kubainisha ufafanuzi (katika sehemu ya Maelezo ya Ziada) na ubainishe majaribio mengi kama inavyofafanuliwa na mifuatano ya ingizo na pato au vibambo kamili vya aina.
Kama matokeo, hazina ya kazi itakuwa na idadi ya ugumu wa utekelezaji. Baadhi zitakuwa safu moja tu ya msimbo, zingine zinaweza kuhusisha maelfu au makumi ya maelfu ya mistari, ikiwezekana kutumia vitendaji vingi vya msaidizi. Ni lini inafaa kuongeza kazi ambayo inahitaji nambari ndogo sana kufafanua? Kimsingi, ikiwa kwa kazi kuna
Kusudi kuu la hazina ya kazi (kama jina lake linavyopendekeza) ni kuanzisha vipengele vipya katika lugha. Ikiwa unataka kuongeza data mpya au
Kwa kweli kuna njia mbili. Unaweza kutaka kutambulisha aina mpya ya kitu ambacho kitatumika katika vitendaji vipya kwenye hazina ya kazi. Na katika kesi hii, unaweza kuandika uwakilishi wake wa kiishara kila wakati na uitumie wakati wa kuingiza au kutoa kazi katika hazina ya kazi.
Lakini vipi ikiwa unataka kuwakilisha kitu na kisha kufafanua, kupitia vitendaji vilivyopo katika Lugha ya Wolfram, kwamba unataka kufanya kazi nacho? Lugha ya Wolfram daima imekuwa na utaratibu mwepesi wa hii, unaoitwa
Kwa hivyo, ni nini kinachoweza kuwa katika nambari ya kazi katika hazina ya kazi?
Je! msimbo wote wa hazina ya kipengele cha Wolfram unapaswa kuandikwa katika Wolfram? Kwa hakika, msimbo ulio ndani ya API ya nje haufai kuandikwa katika lugha ya Wolfram, ambayo hata haifanyi msimbo wa lugha. Kwa kweli, ukipata chaguo la kukokotoa katika karibu lugha yoyote ya nje au maktaba, unaweza kuunda kanga ambayo hukuruhusu kuitumia kwenye hazina ya kazi ya Wolfram. (Kawaida unapaswa kutumia kazi zilizojengwa kwa hili
Kwa hivyo kuna umuhimu gani wa kufanya hivi? Kimsingi, hii hukuruhusu kutumia mfumo mzima wa Lugha ya Wolfram uliojumuishwa na seti yake nzima ya uwezo wa programu. Ukipata utekelezaji wa msingi kutoka kwa maktaba au lugha ya nje, basi unaweza kutumia muundo tajiri wa ishara wa Lugha ya Wolfram kuunda utendaji wa hali ya juu unaoruhusu watumiaji kutumia kwa urahisi utendakazi wowote ambao tayari umetekelezwa. Angalau, hii inapaswa kuwezekana katika ulimwengu bora ambapo vizuizi vyote vya upakiaji wa maktaba n.k. vipo, ambapo vitashughulikiwa kiotomatiki na Lugha ya Wolfram. (Inapaswa kuzingatiwa kuwa katika mazoezi kunaweza kuwa na shida na
Kwa njia, unapotazama maktaba za kawaida za nje, mara nyingi zinaonekana kuwa ngumu sana kufunikwa katika kazi chache tu, lakini katika hali nyingi, ugumu mwingi unatokana na kuunda miundombinu inayohitajika kwa maktaba na kazi zote. kuunga mkono. Walakini, wakati wa kutumia Lugha ya Wolfram, miundombinu kwa kawaida tayari imejengwa ndani ya vifurushi, na kwa hivyo hakuna haja ya kufichua kazi hizi zote za usaidizi kwa undani, lakini kuunda tu vitendaji kwa kazi maalum za "juu" kwenye maktaba. .
"Mfumo wa ikolojia" wa msingi wa maarifa
Iwapo umeandika vipengele unavyotumia mara kwa mara, viwasilishe kwa Hazina ya Kazi ya Wolfram! Ikiwa kitu zaidi hakitoki kutoka kwa hii (maendeleo ya lugha), basi hata hivyo itakuwa rahisi zaidi kwako kutumia kazi kwa matumizi ya kibinafsi. Walakini, ni busara kudhani kwamba ikiwa unatumia kazi mara kwa mara, labda watumiaji wengine pia watapata kuwa muhimu.
Kwa kawaida, unaweza kujikuta katika hali ambapo huwezi - au hutaki - kushiriki kazi zako au katika tukio la kupata upatikanaji wa rasilimali za habari za kibinafsi. Hata katika hali kama hizi, unaweza tu kupeleka kazi katika akaunti yako ya wingu,
Kazi unazowasilisha kwa hazina ya kazi ya Wolfram si lazima ziwe kamilifu; ni lazima ziwe na manufaa tu. Hii ni kidogo kama sehemu ya "Makosa" katika uandikaji wa kawaida wa Unix - katika "Sehemu ya Ufafanuzi" kuna sehemu ya "Vidokezo vya Mwandishi" ambapo unaweza kuelezea mapungufu, matatizo, n.k. ambayo tayari unajua kuhusu utendakazi wako. Zaidi ya hayo, unapowasilisha kipengele chako kwenye hazina, unaweza kuongeza madokezo ya uwasilishaji ambayo yatasomwa na timu iliyojitolea ya wasimamizi.
Mara kipengele kinapochapishwa, ukurasa wake huwa na viungo viwili chini: "
Wakati mwingine unataka tu kutumia vitendaji kutoka kwenye hazina ya kazi ya Wolfram, kama vile vitendaji vilivyojengewa ndani, bila kuangalia misimbo yao. Walakini, ikiwa unataka kuangalia ndani, kila wakati kuna kitufe cha Notepad hapo juu. Bofya juu yake na utapata nakala yako mwenyewe ya daftari asili ya ufafanuzi ambayo iliwasilishwa kwenye hazina ya kipengele. Wakati mwingine unaweza kuitumia tu kama mfano kwa mahitaji yako. Wakati huo huo, unaweza pia kuendeleza marekebisho yako mwenyewe ya kazi hii. Unaweza kutaka kuchapisha vitendaji hivi ulivyopata kutoka kwenye hazina kwenye kompyuta yako au katika akaunti yako ya hifadhi ya wingu ya aphid, labda ungependa kuziwasilisha kwa msingi wa maarifa ya utendakazi, labda kama toleo lililoboreshwa, lililopanuliwa la chaguo la kukokotoa asili.
Katika siku zijazo, tunapanga kuunga mkono uundaji wa mtindo wa Git kwa hazina za vipengele, lakini kwa sasa tunajaribu kuifanya iwe rahisi, na kila mara tunayo toleo moja linalokubalika la kila kipengele kilichojumuishwa katika lugha. Mara nyingi zaidi (isipokuwa watengenezaji huacha kudumisha vipengee walivyotengeneza na kujibu mawasilisho ya watumiaji), mwandishi asilia wa kipengele huchukua udhibiti wa masasisho yake na kuwasilisha matoleo mapya, ambayo hukaguliwa na, ikiwa watapitisha mchakato wa ukaguzi. , iliyochapishwa katika lugha.
Hebu fikiria swali la jinsi "versioning" ya kazi zilizotengenezwa hufanya kazi. Hivi sasa, unapotumia kitendakazi kutoka kwa hifadhi ya kazi, ufafanuzi wake utahifadhiwa kwenye kompyuta yako (au kwenye akaunti yako ya wingu ikiwa unatumia wingu). Ikiwa toleo jipya la kipengele linapatikana, utakapokitumia tena utapokea ujumbe wa kukuarifu kuhusu hili. Na ikiwa unataka kusasisha kazi kwa toleo jipya, unaweza kuifanya kwa kutumia amri
Mojawapo ya mambo mazuri kuhusu Hazina ya Kazi ya Wolfram ni kwamba programu yoyote ya Lugha ya Wolfram, popote inaweza kutumia vitendaji kutoka kwayo. Programu ikionekana kwenye daftari, mara nyingi ni rahisi kufomati faili za hazina kama vitendaji rahisi kusoma vya "kitu cha binary kinachofanya kazi" (labda kwa seti ya toleo linalofaa).
Unaweza kufikia kitendakazi chochote kwenye hifadhi ya chaguo-kazi kwa kutumia maandishi
Jinsi gani kazi?
Ndani ya kazi kwenye hazina ya Wolfram hii inawezekana kwa kutumia sawa kabisa
Fikiria
Ndani unaweza kuona habari fulani kwa kutumia kitendakazi
Je, kuanzisha kazi ya rasilimali kunafanyaje kazi? Rahisi zaidi ni kesi ya kawaida. Hapa kuna mfano ambao unachukua kazi (katika kesi hii kazi safi tu) na kuifafanua kama kazi ya rasilimali kwa kipindi fulani cha programu:
Mara tu umefanya ufafanuzi, unaweza kutumia kazi ya rasilimali:
Kumbuka kuwa kuna aikoni nyeusi kwenye kitone hiki cha chaguo za kukokotoa . Hii ina maana kwamba chaguo za kukokotoa za BLOB hurejelea kipengele cha kukokotoa cha nyenzo ya kumbukumbu kilichobainishwa kwa kipindi cha sasa. Kipengele cha rasilimali ambacho kimehifadhiwa kwenye kompyuta yako au akaunti ya wingu kina ikoni ya kijivu . Na kuna ikoni ya chungwa kwa kipengele rasmi cha rasilimali katika Hifadhi ya Kipengele cha Wolfram .
Kwa hivyo ni nini hufanyika unapotumia menyu ya Panua kwenye Daftari ya Ufafanuzi? Kwanza, inachukua ufafanuzi wote katika notepad na kutoka kwao huunda mfano
Usambazaji wa ndani wa kazi kutoka kwa hifadhi kwenye kompyuta yako unafanywa kwa kutumia amri
Ukibofya kitufe cha Wasilisha kwa Hifadhi ya Kazi, nini kinatokea chini yake
Kwa chaguo-msingi, mawasilisho hufanywa chini ya jina linalohusishwa na Kitambulisho chako cha Wolfram. Lakini ikiwa unatuma maombi kwa niaba ya timu ya maendeleo au shirika, unaweza
Baada ya kuwasilisha chaguo zako zozote za kukokotoa kwa msingi wa maarifa ya utendakazi, itawekwa kwenye foleni kwa ukaguzi. Ukipokea maoni kama jibu, kwa kawaida yatakuwa katika mfumo wa faili ya maandishi na "kisanduku cha maoni" cha ziada kimeongezwa. Unaweza kuangalia hali ya programu yako kila wakati kwa kutembelea
Baadhi ya hila kazini
Kwa mtazamo wa kwanza inaweza kuonekana kama unaweza kuchukua daftari la ufafanuzi na kuiweka neno moja kwenye hazina ya kazi, hata hivyo, kwa kweli kuna hila nyingi zinazohusika - na kuzishughulikia kunahitaji kufanya programu ngumu ya meta, kushughulikia usindikaji wa ishara. kama msimbo unaofafanua kazi , na Notepad yenyewe imefafanuliwa. Mengi ya haya hutokea ndani, nyuma ya pazia, lakini inaweza kuwa na athari fulani ambazo zinafaa kueleweka ikiwa utachangia katika msingi wa maarifa ya kipengele.
Ujanja wa kwanza mara moja: Unapojaza Daftari ya Ufafanuzi, unaweza kurejelea kazi yako kila mahali kwa kutumia jina kama Kazi Yangu, ambayo inaonekana kama jina la kawaida la kazi katika Lugha ya Wolfram, lakini kwa hati za kumbukumbu za kazi hii inabadilishwa.
Ujanja wa pili: unapounda kitendakazi cha rasilimali kutoka kwa Daftari ya Ufafanuzi, vitegemezi vyote vinavyohusika katika ufafanuzi wa chaguo za kukokotoa lazima vinatwe na kujumuishwa kwa uwazi. Walakini, ili kuhakikisha kuwa ufafanuzi unabaki wa kawaida, unahitaji kuweka kila kitu kwa kipekee
Kwa kawaida hutaona ufuatiliaji wowote wa msimbo unaotumika kusanidi nafasi hii ya majina. Lakini ikiwa kwa sababu fulani unaita ishara isiyotekelezwa ndani ya kazi yako, basi utaona kuwa ishara hii iko katika muktadha wa ndani wa kazi. Walakini, wakati wa kusindika Notepad ya Ufafanuzi, angalau ishara inayolingana na kazi yenyewe ni
Hifadhi ya chaguo za kukokotoa ni ya kufafanua vitendaji vipya. Na kazi hizi zinaweza kuwa na chaguzi. Mara nyingi vigezo hivi (kwa mfano,
Vitendaji vingi hufanya tu kile wanachopaswa kufanya kila wakati vinapoitwa, lakini vitendaji vingine vinahitaji kuanzishwa kabla ya kuendesha kipindi fulani - na kutatua tatizo hili, kuna sehemu ya "Kuanzisha" katika sehemu ya Ufafanuzi.
Kazi kutoka kwa hazina zinaweza kutumia vitendaji vingine ambavyo tayari viko kwenye hazina; ili kuweka ufafanuzi wa hazina ya kazi ambayo inajumuisha kazi mbili (au zaidi) zinazorejeleana, lazima uzipeleke kwenye kipindi chako cha programu ili uweze. kumbukumbu kama juu yao
Matarajio ya maendeleo. Nini kifanyike wakati hazina inakuwa kubwa sana?
Leo tunazindua tu Hifadhi ya Kipengele cha Wolfram, lakini baada ya muda tunatarajia kwamba ukubwa na utendaji wake unaweza kuongezeka kwa kasi, na jinsi inavyokua katika maendeleo kutakuwa na matatizo mbalimbali ambayo tayari tunatarajia yanaweza kutokea.
Tatizo la kwanza linahusu majina ya kazi na upekee wao. Hifadhi ya kazi imeundwa kwa njia ambayo, kama vitendaji vilivyojengewa ndani katika Lugha ya Wolfram, unaweza kurejelea kitendakazi chochote ulichopewa kwa kubainisha tu jina lake. Lakini hii inamaanisha kuwa majina ya kazi lazima yawe ya kipekee ulimwenguni kote kwenye hazina, ili, kwa mfano, kuwe na moja tu.
Hili linaweza kuonekana kama tatizo kubwa mwanzoni, lakini inafaa kutambua kwamba kimsingi ni tatizo sawa na la mambo kama vile vikoa vya mtandao au vishikizo vya mitandao ya kijamii. Na ukweli ni kwamba mfumo unahitaji tu kuwa na msajili - na hili ni mojawapo ya majukumu ambayo kampuni yetu itatekeleza kwa msingi wa maarifa ya kazi ya Wolfram. (Kwa matoleo ya kibinafsi ya hazina, wasajili wao wanaweza kuwa wasimamizi.) Bila shaka, kikoa cha Intaneti kinaweza kusajiliwa bila kuwa na chochote juu yake, lakini katika hifadhi ya kazi, jina la kazi linaweza kusajiliwa tu ikiwa kuna ufafanuzi halisi wa. kazi.
Sehemu ya jukumu letu katika kudhibiti msingi wa maarifa ya utendaji wa Wolfram ni kuhakikisha kuwa jina lililochaguliwa kwa chaguo za kukokotoa lina mantiki kutokana na ufafanuzi wa chaguo hili na kwamba linafuata kanuni za kutaja za Lugha ya Wolfram. Tuna zaidi ya miaka 30 ya uzoefu wa kutaja vipengele vilivyojumuishwa ndani katika Lugha ya Wolfram, na timu yetu ya wasimamizi italeta uzoefu huo kwenye hazina ya kazi pia. Bila shaka, daima kuna tofauti. Kwa mfano, inaweza kuonekana kuwa bora kuwa na jina fupi kwa kazi fulani, lakini ni bora "kutetea" kwa jina refu, maalum zaidi kwa sababu kuna uwezekano mdogo wa kukutana na mtu anayetaka kutengeneza jina la utendaji sawa katika siku zijazo. .
(Ikumbukwe hapa kwamba kuongeza tu lebo fulani ya mwanachama ili kutofautisha utendakazi hakutakuwa na athari inayokusudiwa. Kwa sababu isipokuwa unasisitiza kugawa lebo kila wakati, utahitaji kufafanua lebo chaguo-msingi kwa utendakazi wowote, na pia kutenga lebo za mwandishi. , ambayo ingehitaji tena uratibu wa kimataifa.)
Kadiri msingi wa maarifa wa kazi za Wolfram unavyokua, mojawapo ya matatizo ambayo yanaweza kutokea ni ugunduzi wa vitendaji, ambavyo mfumo hutoa.
Kwa kazi zilizojengwa ndani ya Lugha ya Wolfram kuna kinachojulikana kama safu ya ugunduzi iliyotolewa na
Hifadhi ya utendaji kazi wa Wolfram imesanidiwa kama hazina ya utendakazi endelevu, ambapo kitendakazi chochote ndani yake kitafanya kazi kila mara. Bila shaka, matoleo mapya ya vipengele yanaweza kupatikana, na tunatarajia kwamba baadhi ya vipengele bila shaka vitaacha kutumika baada ya muda. Kazi zitafanya kazi ikiwa zinatumiwa katika programu, lakini kurasa zao za nyaraka zitaunganishwa na kazi mpya, za juu zaidi.
Hifadhi ya Kipengele cha Wolfram imeundwa ili kukusaidia kugundua vipengele vipya kwa haraka na kujifunza njia mpya za kutumia lugha ya Wolfram. Tuna matumaini makubwa kwamba baadhi ya yale ambayo yamegunduliwa katika hazina ya vipengele hatimaye yataleta maana ya kuwa sehemu zilizojengewa ndani za Lugha ya Wolfram. Katika muongo uliopita tumekuwa na seti kama hiyo
Jambo muhimu zaidi hapa ni kwamba chaguo la kukokotoa katika hifadhi ya kazi ni kitu ambacho kinapatikana kwa kila mtumiaji kutumia hivi sasa. Inawezekana kwamba kipengele cha lugha asili kinaweza kuwa bora zaidi na chenye utendaji zaidi, lakini hazina ya kipengele inaweza kuruhusu watumiaji kupata vipengele vyote vipya mara moja. Na, muhimu zaidi, dhana hii inaruhusu kila mtu kuongeza vipengele vyovyote vipya anavyotaka.
Hapo awali katika historia ya lugha ya Wolfram, wazo hili lisingefanya kazi vizuri kama lilivyofanya, lakini katika hatua hii kuna juhudi nyingi zinazowekwa katika lugha, na uelewa wa kina wa kanuni za muundo wa lugha, hivi kwamba sasa inaonekana sana. inawezekana kwa jumuiya kubwa ya watumiaji kuongeza vipengele ambavyo vitadumisha uthabiti wa muundo ili kuwafanya kuwa wa manufaa kwa anuwai ya watumiaji.
Kuna roho ya ajabu ya talanta(?) katika jumuiya ya watumiaji wa Lugha ya Wolfram. (Bila shaka, jumuiya hii inajumuisha watu wengi wanaoongoza wa R&D katika nyanja mbalimbali.) Ninatumai kwamba Hifadhi ya Kipengele cha Wolfram itatoa jukwaa mwafaka la kufungua na kusambaza ari hii ya talanta. Kwa pamoja tu tunaweza kuunda kitu ambacho kitapanua kwa kiasi kikubwa eneo ambalo dhana ya kompyuta ya lugha ya Wolfram inaweza kutumika.
Katika zaidi ya miaka 30, tumetoka mbali na lugha ya Wolfram. Sasa pamoja, twende mbali zaidi. Ninawahimiza sana watumiaji wote wanaoheshimiwa wa lugha ya Wolfram duniani kote kutumia hazina ya utendaji kama jukwaa la hili, pamoja na mradi mpya wa programu kama vile Injini ya Bure ya Wolfram kwa Wasanidi Programu.
Chanzo: mapenzi.com