Wasmer 2.0, toolkit ad aedificationem WebAssembly-fundatur applicationes, est available

Consilium Wasmer suum secundum maiorem emissionem dimisit, evolutionis spatium explicans ad modulos WebAssembly exequendos, qui adhiberi possunt ad applicationes universales creandas, quae in diversis systematibus operandi possunt currere, et codicem in seiunctum non fidentem. Proiectum codicem in Rust scriptum est et sub licentia MIT distribuitur.

Portability obtinetur applicando codicem in humili gradu WebAssembly medium codicem componendo, qui in quolibet OS currere potest vel in programmatibus in aliis linguis programmandis inseri potest. Progressiones leves continentes quae WebAssembly pseudocode currunt. Continentia haec ad systema operantem non ligantur et in codice aliquo programmandi lingua originali scripta includere possunt. Instrumentum emscripten instrumenti ad WebAssembly adhiberi potest. Ut WebAssembly in machinae codicem tabulae hodiernae transferatur, nexum variarum compilationum tergum sustinet (Singlepass, Cranelift, LLVM) et machinas (JIT codici generationis vel machinae utens).

Accessus temperantiae et commercii cum systematis utendo WASI (WebAssembly System Interface) API praebetur, qui programmandi interfaces ad operandum cum fasciculis, basibus et aliis functionibus a systemate operante provisum est. Applicationes a principali systemate in sandbox in environment et accessum habent solum ad functionem declaratam (mechanismum securitatis in administratione capacitatis fundatum - pro actionibus cum singulis facultatibus (lima, directoria, bases, systema vocat, etc.); applicatio congruis potestatibus tribuenda est).

Ad vas WebAssembly deducendum, sicut Wasmer in systemate runtime instituo, quod sine dependentibus externis venit ("curl https://get.wasmer.io -sSfL | sh"), lima necessaria ("wasmer test.wasm" currit. ). Programmata distributa sunt in modum moduli WebAssembly regularis, qui administrari potest utens in sarcina procurator WAPM. Wasmer quoque praesto est ut bibliotheca quae in codice WebAssembly embedso adhibitum est in Rust, C/C++, C#, D, Python, JavaScript, Ire, PHP, Ruby, Elixir et Iava programmata.

suggestum permittit tibi ut applicationes exsecutionis perficiendi prope in patriis comitiis consequantur. Utens Native Object Engine pro modulo WebAssembly, potes codicem machinae generare ("wasmer -native compilare" ad generare praecompiled . sic, .dylib et .dll objecti), quod minimum runtime exigit ut currendum, sed omnem arenarum solitudinem retinet lineamentis. Possibile est programmata precompillata supplere in Wasmer constructa. Rust API et Wasm-C-API offeruntur ad additiones et extensiones creandas.

Notabilis mutatio in versionis numero Wasmer coniungitur cum introductione repugnantium mutationum internarum API, quae, secundum tincidunt, 99% usorum suggestuum non afficit. Inter mutationes quae compatibilitas frangunt, etiam mutatio formarum modulorum serialized Wasm (modorum serialized in Wasmer 1.0 in Wasmer 2.0 adhiberi non poterit). Aliae mutationes:

  • Support pro SIMD (Instructione unica, multiplex data) instructiones, datarum operationum parallelizationem permittens. Areas in quibus usus SIMD signanter emendare potest, apparatus discendi includunt, video modum translitterandi et decoctionis, processus imaginis, processus corporis simulationis, et manipulatio graphica.
  • Auxilia ad rationes referentias permittens Wasm modulorum informationes accedere in aliis modulis vel in ambitu subiectis.
  • Optimizationes significantes perficientur factae sunt. Velocitas LLVM runtime cum punctorum fluctuantium numerorum circiter 50 aucta est. Munus vocat signanter accelerata minuendis condicionibus ad nucleum exigentibus. Cranelift codice generantis effectus per 40% auctus est. Reducitur notitia deserialization tempus.
    Wasmer 2.0, toolkit ad aedificationem WebAssembly-fundatur applicationes, est available
    Wasmer 2.0, toolkit ad aedificationem WebAssembly-fundatur applicationes, est available
  • Ut verius essentiam consideremus, machinarum nomina mutata sunt: ​​JIT β†’ Universal, Nativa β†’ Dylib (Dynamic Library), Object File β†’ StaticLib (Static Library).

Source: opennet.ru