Fergees Wolfram Engine Library foar softwareûntwikkelders

Fergees Wolfram Engine Library foar softwareûntwikkelders
Orizjinele oersetting op myn blog

In pear fideo's oer Wolfram Language


Wêrom brûke jo noch gjin Wolfram-technologyen?

No, dit bart, en frij faak. Yn it proses fan kommunikaasje mei software-ûntwikkelders prate se frij flatterend oer ús technologyen, bygelyks oer hoe't se har wirklik holpen hawwe by it studearjen op skoalle of by it útfieren fan wittenskiplik wurk, mar as ik se dêrnei de fraach stel: "Dus jo brûke de tonge Wolfram Taal en syn komputermooglikheden yn jo softwaresystemen?"Soms antwurdzje se ja, mar te faak is der in ûnhandige stilte en dan sizze se,"Nee, mar is dit mooglik?".

Fergees Wolfram Engine Library foar softwareûntwikkeldersIk wol derfan oertsjûge wêze dat it antwurd op dizze fraach altyd allinich wêze sil: "Ja, it is maklik!" En om jo hjirmei te helpen, lansearje wy hjoed frije Wolfram Engine foar ûntwikkelders (Fergees Wolf Engine foar ûntwikkelders). It is in folweardige Wolfram Language-motor dy't kin wurde ynset op elk systeem en oproppen fan elk programma, taal, webserver, of wat oars ...

De Wolfram Engine is it hert fan al ús softwareprodukten. Dit is wat de Wolfram-taal ymplementearret, mei al syn komputearjende yntelliginsje, algoritmen, kennisbasis en sa fierder. Dit is wat ús hâldt buroblêd produkten (ynklusyf Mathematica), lykas ús wolk platfoarm. Dit is wat binnen sit Wolfram | Alpha, en yn mear en mear nûmers kearn produksje systemen yn ' e wrâld. En no, as lêste, jouwe wy de kâns om dizze motor fergees te downloaden foar it oplossen fan problemen brûke yn jo softwareûntwikkelingsprojekten oan elkenien dy't it wol.

Wolfram Language programmeertaal

In protte minsken witte oer de taal Wolfram Taal (faak allinnich yn 'e foarm fan it Mathematica-programma) as in krêftich systeem foar ynteraktyf berekkenjen, en ek foar wittenskiplik ûndersyk yn it ûnderwiis, gegevensferwurking en "Computational X" (kompjûtergebieten) foar in protte X (kennisgebieten). It wurdt lykwols hieltyd mear brûkt, sûnder dat it nei foaren brocht wurdt, as in kaaibestân by it bouwen fan produksjesoftwaresystemen. Dus wat kin de fergese Wolfram Engine-bibleteek no dwaan foar ûntwikkelders? "It ferpakt de taal op sa'n manier dat it handich is om it yn te foegjen yn in protte software-omjouwings en projekten.

Wy moatte hjir stilhâlde foar ferdúdliking, Hoe't ik de Wolfram-taal sjoch yn 'e realiteit fan hjoed. (It moat opmurken wurde dat jo it direkt online kinne útfiere yn Wolfram Taal sandbox). It wichtichste is om te realisearjen dat de Wolfram-taal yn syn hjoeddeistige foarm wier in fûneminteel nij softwareprodukt is, nammentlik folsleine komputertaal. Hjoed is it ekstreem machtich (symboalysk, funksjoneel, ... ) is in programmeartaal, mar it is folle mear dan dat, om't it de unike eigenskip hat dat it in enoarm oantal berekkeningskennisbases ynboud hat: kennis oer algoritmen, kennis oer de wrâld om ús hinne, kennis oer hoe te automatisearjen software produkten en prosessen.

Already oer 30 jier Us bedriuw ûntwikkelet systematysk alles wat de Wolfram-taal hjoed is. En ik bin foaral grutsk op it feit dat (hoewol't it frij lestich is, bygelyks ferwurkjen live fideo-útstjoerings!) hoefolle unifoarm, elegant en stabile software design wy binne der yn slagge om it yn de hiele taal út te fieren. Op it stuit de taal hat mear as 5000 funksjes, covering hast alle gebieten: fan fisualisaasje до masine learen, ferwurkjen fan numerike gegevens (numerike berekkeningen), grafyske ôfbylding ferwurking, mjitkunde, hegere wiskunde, natuerlike taalherkenning, lykas in protte oare gebieten kennis oer de wrâld om ús hinne (geografy, medisinen, keunst, engineering, wittenskip ensfh.)

De lêste jierren hawwe wy ek in protte krêftige programmearfunksjes tafoege oan 'e taal - it is direkt wolk ynset, netwurk programmearring, web ynteraksje, ferbining mei databases, ymportearje / eksportearje (mear dan 200 ekstra gegevensformaten), behear fan eksterne prosessen, programma testen, it meitsjen fan rapporten, kryptografy, blokje ensfh (de symboalyske struktuer fan 'e taal makket se tige fisueel en krêftich).

It doel fan de Wolfram-taal is ienfâldich, mar ek frij ambisjeus: alles wat nedich is moat yn de taal ynboud wurde en tagelyk sa automatisearre mooglik wêze.

Bygelyks: Needsaaklik analysearje it byld? Need geografyske gegevens? Sound ferwurking? Los it optimalisaasjeprobleem op? Wetter ynformaasje? Meitsje 3D Objekt? Anatomyske gegevens? Natuerlike taalerkenning (NLP)? Anomaly deteksje yn tiid rige? Stjoer in berjocht? Krij in digitale hantekening? Al dizze taken (en in protte oaren) binne gewoan funksjes dy't jo direkt kinne skilje fanút elk programma skreaun yn 'e Wolfram-taal. D'r is net nedich om te sykjen nei spesjalisearre softwarebiblioteken, en alles is fuortendaliks yn 'e taal ynboud.

Mar litte wy weromgean nei de berte fan kompjûtertechnyk - alles wat doe bestie wie allinich masinekoade, doe ferskynden ienfâldige programmeartalen. En al gau soe it sels fanselssprekkend wurde kinne dat in kompjûter in bestjoeringssysteem foarynstallearre hawwe soe. Letter, mei de komst fan netwurken, ferskynde de brûkersynterface, dan de middels om te ferbinen mei it netwurk.

Ik sjoch it as myn doel, tegearre mei de Wolfram-taal, om de brûker te foarsjen fan in nivo fan komputearjende yntelliginsje dy't yn essinsje alle berekkeningskennis fan ús heule beskaving befettet en minsken it mooglik makket foar fanselssprekkend te nimmen dat har kompjûter wit hoe't se objekten kinne werkenne yn in ôfbylding, hoe te lossen fergelikingen of berekkenje de befolking fan eltse stêd, likegoed as ûntelbere oplossings foar oare nuttige problemen.

Hjoed, mei de fergese Wolfram Engine foar ûntwikkelders, wolle wy ús produkt oeral en fluch beskikber meitsje foar software-ûntwikkelders.

Wolfram motor

De fergese Wolfram Engine-bibleteek foar ûntwikkelders ymplementearret de folsleine Wolfram-taal as in softwarekomponint dat direkt yn elke standert softwareûntwikkelingsstapel kin wurde pluggen. It kin rinne op elk standert systeemplatfoarm (Linux, Mac, Windows, raspberry pi,…; persoanlike kompjûter, tsjinner, firtuele, ferspraat, parallelized, ynbêde). Jo kinne it direkt brûke fan programma koade as fan kommandorigel. Jo kinne it neame út programmeartalen (Python, Java, .NET, C / C ++,...) of fan oare programma's lykas excel, jupyter, Ienheid, rhino ensfh. Jo kinne it neame fia ferskate media - sockets, ZeroMQ, MQTT of fia jo eigen ynboude WSTP (Wolfram Symbolic Transfer Protocol). It lêst gegevens en skriuwt nei hûnderten formaten (CSV, JSON, XML,...etc.), ferbynt mei databases (SQL, RDF/SPARQL, Mongo, ...) en kinne ek eksterne programma's belje (útfierbere triemmen, biblioteken…), fan browsers, mail tsjinners, APIs, apparaten, lykas talen (Python, NodeJ, Java, .NET, R, …). Yn 'e heine takomst sil it ek direkt kinne ferbine mei webservers (J2EE, aiohttp, Django, ...). Jo kinne jo Wolfram-taalkoade bewurkje en beheare mei standert IDE's, bewurkers en ark (Eklips, Ik begryp it idee, Atoom, Vim, Visual Studio Code, gean en oaren).

Fergese Wolfram-motor foar ûntwikkelders hat tagong ta de heule database Wolfram kennis troch fergees Wolfram Cloud Basic Subscription Plan. (As jo ​​gjin real-time gegevens nedich hawwe, kin alles yn 'e cache wurde en jo kinne de Wolfram Engine offline útfiere.) In basisabonnemint op Wolfram Cloud lit jo ek jo metoaden opslaan API yn 'e wolk.

In wichtich skaaimerk fan 'e Wolfram-taal is dat jo kinne rinne krekt deselde koade oeral. Jo kinne rinne it ynteraktyf mei Wolfram dokuminten - op in persoanlike kompjûter, yn de wolk as oan mobile telefoan. Jo kinne it útfiere yn 'e wolk API (of as in plande taak, ensfh.) yn Wolfram iepenbiere wolk of Wolfram Enterprise privee on-premises cloud. En no, mei de Wolfram Engine, kinne jo it ek maklik útfiere yn elke standert softwareûntwikkelingsstapel.

(Fansels, as jo ús heule "ultra-arsjitektuer" wolle benutte oer buroblêd, server, wolk, parallel, ynbêde, mobyl - en ynteraktyf, ûntwikkeling en produksjeberekkening - dan is in goed plak om te begjinnen Wolfram|Ien, dy't beskikber is as fergees proefferzje).

Opdracht

Dus hoe wurket lisinsje fan 'e fergese Wolfram Engine-bibleteek foar ûntwikkelders? Yn 'e ôfrûne 30+ jier hat ús bedriuw in heul ienfâldich gebrûk model: Wy hawwe ús software lisinsearre foar winst, wat ús mooglik makket om ús lange termyn missy troch te gean trochgeande en enerzjike wittenskiplike ûntjouwings. Wy hawwe ek in protte wichtige programma's fergees beskikber steld - dit is bygelyks ús haad Wolfram|Alpha website, Wolfram Player en tagong ta de Wolfram-wolk mei in basisabonnemint.

De fergese Wolfram Engine is ûntworpen foar ûntwikkelders om te brûken by it ûntwikkeljen fan klear software. Jo kinne it brûke om klearmakke softwareprodukten te ûntwikkeljen, sawol foar josels as foar it bedriuw wêrfoar jo wurkje. Jo kinne it brûke om persoanlike projekten thús, skoalle of wurk te ûntwikkeljen. Jo kinne it brûke om de Wolfram-taal te learen foar takomstige softwareprojekten. (As jo ​​​​ynteressearre binne, is dizze keppeling beskikber jildich lisinsje).

As jo ​​in klear software produkt (systeem) klear om te rinnen, kinne jo ek krije fergunning foar produksje mei de Wolfram Engine. Hoe't dit krekt wurket sil ôfhingje fan it spesifike softwareprodukt dat jo hawwe makke en oanbiede. D'r binne ferskate opsjes: foar ynset op it terrein, foar ynset fan bedriuwen, foar it fersprieden fan de Wolfram Engine-bibleteek mei software of hardware, foar ynset op cloud computing-platfoarms, en foar ynset yn Wolfram Cloud of Wolfram Enterprise Private Cloud.

As jo ​​​​in fergees, iepen boarne systeem bouwe, dan kinne jo in fergese lisinsje oanfreegje om de Wolfram Engine te brûken. Ek, as jo al in lisinsje by Wolfram lisinsje type (fan it type dat bestiet, bygelyks yn measte universiteiten), jo binne frij om de Free Wolfram Engine foar ûntwikkelders te brûken foar alles dat is spesifisearre yn 'e lisinsje.

Wy hawwe noch net alle mooglike nuânses behannele fan it brûken fan de Wolfram-motor, mar wy sette ús yn om fergunningferliening maklik te meitsjen foar de lange termyn (en wy wurkje om te soargjen dat de Wolfram-taal altyd beskikber en funksjoneel is, offline). Wy hawwe op it stuit stabile prizen op al ús softwareprodukten dy't binne boud oer 30+ jierren fan hurd wurk, en wy wolle sa fier mooglik bliuwe fan 'e protte gimmicks dy't spitigernôch al te gewoan wurden binne yn' e lêste tiid. lisinsje gebieten.

Brûk it foar jo sûnens!

Ik bin tige grutsk op wat wy hawwe kinnen meitsje mei de Wolfram-taal, en it is in genot west om alle útfinings, ûntdekkingen en ûntjouwings yn it ûnderwiis te sjen dy't yn dizze desennia berikt binne mei ús software. De lêste jierren is in fûneminteel nij nivo ûntstien yn it hieltyd wiidferspraat gebrûk fan de Wolfram-taal yn grutskalige softwareprojekten. Soms wurdt it hiele projekt allinnich yn de Wolframtaal boud. Soms wurdt de Wolfram-taal yntrodusearre om wat ekstra komputearjende yntelliginsje op heech nivo nei in spesifike lokaasje yn in projekt te bringen.

It doel fan 'e fergese Wolfram Engine foar ûntwikkelders is om it makliker te meitsjen foar elke brûker om de Wolfram-taal te brûken yn elk softwareûntwikkelingsprojekt en by it bouwen fan systemen dy't syn krêftige komputermooglikheden brûke.

Us team hat hurd wurke om de Free Wolfram Engine sa maklik te meitsjen foar ûntwikkelders om te brûken en yn te setten as mooglik. Mar as ynienen wat net wurket foar jo persoanlik of yn jo projekt op it wurk, dan asjebleaft stjoer my in brief! As alles goed is, brûk dan wat wy foar jo hawwe ûntwikkele en meitsje wat nijs op basis fan wat al makke is!

Oer oersettingOersetting fan Stephen Wolfram's post "Hjoed lansearje: Fergese Wolfram Engine foar ûntwikkelders
".

Ik sprek myn djippe tankberens út Peter Tenishev и Galina Nikitina foar help by oersetting en tarieding fan publikaasje.

Wolle jo leare hoe't jo programmearje yn 'e Wolfram-taal?
Sjoch wykliks webinars.
registraasje foar nije kursussen. Klear online kursus.
Oarder oplossings op Wolfram Language.

Boarne: www.habr.com

Add a comment