Salve, Habr! Tuam animum advorto versionem Stephani Wolframi scriptoris post
Praevia linguae Wolframensis constantiae
Hodie stamus in limine magnarum rerum gestarum una cum lingua programmandi
The Wolfram Function Repositorium est aliquid possibilis a singulari linguae Wolframi natura non solum ut programmationis linguae, sed etiam quasi.
Exempli gratia, Wolfram munus repositorium iam continet
Item plus quam
Ut ad paginam pervenias, obiectum superius effingo (munus BLOB), crustulum in linea initus et munus currite - iam in Wolframi linguam aedificatum est et per default ab incepto sustentatur.
Notandum hic quod quando processus
Spero ut cum auxilio
Munera e promptuario continere possunt minuta vel magna fragmenta codicis in Wolframi Language scripta. For example, haec dici possunt
Testa et programmatio structurae Features Repositorii Wolframi ita ordinantur ut omnes ad communem causam conferre possint modo simplicissimo et opportuno - immo modo.
In hac accessu multa sunt negotiationes et singula, sed propositum est repositorium Wolframi optimize pluma tam ad experientiam usoris quam ut nova usorum lineamenta significanter ad evolutionem linguae conferant. Cum crescimus, haud dubito quin novas methodos componendi et validificandi functiones in conditorio aedificatas inveniendas debebimus, non saltem ad numerosos functionum ordinandos et inveniendos eos qui utentes egent. Attamen hortatur nos viam, quam elegimus, initium bonum esse. Ego personaliter
Augenda efficientiam cum reducendo costs
Etiam ante Interreti viae Wolframi linguae communicandi erant (primum consilium maius centralised erat
Socius noster per XXX annos plus diligenter laboravit ad integritatem linguae Wolframi conservandam, et hoc criticum est ut lingua Wolframi non modo programmatis, sed etiam linguae fiat.
Varii processus computationales fiunt in structura cuiusque functionis exsequendae. Animadvertendum hic est, necesse esse munus habere claram et aequabilem speciem et promptibilitatem visualium pro utentis. Hoc in contextu, constructum in functionibus linguae Wolframensis exhibentur plus quam 6000 sequentium exempla quomodo ad functiones rite programmata (haec nostra sunt.
Repositorium quod bene operatur creare est opus meta-programma interesting. Exempli causa, excessus restrictionum in programmatis adunationem et universalitatem algorithmi debitam obtinendam non permittit. Quemadmodum cum insufficiens restrictionibus functionis numeri, satis rectam algorithmi executionem efficere non poteris. Aliquot exempla praecedentium horum compromissi ad effectum deducendi, a nostro comitatu effectae, satis stabiliter operati sunt - haec sunt:
Omnia exempla superiorum notam fundamentalem habent - objecta et functiones in incepto collectas habent altissimum gradum structurae et distributionis processuum. Utique, proprietas structurae rei quae demom vel retis neuralis vel aliquid aliud valde variari potest, fundamentalis structura cuiusvis repositorii currentis semper eadem manet. Quid ergo censes, carissime user, de tali reposito creando, quod extensiones ad Wolframum linguam addit? Lingua Wolfram flexibilis maxime destinatur, ut quoquo modo extendi ac mutari possit. Haec res magni momenti est pro facultate celeriter varias magnas scalas programmata in Wolframi Language creandi. Animadvertendum hic est quod, sicut flexibilitas linguae crescit, sumptus consiliorum in tali sermone necessario augebitur. Hoc ex eo quod quo magis utens utitur tali lingua, magis dicatam functionem accipit, sed non obliviscendum est accessum etiam negativam habere in terminis progressionis modulorum congruentiam non posse efficere.
Difficultas communis est cum bibliothecis in programmandis linguis traditis - si unam bibliothecam uteris, exempli gratia, codicem recte faciet, sed si pluribus bibliothecis uti conaris, nulla cautio est ut recte inter se mutuo secant. . Etiam in programmandis linguis traditis - dissimilis lingua computandi plena mobilis - nullo modo praestare potest praesentiam consistentis aedificatam in repraesentationibus pro quibusvis functionibus vel data speciebus praeter earum structuras fundamentales. At re vera quaestio maior est quam primo aspectu videtur: si quis magnam scalam verticalem functionis aedificat, tunc sine ingentibus sumptibus programmationis centralised quam in Wolframi linguam inmisimus, fieri non potest. constantiam consequi. Magni interest ut omnes moduli programmata recte semper cooperentur.
Idea igitur post plumam Wolframi repositorium est vitare problema superius delineatum simpliciter addendo extensiones linguae in comparatione minutorum codicis per singula notas quae faciliores sunt ut moduli cohaerentes evolvendi. Id quod dixit, programmandi notas sunt quae singulis functionibus commodae fieri non possunt (et nostra societas parat programmationem optimized algorithmum in proximo futuro ad efficiendum magnas scalas software sarcinas adiuvandas). Nihilominus, muneribus iam in Wolfram Language constructis, multae programmationis possibilitates fundatae sunt quae in singulis functionibus adimplenda sunt. Ratio hic est, quod, cum molis programmandi relative parum possit creare plures functiones novas et utilissimas, quae sufficientem cohaerentiam cum consilio praebent, bene inter se componentur, et etiam, praeter hoc, sunt. facile ac late in futurum lingua poterit.
Aditus est sane compromissum. Si sarcina maior effecta esset, totus novus mundus functionisationis excogitari poterat quod praepotens et utilis esset. Si opus est novas functiones acquirere quae omnibus aliis aptabuntur, sed multum laboris in explicando incepto consumere non vis, hoc proh dolor potest reducere in propositi tui scopum. Idea post plumam Wolframi repositorium est ad partem definitivam propositi functionis praebere, haec accessio potentem functionem addet, dum facilius ad bonam constantiam in programmando incepto conservandam facit.
Auxilio addendo morem functionum ad munus repositorium
Manipulus noster laboravit ut facile usoribus utentes conferret ad lineamenta repositoria Wolfram. In desktop (iam in
Duo sunt gradus principales quos praestare debes: primum, codicem pro functione tua scribe actu, secundo scribe documenta illustrantia quomodo munus tuum operari debet.
Preme "Open Sample" conjunctionem in summo videre exemplum eorum quae facere debes:
Essentialiter conaris aliquid simile fabricato in functione in Wolfram Lingua creare. Excepto quod aliquid facere potest multo subtilius quam in munere aedificato. Eodem tempore, exspectatio de eius perfectione ac firmitate multo inferior erit.
Munus tuum nomen dare debes qui Wolframi linguae munus sequitur normas nominandi. Praeterea documenta evolvere debes pro functione tua, sicut constructo in functionibus linguae linguae. De hoc fusius postea loquar. Nunc enim solum animadvertere in ordine tesserarum in summo definitionis fasciculi libellos globulum esse
Cum certus es omnia rite impleta et parata es, preme deprime pyga. Omnino normale est quod nondum omnia singularia figurasti. Ita "reprehendo" munus sponte currit et multum facit stili et constantiae inhibet. Saepe statim te admonebit ut correctiones confirmes et recipias (Exempli gratia: "Haec linea cum colonia finienda est", et colonum inire suggeret. Aliquando rogabit te ut aliquid addas vel mutes te ipsum. Constanter novas notas addendo ad functionis televisificii perscriptios, sed basically propositum est curet ut omnia quae subiicias plumam repositorium iam proxime sequantur quam plurimas styli normas quam maxime.
Ita, post currit "Perhibere", "Praevius" uti potes. "Praevius" preview documentorum paginam quam ad munus tuum definitum creat. Potes etiam creare praevisionem pro lima in computatrum tuum creatum vel tabellam in repositione nubeculae positam. Si aliqua de causa non contentus es iis quae in praevisione vides, simpliciter revertere et emendas necessarias fac, et deinde iterum conjunctionem Praemonstrationis deprime.
Nunc parati estis munus tuum in repositorium mittere. Deploy puga tibi quattuor optiones:
Magna res in hoc gradu est ut munus tuum ad munus repositorium Wolfram submittere possis ut cuivis praesto sit. Simul, munus tuum ponere potes pro numero utentium numero. Exempli gratia, munus facere potes quod in computatro tuo localiter hosted est ut praesto sit cum particulari computatorio uteris. Aut post eam in
Dicamus igitur vis actualiter munus tuum ad Wolfram munus cognitionis addicere. Ad hoc fac, preme puga repositorium "Submittere". Quid ergo fit in tempore? Applicatio tua statim amet recognoscendi et approbationis a nostris curatoribus dedicatis.
Cum applicatione tua progrediatur per processum approbationis (quod typice aliquot dies accipit), communicationes accipies de statu suo et fortasse suggestiones pro futuro usu. Sed cum probata linea tua, statim ad Wolfram Repositorium Feature divulgabitur et cuicumque usui praesto erit. (Et hoc apparebit
Quid debet esse in repositione?
Animadvertendum est societatem nostram altissima signa esse ad perfectionem, constantiam et altiorem qualitatem, ac 6000+ functionum quae iam in lingua Wolfram per ante 30+ annos aedificata sunt, omnibus supradictis requisitis occurrentibus. Propositum Function Repositorii Wolframi est omni structurae et functionis functionis iam in Wolframi lingua utere ut quam plurimas functiones leviores (id est altiores functiones functiones) addere quam maxime.
Utique functiones in repositoria functionis Wolfram conformare debent cum consilio principiis linguae Wolfram - ut plene secant cum aliis muneribus et exspectationibus utentium quomodo munus recte operari debet. Sed functiones non debent esse aequalis perfectionis vel constantiae.
In munerum linguae Wolframi aedificato laboramus ut functiones programmandi quam maxime generales reddamus. Hoc dictum est, cum in repositoria functionis Wolfram nihil mali habeat quod in ea functionem simpliciter tractat aliquam valde specificam sed utilem causam. Munus exempli
Alterum punctum ad constructum-in functionibus refertur, quod nostra societas omnes conatus ad omnes casus atypicos tractandos facit, ut recte inputatio non recte tractatur, et sic porro. In munere reposito, omnino normale est ut sit munus speciale quod principales casus problema solvendi tractat et omnes alios ignoret.
In promptu est punctum melius habere functiones quae plus faciunt et melius faciunt, sed optimizatio pro functione repositorio - ut opponitur in functionibus linguae Wolframae constructo - plus functiones habere debet cum pluribus munerum fasciculis quam illatis. processus exsecutionis cuiusque functionis specificae.
Nunc inspiciamus exemplum probationis functionum in promptuario. Exspectationes constantiae talium functionum naturaliter multo inferiores sunt quam pro functionibus lingua aedificatis. Hoc praesertim verum est in casibus in quibus functiones ab opibus externis pendent sicut APIs, interest ut constantes probationes constanter gereret, quod automatice fit in verificatione algorithmorum. In fasciculo nb, definitiones expresse exprimere potes (in sectione Informationis additae) et totidem probationes denotare, quae vel inputant et output chordas definitas vel plenas notas obiectis typo
Quam ob rem, munus repositorium numerum exsecutionis complexitatum habebit. Alii unam tantum codicis lineam erunt, alii mille vel decem milia linearum involvere possunt, verisimiliter multis muneribus adiuvantibus utentes. Quando est operae pretium addere munus quod exiguum codicis definire debet? Plerumque, si ad munus non est
Praecipuum propositum functionis repositio (ut nomen fert) est novas lineas in linguam inducere. Si vis addere vel nova notitia
Dupliciter actu. Novum obiectum generis fortasse vis introducere, quae novis functionibus in munere promptuario adhibebitur. Et hoc in casu, semper tantum repraesentationem suam symbolicam scribere potes et ea uti cum functionibus inputandis vel outputando in munere reposito.
Sed quid si rem repraesentare vis ac deinde definire, per functiones in Wolframi Lingua existentes, id laborare vis? Lingua Wolframi semper levem machinam in hac re, quae vocatur
Ita, quid esset in reposito functionis codice in functione?
Num omnes codices ad Wolframi notam repositorium in Wolframo conscribantur? Profecto signum externum API intus in lingua Wolframi scribi non debet, quod ne lingua quidem efficit. Re vera, si functionem invenis in quavis fere lingua vel bibliotheca externa, fasciam facere potes quae in repositorio functionis Wolfram ea uti sinit. (Plerumque uti debetis constructo in muneribus pro hoc
Quid est igitur hoc facere? Essentialiter hoc tibi permittit ut Wolframi Systemate Linguae integrae integrata et tota eius una copia facultatum programmatum. Si basem exsecutionem ab externa bibliotheca vel lingua obtines, locupletibus symbolicis structurae Wolframensis linguae uti potes ut munus opportunum summo gradu creare sinat, quo utentes facile utantur quavis functione iam effecta. Saltem, hoc fieri potest in mundo optimo, ubi omnes instructiones bibliothecarum etc. onerantium exstant, quo casu ab ipso Wolframo Language tractentur. (Notandum quod in usu problemata possunt esse cum
Obiter, cum primum in bibliothecas externas typicas inspicias, saepe videntur nimis implicatae esse in paucis tantum functionibus obtegendae, sed in multis casibus, multum de multiplicitate provenit ut infrastructura opus sit ad bibliothecam et ad omnia functiones condendo. faveo . Cum autem Wolframmus Lingua utens, infrastructura typice iam in fasciculos aedificata est, et ideo non opus est omnia haec subsidia munera in specie exponere, sed solum functiones ad "summum" applicationis specialium functiones in bibliotheca creare. .
"Ecosystem" cognitionis basis
Si munera scripta habes quae regulariter uteris, Wolfram munus repositorium exhibe! Si quid plus ex hac (lingua evolutione non venit), tunc etiam tunc multo commodius erit tibi usui personali functionibus uti. Nihilominus, consentaneum est id assumere quod si regulariter functionibus uteris, fortasse alii utentes etiam eas utiles reperient.
Naturaliter, te ipsum invenies in casu quo non potes - vel non vis - munera tua communicare vel in casu accessus ad privatas informationes facultates. Etiam in talibus functionibus simpliciter explicari potes in ratione tua nubecula;
Munera repositorii munus tibi subicies Wolfram perfectum non habent; quod iustum est utile esse. Haec sectionis est sicut "Errores" in classic Documenta Unix - in "Definitionibus Sectio" exsistit sectionem "Notae Auctoris" ubi limitationes, quaestiones, etc. iam nosti de munere tuo. Praeterea cum repositorium subieceris, notas submissionis addere potes quae dedicata curatorum manipulus legentur.
Semel in lineamento divulgato, pagina eius duos nexus semper in imo habet: "
Aliquando vis muneribus uti e repositorio functionis Wolfram, qualia sunt in muneribus constructa, non inspecto eorum codice. Tamen, si vis introspicere, semper in summo puga nota est. Preme illud et habebis exemplar definitionis originalis tui, quod latum est ad repositorium plumae. Interdum modo uti potes ad exemplum necessitatis tuae. Eodem tempore, modificationem propriam huius functionis etiam evolvere potes. Has functiones e repositorio in computatro tuo vel in aphid tuo nubes repositionis computare velis postponere, fortasse munus cognitionis basis subicere vis, fortasse emendatam, dilatatam versionem functionis originalis.
In posterum consilium Git-style dumis pro pluma repositoria sustineat, sed nunc eam simplicem servare conamur et semper tantum versionem acceptam uniuscuiusque notae in lingua aedificatam habemus. Saepius quam non (nisi tincidunt conservare lineamenta quae elaboraverunt et usoribus submissionibus respondeant), primigenius auctor plumae potestatem updates ei capit et novas versiones submittit, quae tunc recensentur et, si processum retractationis transeunt. evulgata lingua.
Consideremus quaestionem quomodo opera functionum "versionis" excultae. Nunc, cum functione e repositorio uteris, definitio eius in computatro tuo stabilietur (vel in ob nubem tuam si nube uteris). Si nova versio plumae praesto est, proximo tempore ea uteris nuntium accipies de hac re certiorem te faciam. Et si munus renovare vis ad novam versionem, id facere potes utendo mandato
Una pulcherrimarum rerum de Wolfram Function Repositorium est quod programmata Linguae Wolfram, usquam functionibus inde uti possunt. Si programma in nota notatula apparet, saepe convenit munera repositoria formare, ut facile ad "munus objecti binarii" functiones (fortasse cum apposita versione apposita).
Potes semper accedere aliquem functionem in repositorio functionis utendi textu
Quid opus est?
Intra munera in repositorio Wolfram eadem prorsus uti potest
considerans
Intus videre potes aliqua notitia usura ad munus
How does opus munus instaurare resource? Simplicissimus est casus mere localis. Hic exemplum est quod munus accipit (hoc in casu tantum munus purum) et illud definit munus pro subsidio sessionis progressionis datae;
Postquam definitionem constituisti, munus resource uti potes;
Nota iconem nigram in hoc munere blob . esse . Hoc significat munus BLOB referre ad in- memoriam resource functionem definitam pro hodierna sessione. A pluma resource id quod est in computatrum tuum in perpetuum stored aut nubes propter icon griseo habet . Et est icon aurantiaca pro repositoria officialis in Repositorio Pluma Wolfram .
Quid ergo fit cum Expand menu in Definition Notebook? Primo accipit omnes definitiones in nota et ex eis facit symbolicum
Locus instruere functionis e reposito in computatrum tuum exercetur utens imperio
Si premes tesseram Submit pro Function Repositorium, quod sub illo accidit
Defaltam, submissiones fiunt sub nomine tuo cum Wolframo ID consociata. Sed si applicationem subicies pro quadrigis or organization evolutionis, potes
Postquam aliqua functionum tuarum ad basin cognitionis functionis subieceris, erit recenseri amet. Si commentarios in responsione recipias, plerumque erunt in forma textus fasciculi additis "cellulis comment" additis. Semper reprehendo statum applicationis tui visitare potes
Quidam argutiis ad opus
In primo aspectu videri potest sicut tu modo potes accipere definitionem libellorum et illud ad verbum pone in repositorio functionis, attamen multae subtilitates involutae sunt actu - et tractatio earum requirit ut quaedam meta-programma pulchre implicata, processus symbolici tractandi. ut Codex , qui munus definit , ipsa Nota definitur . Maxime hoc interne accidit, post scenas, sed potest habere aliquas implicationes, quae ad intellectum valent, si ad notam cognitionis turpitudinem conferendam es.
Prima subtilitas immediata: Cum definitionem Codicillus imples, simpliciter ad munus tuum referre potes ubique nomine simili utens MyFunctionquod spectat sicut nomen regulare pro functione in Wolfram Language, sed ad munus repositorium documentum hoc reponitur.
Secunda subtilitas: cum munus opis ex Definition Notebook creas, omnes dependentiae, quae in functione definitionis sunt, capi debent et expresse comprehendi. Sed ut modulationes definitiones manent, necesse est ut omnia singulariter ponas
Typice numquam ullum vestigium visurus es vestigium huius spatii ad hoc nomen configurandum. Sed si aliqua de causa symbolum subexecutum intra munus tuum vocaveris, videbis hoc symbolum esse in contextu functionis interni. Attamen, in Nota Definitio dispensandi, symbolum saltem functioni ipsi respondens est
Repositorium munus est novas functiones definire. Et ut harum officia optiones. Saepe horum ambitum (ex.g.
Pleraque munera simpliciter faciunt quae ad omne tempus vocantur supponuntur, sed aliquae functiones debent esse initialized antequam in peculiari sessione currere possint - et ad hanc quaestionem solvendam, subest "Initialization" pars in sectione definitione.
Munera e repositoria uti possunt aliis muneribus iam in repositorio, ut definitiones constituas pro reposito functionis quae duo (vel plura) inter se referentia includunt, eas in sessione progressionis tuae explicari debet ut possis referat sicut in illis
Progressus prospectus. Quid fiet cum repositorium magnum vere accipit?
Hodie solum Wolframum Feature Repositorium deducimus, sed tempus exspectamus ut eius magnitudo et functiones dramatice crescant et, dum in incremento progrediuntur, variae erunt difficultates quae iam anticipamus oriri posse.
Prima quaestio est de nominibus functionis eorumque singularitate. Repositorium munus ita designatum est ut, sicut constructum in muneribus in Wolfram Lingua, quodvis munus datum simpliciter referas, nomine eius designando. Sed hoc necessario significat functionem nomina debere esse singularia globally per repositorium, ut, exempli gratia, unum tantum esse possit.
Hoc videri potest sicut magna quaestio primo, sed dignum est animadvertere eandem quaestionem fundamentalem esse ac de rebus interretis ditionibus vel instrumentis socialibus tractantibus. Et hoc est quod ratio simpliciter debet habere registrarium - et hoc est unum e muneribus, quae nostra societas faciet pro munere cognitionis fundamentum Wolfram. (Pro versionibus privatis repositorii, eorum registratores administratores esse possunt.) Utique dominium interretialem describi potest sine aliquo in eo, sed in reposito functionis, nomen functionis tantum describi potest si adsit actualis definitio. munus.
Partem nostram in munere administrandi Wolfram, munus cognitionis basis est, curet ut nomen electum ad functionem logicam detur definitio functionis et quod sequitur conventiones nominationis Wolfram Language. Plus XXX annos experientiae habemus nominandi in functionibus in Wolframi Language aedificatis, et nostri curatores experientiam afferent ad munus repositorium. Sane semper sunt exceptiones. Exempli gratia, praeferendum videri potest breve nomen aliquod munus habere, sed satius est "defendere" cum longiore, specialius nomine, quia minus probabile est incurrere in aliquem volentem facere simile nomen in futuro. .
(Hic notandum est quod simpliciter addito aliquo membro tag ad functiones disambiguas intentum effectum non habebunt. Quia nisi semper tag assignare insistas, necesse erit defaltam tag pro quavis functione definire, et etiam auctori tags collocare. quae iterum coordinationem globalem requireret.
Cum scientia functionum Wolfram basis crescit, una ex problematibus, quae verisimiliter oriuntur, est inventio functionum, quas ratio praebet.
Ad aedificatum in muneribus in lingua Wolfram deprehensio stratum sic dictum est provisum
Munus repositorium Wolframum configuratur ut assiduum munus repositorii, ubi quodlibet munus in eo semper operatur. Utique novae versiones notarum in promptu possunt fieri, et speramus aliquas lineamenta utique obsolevisse tempore. Munera si in programs adhibebuntur operabuntur, sed paginae documentationes novis magis provectis muneribus coniungent.
The Wolfram Feature Repositorium destinatur ut tibi cito novas notas inveniat et novas vias discas uti lingua Wolfram. Optime sumus optimates aliquot eorum quae in promptuario pluma explorata sunt, tandem sensum efficere ut in partibus nuclei Wolfram Language facti sint. Super ultimo decennio nos similes paro
Praecipuum hic est quod munus in promptuario functionis est aliquid quod praesto est omni usuario nunc utendi. Fieri potest ut pluma linguae vernacula multo melius et praestantior esse possit, sed pluma repositorium permittat utentes aditus ad omnes novas lineas statim. Et, praesertim, hic conceptus permittit omnes notas quascumque novas cupiunt addere.
Antea in historia Wolframi lingua, haec idea non tam functus est quam habet, sed in hac scaena tantus labor est immissus in lingua latina, et tam profunda intellectus linguarum consiliorum principiorum, ut nunc valde videtur. possibilis est magna communitas usorum notas addere, quae consilium constantiae retinebunt ut utiles faciant amplis usoribus.
Incredibilis est spiritus ingenii (?) in communitate usoris Wolfram Linguae. (Scilicet haec communitas multos principes R&D homines in variis agris includit.) Spero Wolframum Feature Repositorium efficax praebebit suggestum ad hunc ingenii animum reserandum et disseminandum. Tantum simul aliquid creare possumus quod aream signanter expandet ad quam lingua Wolfram computandi paradigma applicari potest.
Plus quam XXX annos cum Wolframo lingua longe venimus. Nunc simul, etiam longius eamus. Omnes honorabiles linguae Wolframi circum orbem terrarum vehementer hortor ut repositorium pluma ut suggestum hoc, necnon novum consilium programmatum sicut Free Wolfram Engine pro Developers.
Source: www.habr.com