Sugeng rawuh, Habr! Aku menehi perhatian sampeyan terjemahan saka kiriman Stephen Wolfram
Prasyarat kanggo konsistensi basa Wolfram
Dina iki kita ngadeg ing ambang prestasi gedhe bebarengan karo basa pamrograman
Repositori Fungsi Wolfram minangka barang sing bisa ditindakake kanthi sifat unik saka Basa Wolfram ora mung minangka basa pamrograman, nanging uga minangka
Contone, repositori fungsi Wolfram wis ngemot
Semono uga luwih saka
Kanggo pindhah menyang kaca, nyalin obyek ing ndhuwur (fungsi BLOB), tempel menyang baris input banjur jalanake fungsi kasebut - wis dibangun ing basa Wolfram lan didhukung kanthi standar diwiwiti karo
Sampeyan kudu nyatet kene sing nalika Processing
Mugi sing karo dhukungan
Fungsi saka gudang bisa ngemot potongan kode cilik utawa gedhe sing ditulis ing Wolfram Language. Contone, iki bisa dadi telpon
Struktur cangkang lan pemrograman Wolfram Feature Repository dirancang supaya saben wong bisa nyumbang kanggo sabab umum kanthi cara sing paling gampang lan trep kanggo dheweke - nyatane, mung
Ana akeh trade-off lan rincian ing pendekatan iki, nanging goal kita kanggo ngoptimalake repositori fitur Wolfram loro kanggo pengalaman pangguna lan kanggo mesthekake yen fitur panganggo anyar kontribusi meaningful kanggo pangembangan basa. Nalika kita tuwuh, aku ora mangu-mangu yen kita kudu nggawe cara anyar kanggo ngolah lan validasi fungsi sing dibangun ing gudang, paling ora kanggo ngatur akeh fungsi lan nemokake sing dibutuhake pangguna. Nanging, nyemangati yen dalan sing wis dipilih minangka wiwitan sing apik. Aku pribadi
Nambah efisiensi nalika nyuda biaya
Malah sadurunge Internet, ana cara kanggo nuduhake kode Wolfram Language (proyek terpusat utama pisanan kita yaiku
Luwih saka 30 taun, perusahaan kita wis makarya kanthi tekun kanggo njaga integritas struktur basa Wolfram, lan iki penting kanggo mesthekake yen basa Wolfram ora mung dadi basa pamrograman, nanging uga dadi basa pamrograman.
Ana macem-macem proses komputasi ing struktur implementasine saben fungsi. Perlu dicathet ing kene yen fungsi kasebut nduweni tampilan sing jelas lan seragam lan keterbacaan visual kanggo pangguna. Ing konteks iki, fungsi sing dibangun ing Wolfram Language diwenehi luwih saka 6000 conto urut-urutan babagan carane fungsi program kanthi bener (iki
Nggawe repositori sing bener-bener bisa digunakake minangka tugas pemrograman meta sing menarik. Contone, keluwihan watesan ing program kasebut ora bakal ngidini entuk penyatuan lan universalitas algoritma sing dibutuhake. Kaya jumlah watesan fungsi sing ora cukup, sampeyan ora bakal bisa ngetrapake urutan eksekusi algoritma sing cukup bener. Sawetara conto sadurunge ngleksanakake kompromi saka pendekatan kasebut, sing ditindakake dening perusahaan kita, bisa ditindakake kanthi stabil - yaiku:
Kabeh conto ing ndhuwur duwe fitur dhasar - obyek lan fungsi sing diklumpukake ing proyek kasebut duwe tingkat struktur lan distribusi proses sing dhuwur banget. Mesthine, rincian struktur apa sing demo utawa jaringan saraf utawa liya-liyane bisa beda-beda, nanging struktur dhasar kanggo repositori saiki tetep padha. Dadi, apa pendapat sampeyan, pangguna sing dikasihi, babagan nggawe repositori sing nambah ekstensi ing basa Wolfram? Basa Wolfram dirancang kanthi fleksibel, saengga bisa ditambah lan diowahi kanthi cara apa wae. Kahanan iki penting banget kanggo kemampuan nggawe macem-macem proyek piranti lunak kanthi cepet ing Wolfram Language. Perlu dicathet ing kene yen keluwesan basa mundhak, biaya proyek sing ditindakake ing basa kasebut mesthi bakal mundhak. Iki amarga kasunyatan manawa pangguna luwih akeh nggunakake basa kasebut, luwih akeh fungsi darmabakti sing ditampa, nanging kita ora lali manawa pendekatan iki uga duwe sisi negatif babagan ketidakmampuan kanggo njamin konsistensi modul program.
Ana masalah umum karo perpustakaan ing basa pemrograman tradisional - yen sampeyan nggunakake siji perpustakaan, umpamane, kode kasebut bakal bisa digunakake kanthi bener, nanging yen sampeyan nyoba nggunakake macem-macem perpustakaan, ora ana jaminan manawa bakal sesambungan kanthi bener. . Uga, ing basa pamrograman tradisional - ora kaya basa komputasi lengkap - ora ana cara kanggo njamin anané representasi sing dibangun kanthi konsisten kanggo fungsi utawa jinis data liyane saka struktur dhasar. Nanging, nyatane, masalah kasebut luwih gedhe tinimbang sing katon sepisanan: yen ana sing mbangun fungsi vertikal skala gedhe, mula tanpa biaya pemrograman proyek terpusat sing dilebokake ing basa Wolfram, ora mungkin. entuk konsistensi. Mulane penting yen kabeh modul piranti lunak tansah bisa digunakake kanthi bener.
Dadi, ide ing mburi repositori fitur Wolfram yaiku kanggo ngindhari masalah kasebut ing ndhuwur kanthi mung nambah ekstensi menyang basa ing potongan kode sing relatif cilik liwat fitur individu sing luwih gampang dikembangake minangka modul sing koheren. Sing dikandhakake, ana fitur pemrograman sing ora bisa ditindakake kanthi nggunakake fungsi individu (lan perusahaan kita ngrancang ngeculake algoritma pemrograman sing dioptimalake ing mangsa ngarep kanggo mbantu ngetrapake paket piranti lunak skala gedhe). Nanging, adhedhasar fungsi sing wis dibangun ing Wolfram Language, ana akeh kemungkinan program sing dileksanakake adhedhasar fungsi individu. Ide ing kene yaiku kanthi gaweyan pemrograman sing rada sithik, bisa nggawe sawetara fungsi anyar lan migunani banget sing bakal nyedhiyakake koherensi sing cukup kanggo desain kasebut, bakal dikoordinasi kanthi apik, lan uga, saliyane iki, padha bakal bisa gampang lan akeh digunakake ing basa ing mangsa ngarep.
Pendekatan iki, mesthi, kompromi. Yen paket sing luwih gedhe dileksanakake, bisa dibayangake fungsionalitas anyar sing bakal banget kuat lan migunani. Yen ana perlu kanggo njaluk fungsi anyar sing bakal pas karo kabeh liya, nanging sampeyan ora gelem nglampahi akèh gaweyan ing ngembangaken project, iki, sayangé, bisa mimpin kanggo abang ing orane katrangan saka project. Gagasan ing mburi repositori fitur Wolfram yaiku nyedhiyakake fungsi kanggo bagean sing ditemtokake saka proyek; pendekatan iki bakal nambah fungsi sing kuat nalika nggawe luwih gampang kanggo njaga konsistensi sing apik ing proyek pemrograman.
Mbantu nambahake fungsi khusus menyang repositori fungsi
Tim kita wis kerja keras kanggo nggampangake pangguna kanggo menehi kontribusi menyang fitur repositori Wolfram. Ing desktop (wis ing
Ana rong langkah utama sing kudu sampeyan lakoni: pisanan, tulis kode kanggo fungsi sampeyan lan, kapindho, tulisake dokumentasi sing nggambarake cara fungsi sampeyan kudu bisa digunakake.
Klik tombol "Open Sample" ing sisih ndhuwur kanggo ndeleng conto apa sing kudu sampeyan lakoni:
Ateges, sampeyan nyoba nggawe sing padha karo fungsi sing dibangun ing Wolfram Language. Kajaba iku bisa nindakake soko luwih spesifik saka fungsi dibangun ing. Ing wektu sing padha, pangarepan babagan kelengkapan lan linuwih bakal luwih murah.
Sampeyan kudu menehi jeneng fungsi sing miturut pedoman jeneng fungsi Wolfram Language. Kajaba iku, sampeyan kudu ngembangake dokumentasi kanggo fungsi sampeyan, padha karo fungsi basa sing dibangun. Aku bakal ngomong babagan iki kanthi luwih rinci mengko. Saiki, mung sok dong mirsani yen ing baris tombol ing ndhuwur file notebook definisi ana tombol
Yen sampeyan yakin kabeh wis diisi kanthi bener lan sampeyan wis siyap, klik tombol "Mriksa". Iku pancen normal yen sampeyan durung ngerti kabeh rincian. Dadi fungsi "Priksa" bakal kanthi otomatis mbukak lan nindakake akeh gaya lan mriksa konsistensi. Asring, bakal langsung njaluk sampeyan konfirmasi lan nampa koreksi (Contone: "Baris iki kudu diakhiri karo titik titik," lan bakal njaluk sampeyan ngetik titik titik). Kadhangkala dheweke bakal njaluk sampeyan nambah utawa ngganti dhewe. Kita bakal terus nambah fitur-fitur anyar menyang fungsi otomatis tombol Priksa, nanging tujuane yaiku kanggo mesthekake yen kabeh sing dikirim menyang repositori fitur wis ngetutake pedoman gaya sabisa.
Dadi, sawise mbukak "Priksa", sampeyan bisa nggunakake "Preview". "Pratinjau" nggawe pratinjau kaca dokumentasi sing ditetepake kanggo fungsi sampeyan. Sampeyan uga bisa nggawe pratinjau kanggo file sing digawe ing komputer utawa kanggo file sing ana ing panyimpenan awan. Yen, sakperangan alesan, sampeyan ora puas karo apa sing katon ing pratinjau, mung bali lan nggawe koreksi sing dibutuhake, banjur klik tombol Pratinjau maneh.
Saiki sampeyan siyap kanggo push fungsi menyang repositori. Tombol Deploy menehi sampeyan papat opsi:
Sing penting ing langkah iki yaiku sampeyan bisa ngirim fungsi menyang gudang fungsi Wolfram supaya kasedhiya kanggo sapa wae. Ing wektu sing padha, sampeyan uga bisa nyelehake fungsi kanggo pangguna sing winates. Contone, sampeyan bisa nggawe fungsi sing di-host sacara lokal ing komputer supaya kasedhiya nalika sampeyan nggunakake komputer kasebut. Utawa sampeyan bisa ngirim ing Panjenengan
Dadi ayo ngomong sampeyan pengin ngirim fungsi sampeyan menyang basis kawruh fungsi Wolfram. Kanggo nindakake iki, klik tombol "Kirim" menyang repositori. Dadi apa sing kedadeyan saiki? Aplikasi sampeyan langsung antri kanggo ditinjau lan disetujoni dening tim kurator khusus.
Nalika aplikasi sampeyan maju liwat proses persetujuan (sing biasane njupuk sawetara dina), sampeyan bakal nampa komunikasi babagan status lan bisa uga saran kanggo panggunaan ing mangsa ngarep. Nanging yen fitur sampeyan disetujoni, bakal langsung diterbitake menyang Wolfram Feature Repository lan bakal kasedhiya kanggo sapa wae sing bisa digunakake. (Lan iki bakal katon ing
Apa sing kudu ana ing panyimpenan?
Perlu dicathet yen perusahaan kita nduweni standar sing dhuwur banget kanggo kelengkapan, linuwih lan kualitas sakabèhé, lan saka 6000+ fungsi sing wis dibangun ing basa Wolfram sajrone 30+ taun kepungkur, kabeh nyukupi syarat ing ndhuwur. Sasaran saka Wolfram Function Repository yaiku nggunakake kabeh struktur lan fungsi sing wis ana ing Wolfram Language kanggo nambah akeh fungsi sing luwih entheng (yaiku, fungsi kinerja sing luwih dhuwur).
Mesthi, fungsi ing gudang fungsi Wolfram kudu salaras karo prinsip desain saka Wolfram Language - supaya padha bisa sesambungan kanthi lengkap karo fungsi liyane lan pangarepan pangguna carane fungsi kudu mlaku kanthi bener. Nanging, fungsi kasebut ora kudu padha karo jangkep utawa linuwih.
Ing fungsi sing dibangun ing basa Wolfram, kita kerja keras kanggo nggawe fungsi pemrograman kanthi umum. Menawi mekaten, nalika sampeyan lagi ing repositori fungsi Wolfram, ana apa-apa salah karo duwe fungsi sing mung nangani sawetara kasus banget tartamtu nanging migunani. Contone, fungsi
Titik liyane sing ana gandhengane karo fungsi sing dibangun yaiku perusahaan kita ngupayakake kabeh upaya kanggo nangani kabeh kasus sing ora umum, kanggo nangani input sing salah, lan liya-liyane. Ing repositori fungsi, iku pancen normal kanggo ana fungsi khusus sing nangani kasus utama kanggo ngatasi masalah lan nglirwakake kabeh liyane.
Titik sing jelas yaiku luwih becik duwe fungsi sing nindakake luwih akeh lan nindakake luwih apik, nanging optimasi kanggo gudang fungsi - minangka lawan saka fungsi sing dibangun ing basa Wolfram - kudu luwih akeh fungsi sing digabungake karo fungsi luwih akeh tinimbang nggoleki. proses implementasine saben fungsi tartamtu.
Saiki ayo goleki conto fungsi tes ing repositori. Pangarepan konsistensi kanggo fungsi kasebut mesthi luwih murah tinimbang fungsi basa sing dibangun. Iki utamané bener ing kasus ngendi fungsi gumantung ing sumber daya external kayata API, iku penting kanggo terus-terusan nganakake tes konsisten, kang otomatis kedaden ing kalkulus verifikasi. Ing file nb, sampeyan bisa nemtokake definisi kanthi jelas (ing bagean Informasi Tambahan) lan nemtokake akeh tes kaya sing ditetepake dening string input lan output utawa obyek karakter lengkap.
Akibaté, repositori fungsi bakal duwe sawetara kerumitan implementasine. Sawetara bakal mung siji baris kode, liyane bisa ndherek ewu utawa puluhan ewu baris, kamungkinan nggunakake akeh fungsi helper. Nalika iku worth nambah fungsi sing mbutuhake kode banget sethitik kanggo nemtokake? Sejatine, yen kanggo fungsi ana
Tujuan utama repositori fungsi (kaya jenenge) yaiku kanggo ngenalake fitur-fitur anyar menyang basa kasebut. Yen sampeyan pengin nambah data anyar utawa
Ana rong cara. Sampeyan bisa uga pengin ngenalake jinis obyek anyar sing bakal digunakake ing fungsi anyar ing gudang fungsi. Lan ing kasus iki, sampeyan bisa tansah mung nulis mudhun perwakilan simbolis lan nggunakake nalika inputting utawa outputting fungsi ing gudang fungsi.
Nanging yen sampeyan pengin makili obyek lan banjur nemtokake, liwat fungsi sing ana ing Wolfram Language, sing pengin digarap? Wolfram Language wis mesthi wis mekanisme entheng kanggo iki, disebut
Dadi, apa sing bisa ana ing kode fungsi ing repositori fungsi?
Apa kabeh kode kanggo repositori fitur Wolfram kudu ditulis ing Wolfram? Mesthine, kode ing API eksternal ora kudu ditulis nganggo basa Wolfram, sing malah ora nggawe kode basa. Ing kasunyatan,, yen sampeyan nemokake fungsi ing meh wae basa external utawa perpustakaan, sampeyan bisa nggawe pambungkus sing ngijini sampeyan kanggo nggunakake ing gudang fungsi Wolfram. (Biasane sampeyan kudu nggunakake fungsi sing dibangun kanggo iki
Dadi apa gunane nindakake iki? Intine, iki ngidini sampeyan nggunakake kabeh sistem Wolfram Language sing terintegrasi lan kabeh kemampuan piranti lunak sing digabungake. Yen sampeyan entuk implementasi dhasar saka perpustakaan utawa basa eksternal, sampeyan bisa nggunakake struktur simbolis sing sugih saka Wolfram Language kanggo nggawe fungsi tingkat ndhuwur sing trep sing ngidini pangguna gampang nggunakake fungsi sing wis ditindakake. Paling ora, iki kudu bisa ditindakake ing jagad sing cocog ing ngendi kabeh blok bangunan ngemot perpustakaan lan liya-liyane, mula bakal ditangani kanthi otomatis dening Wolfram Language. (Perlu dicathet yen ing praktik bisa uga ana masalah
Miturut cara, nalika pisanan katon ing perpustakaan external khas, padha asring katon banget Komplek kanggo dilindhungi mung sawetara fungsi, nanging ing akeh kasus, akeh kerumitan teka saka nggawe infrastruktur sing dibutuhake kanggo perpustakaan lan kabeh fungsi kanggo. ndhukung iku. Nanging, nalika nggunakake Wolfram Language, prasarana biasane wis dibangun ing paket, lan ora perlu kanggo mbabarake kabeh fungsi dhukungan ing rinci, nanging mung nggawe fungsi kanggo "paling ndhuwur" fungsi aplikasi-tartamtu ing perpustakaan. .
"Ekosistem" saka basis kawruh
Yen sampeyan wis nulis fungsi sing sampeyan gunakake kanthi rutin, kirimake menyang Repositori Fungsi Wolfram! Yen soko liyane ora metu saka iki (pangembangan basa), banjur bakal luwih trep kanggo nggunakake fungsi kanggo panggunaan pribadi. Nanging, logis kanggo nganggep yen sampeyan nggunakake fungsi kasebut kanthi rutin, bisa uga pangguna liyane bakal migunani.
Mesthi wae, sampeyan bisa nemokake dhewe ing kahanan sing ora bisa - utawa ora pengin - nuduhake fungsi sampeyan utawa yen sampeyan entuk akses menyang sumber informasi pribadi. Malah ing kasus kaya mengkono, sampeyan mung bisa masang fungsi ing akun maya dhewe,
Fungsi sing dikirim menyang gudang fungsi Wolfram ora kudu sampurna; mung kudu migunani. Iki kaya bagean "Kasalahan" ing dokumentasi Unix klasik - ing "Bagian Definisi" ana bagean "Cathetan Penulis" sing bisa njlèntrèhaké watesan, masalah, lan liya-liyane sing wis ngerti babagan fungsi sampeyan. Kajaba iku, nalika ngirim fitur menyang repositori, sampeyan bisa nambah cathetan kiriman sing bakal diwaca dening tim kurator khusus.
Sawise fitur diterbitake, kaca kasebut mesthi duwe rong tautan ing sisih ngisor: "
Kadhangkala sampeyan mung pengin nggunakake fungsi saka repositori fungsi Wolfram, kayata fungsi sing dibangun, tanpa ndeleng kode kasebut. Nanging, yen sampeyan pengin ndeleng ing njero, mesthi ana tombol Notepad ing sisih ndhuwur. Klik lan sampeyan bakal entuk salinan notebook definisi asli sing dikirim menyang repositori fitur. Kadhangkala sampeyan mung bisa nggunakake minangka conto kanggo kabutuhan sampeyan. Ing wektu sing padha, sampeyan uga bisa ngembangake modifikasi dhewe saka fungsi iki. Sampeyan bisa uga pengin ngirim fungsi iki sing ditemokake saka gudang ing komputer utawa ing akun panyimpenan maya aphid, mbok menawa sampeyan pengin ngirim menyang basis kawruh fungsi, mbok menawa minangka apik, versi ditambahi saka fungsi asli.
Ing mangsa ngarep, kita rencana kanggo ndhukung Git-gaya forking kanggo repositori fitur, nanging saiki kita nyoba kanggo tetep prasaja, lan kita tansah mung siji versi ditampa saka saben fitur dibangun ing basa. Luwih kerep tinimbang ora (kajaba pangembang nyerah kanggo njaga fitur sing dikembangake lan nanggapi kiriman pangguna), penulis asli fitur kasebut ngontrol nganyari kasebut lan ngirim versi anyar, sing banjur dideleng lan, yen lulus proses review. , diterbitake ing basa.
Ayo nimbang pitakonan babagan "versi" fungsi sing dikembangake. Saiki, yen sampeyan nggunakake fungsi saka gudang fungsi, definisi kasebut bakal disimpen kanthi permanen ing komputer (utawa ing akun maya yen sampeyan nggunakake awan). Yen versi anyar saka fitur kasedhiya, ing wektu sabanjuré sampeyan nggunakake, sampeyan bakal nampa pesen notifikasi iki. Lan yen sampeyan pengin nganyari fungsi kanggo versi anyar, sampeyan bisa nindakake iku nggunakake printah
Salah sawijining perkara sing apik babagan Repositori Fungsi Wolfram yaiku program Wolfram Language, ing ngendi wae bisa nggunakake fungsi kasebut. Yen program katon ing notepad, asring trep kanggo ngowahi format fungsi repositori minangka fungsi "obyek binar fungsi" sing gampang diwaca (mbok menawa nganggo versi sing cocog).
Sampeyan bisa ngakses sembarang fungsi ing gudang fungsi nggunakake teks
Carane ora iku bisa?
Nang fungsi ing gudang Wolfram iki bisa nggunakake persis padha
Coba
Nang sampeyan bisa ndeleng sawetara informasi nggunakake fungsi
Kepiye cara nyetel fungsi sumber daya? Sing paling gampang yaiku kasus lokal. Iki minangka conto sing njupuk fungsi (ing kasus iki mung fungsi murni) lan nemtokake minangka fungsi sumber daya kanggo sesi program tartamtu:
Sawise nggawe definisi, sampeyan bisa nggunakake fungsi sumber daya:
Elinga yen ana lambang ireng ing blob fungsi iki . Iki tegese fungsi BLOB nuduhake fungsi sumber daya ing memori sing ditetepake kanggo sesi saiki. Fitur sumber daya sing disimpen kanthi permanen ing komputer utawa akun maya sampeyan duwe lambang abu-abu . Lan ana lambang oranye kanggo fitur sumber resmi ing Wolfram Feature Repository .
Dadi apa sing kedadeyan nalika sampeyan nggunakake menu Expand ing Notebook Definition? Pisanan, njupuk kabeh definisi ing notepad lan saka wong-wong mau nggawe simbolis
Panyebaran lokal fungsi saka repositori ing komputer ditindakake kanthi nggunakake perintah kasebut
Yen sampeyan ngeklik tombol Kirim kanggo Repositori Fungsi, apa sing kedadeyan ing ngisor iki
Kanthi gawan, kiriman digawe miturut jeneng sing digandhengake karo ID Wolfram sampeyan. Nanging yen sampeyan ngirim aplikasi kanggo tim pangembangan utawa organisasi, sampeyan bisa
Sawise sampeyan wis ngirim sembarang fungsi kanggo basis kawruh fungsi, iku bakal queued kanggo review. Yen sampeyan nampa komentar kanggo nanggepi, biasane bakal ana ing wangun file teks kanthi tambahan "sel komentar". Sampeyan bisa tansah mriksa status aplikasi kanthi ngunjungi
Sawetara subtleties ing karya
Sepisanan bisa uga katon kaya sampeyan mung bisa njupuk notebook definisi lan sijine iku verbatim menyang repositori fungsi, Nanging, ana bener cukup akeh subtleties melu - lan nangani wong-wong mau mbutuhake nindakake sawetara meta-programming cantik Komplek, nangani pangolahan simbolis. minangka kode sing nemtokake fungsi, lan Notepad dhewe ditetepake. Umume kedadeyan kasebut sacara internal, ing mburi layar, nanging bisa uga duwe sawetara implikasi sing kudu dingerteni yen sampeyan bakal menehi kontribusi ing basis kawruh fitur.
Subtlety langsung pisanan: Nalika sampeyan ngisi Notebook Definition, sampeyan mung bisa ngrujuk menyang fungsi ing ngendi wae nggunakake jeneng kaya MyFunction, sing katon kaya jeneng biasa kanggo fungsi ing Wolfram Language, nanging kanggo dokumentasi repositori fungsi iki diganti.
Subtlety kapindho: nalika sampeyan nggawe fungsi sumber daya saka Notebook Definition, kabeh dependensi sing melu ing definisi fungsi kudu dijupuk lan eksplisit klebu. Nanging, kanggo mesthekake yen definisi tetep modular, sampeyan kudu sijine kabeh ing unik
Biasane sampeyan ora bakal weruh jejak kode sing digunakake kanggo ngatur ruang jeneng iki. Nanging yen sakperangan alesan sampeyan nelpon simbol sing ora dileksanakake ing njero fungsi sampeyan, sampeyan bakal weruh yen simbol iki ana ing konteks internal fungsi kasebut. Nanging, nalika ngolah Definition Notepad, paling ora simbol sing cocog karo fungsi kasebut
Repositori fungsi kanggo nemtokake fungsi anyar. Lan fungsi kasebut bisa uga duwe pilihan. Asring paramèter kasebut (contone,
Umume fungsi mung nindakake apa sing kudu ditindakake saben-saben diarani, nanging sawetara fungsi kudu diwiwiti sadurunge bisa mbukak ing sesi tartamtu - lan kanggo ngatasi masalah iki, ana bagean "Initialization" ing bagean Definition.
Fungsi saka repositori bisa nggunakake fungsi liyane sing wis ana ing repositori; kanggo nyetel definisi kanggo repositori fungsi sing kalebu rong (utawa luwih) fungsi sing ngrujuk saben liyane, sampeyan kudu masang ing sesi program supaya sampeyan bisa referensi kaya ing wong-wong mau
Prospek pembangunan. Apa sing kudu kedadeyan nalika gudang dadi gedhe?
Dina iki kita mung ngluncurake Wolfram Feature Repository, nanging suwe-suwe kita ngarepake ukuran lan fungsine bisa nambah sacara dramatis, lan nalika tuwuh ing pangembangan, bakal ana macem-macem masalah sing wis diantisipasi.
Masalah pisanan babagan jeneng fungsi lan keunikane. Repositori fungsi dirancang kanthi cara, kaya fungsi sing dibangun ing Wolfram Language, sampeyan bisa ngrujuk fungsi apa wae mung kanthi nemtokake jenenge. Nanging iki mesthi tegese jeneng fungsi kudu unik sacara global ing repositori, saengga, umpamane, mung ana siji.
Iki bisa uga katon kaya masalah gedhe ing wiwitan, nanging kudu dingerteni manawa sejatine masalah kasebut padha karo babagan domain internet utawa media sosial. Lan kasunyatane, sistem kasebut mung kudu duwe registrar - lan iki minangka salah sawijining peran sing bakal ditindakake perusahaan kita kanggo basis pengetahuan fungsi Wolfram. (Kanggo versi pribadi saka repositori, registrar bisa dadi administrator.) Mesthi wae, domain Internet bisa didaftar tanpa ana apa-apa, nanging ing repositori fungsi, jeneng fungsi mung bisa didaftar yen ana definisi nyata babagan fungsi kasebut.
Bagéyan saka peran kita ngatur basis kawruh fungsi Wolfram kanggo mesthekake yen jeneng sing dipilih kanggo fungsi iku logis diwenehi definisi fungsi lan nderek konvensi jeneng Wolfram Language. Kita duwe pengalaman luwih saka 30 taun kanggo menehi jeneng fungsi sing dibangun ing Wolfram Language, lan tim kurator kita bakal nggawa pengalaman kasebut menyang repositori fungsi uga. Mesthi wae, mesthi ana pangecualian. Contone, misale jek luwih becik duwe jeneng cendhak kanggo sawetara fungsi, nanging luwih becik "mbela" kanthi jeneng sing luwih dawa lan luwih spesifik amarga sampeyan ora bakal nemoni wong sing pengin nggawe jeneng fungsi sing padha ing mangsa ngarep. .
(Sampeyan kudu dicathet ing kene yen mung nambah sawetara tag anggota kanggo disambiguasi fungsi ora bakal duwe efek sing dikarepake. Amarga yen sampeyan ora ngeyel yen tag tansah ditugasake, sampeyan kudu nemtokake tag standar kanggo fungsi apa wae, lan uga menehi pangarang. tags, sing maneh mbutuhake koordinasi global.)
Minangka basis kawruh saka fungsi Wolfram mundak akeh, salah siji saka masalah sing kamungkinan bakal njedhul yaiku nemokake fungsi, kang sistem nyedhiyani
Kanggo fungsi sing dibangun ing Wolfram Language ana sing diarani lapisan deteksi sing diwenehake dening
Repositori fungsi Wolfram dikonfigurasi minangka gudang fungsi sing terus-terusan, ing ngendi fungsi apa wae bakal bisa digunakake. Mesthi, versi anyar saka fitur bisa dadi kasedhiya, lan kita ngarepake sawetara fitur bakal dadi lungse liwat wektu. Fungsi kasebut bakal bisa digunakake yen digunakake ing program, nanging kaca dokumentasi bakal nyambung menyang fungsi anyar sing luwih maju.
Repositori Fitur Wolfram dirancang kanggo mbantu sampeyan nemokake fitur anyar kanthi cepet lan sinau cara anyar kanggo nggunakake basa Wolfram. Kita optimis banget yen sawetara sing wis ditliti ing repositori fitur pungkasane bakal dadi bagian sing dibangun ing inti Wolfram Language. Ing dasawarsa pungkasan, kita duwe set sing padha
Sing paling penting ing kene yaiku fungsi ing repositori fungsi yaiku sing kasedhiya kanggo saben pangguna saiki. Bisa uga fitur basa asli bisa luwih apik lan luwih apik, nanging repositori fitur bakal ngidini pangguna bisa ngakses kabeh fitur anyar kanthi langsung. Lan, sing paling penting, konsep iki ngidini saben wong nambah fitur anyar sing dikarepake.
Sadurungé ing sajarah basa Wolfram, gagasan iki ora bakal bisa kaya sing wis ana, nanging ing tahap iki ana akeh gaweyan ing basa kasebut, lan pemahaman sing jero babagan prinsip desain basa, sing saiki katon banget. bisa kanggo komunitas gedhe pangguna kanggo nambah fitur sing bakal njaga konsistensi desain supaya migunani kanggo sawetara saka sudhut pangguna.
Ana semangat bakat sing luar biasa (?) ing komunitas pangguna Wolfram Language. (Mesthi, komunitas iki kalebu akeh ahli R & D anjog ing macem-macem lapangan.) Mugi sing Wolfram Feature Repository bakal nyedhiyani platform efektif kanggo mbukak kunci lan disseminating semangat bakat iki. Mung bebarengan kita bisa nggawe soko sing Ngartekno nggedhekake wilayah sing bisa Applied paradigma komputasi basa Wolfram.
Ing luwih saka 30 taun, kita wis teka adoh karo basa Wolfram. Saiki bebarengan, ayo luwih maju. Aku banget nyengkuyung kabeh pangguna sing dihormati saka basa Wolfram ing saindenging jagad nggunakake gudang fungsional minangka platform kanggo iki, uga proyek piranti lunak anyar kayata Mesin Wolfram Gratis kanggo Pangembang.
Source: www.habr.com