ON
← Natrag na feed
Mojo 1: Izgleda kao Python ali je mirniji
Germany🏛️ Politikaprije 7 dana

Mojo 1: Izgleda kao Python ali je mirniji

Modular, tvrtka pod nadzorom Qualcomma, objavila je stabilnu verziju 1.0 programskog jezika Mojo. Mojo je sličan Pythonu, ali je postao lakši i jedinstveniji. Jezik sada koristi semantičku verziju i ujedinio je tipove Pointer i UnsafePointer u jednu vrstu. Najvažnija promjena odnosi se na definiciju funkcije: ključna riječ 'fn' je uklonjena i zamijenjena 'def', čime su uvedena stroža pravila za funkcije. Osim toga, uvedena je nova Lambda-sintaksa, slična Pythonu, ali postavlja dodatne sintaksne zahtjeve. Kompilator sada također prepoznaje neispravne reference i odgovarajuće poruke o pogreškama.

0 svog programskog jezika Mojo. Jezik, koji po izgledu sliči Pythonu, uključuje značajke inspirirane Rustom, čineći ga učinkovitijim i ujednačenim. Ažuriranje uključuje poboljšanja kao što su ujedinjena deklaracija varijabli pomoću `var`, pojednostavljena zatvaranja i spajanje prethodno odvojenih tipova `Pointer` i `UnsafePointer` u jednu vrstu s eksplicitnim sigurnosnim markerima putem prefiksa `unsafe_`.

Po prvi put, dijelovi sučelja Mojo-a izričito su označeni kao stabilni. Jedna od najznačajnijih promjena uključuje definicije funkcija. Ranije je Mojo koristio ∀def` za Python-like funkcije i ∀fn` za strože provjerene funkcije. S verzijom 1, Modular je uklonio ∀fn`, zamijenivši ga s ∀def`. Ova promjena uvodi stroža pravila za ∀def`, zahtijevajući izričito rješavanje iznimaka putem ∀raises` ako se iznimci smiju baciti. Kompilator sada tretira ∀def` kao predmet tih strožih pravila, što znači da bi kod napisan s ∀fn` mogao propasti pod novim standardima osim ako se prilagodi.

Također je uvedena nova lambda sintaksa, opisana kao yPython-style, ali zahtijeva zagrljaje i tipove anotacija. Umjesto Python-a ∀lambda x: x 2`, Mojo koristi ∀lambda (x: Int) -> Int: x 2`. Kompilator je također dobio poboljšane mogućnosti otkrivanja grešaka. Može identificirati nevažeće reference, osobito u scenarijima u kojima bi upravljanje memorijom moglo dovesti do padova ili sigurnosnih ranjivosti. Na primjer, ako se popis povećava izvan dodijeljenog prostora i referenca ukazuje na staru lokaciju, Mojo to označava tijekom kompilacije, a ne tijekom pokretanja.

Primjer programa ilustrira to, pokazujući kako referenca na element liste postaje nevažeća nakon dodavanja novih podataka, što dovodi do jasne poruke o grešci. Modular ima za cilj riješiti dvosječni problem uobičajen u razvoju AI-a, gdje Python dominira zbog svoje jednostavnosti upotrebe, ali nedostaje performansi, često se oslanjajući na C, C ++ ili CUDA knjižnice za računanje. Mojo nudi statičko tipkanje, model vlasništva bez sakupljanja smeća i direktnu kontrolu hardvera, pozicionirajući ga bliže C ++ i Rust-u nego Pythonu unatoč svojoj poznatoj sintaksi.

Modular je osnovan u siječnju 2022. godine od strane Chrisa Lattnera, izvornog programera LLVM-a i Swift-a, i Tima Davisa, odgovornog za TensorFlow, XLA i TPU u Google-u.

Idi na primarne izvore (6)

Službeni izvori na kojima se izvještavanje temelji. Pročitaj ih izravno da zaobiđeš uokvirivanje.

1 izvještaja

heise online logoheise onlineNeovisanSredinaČinjenice 85Objektivnost 90prije 7 dana
Mojo 1: Izgleda kao Python ali je mirniji

Modular, tvrtka pod nadzorom Qualcomma, objavila je stabilnu verziju 1.0 programskog jezika Mojo. Mojo je sličan Pythonu, ali je postao lakši i jedinstveniji. Jezik sada koristi semantičku verziju i ujedinio je tipove Pointer i UnsafePointer u jednu vrstu. Najvažnija promjena odnosi se na definiciju funkcije: ključna riječ 'fn' je uklonjena i zamijenjena 'def', čime su uvedena stroža pravila za funkcije. Osim toga, uvedena je nova Lambda-sintaksa, slična Pythonu, ali postavlja dodatne sintaksne zahtjeve. Kompilator sada također prepoznaje neispravne reference i odgovarajuće poruke o pogreškama.

Procjena pristranosti (Sredina): Der Artikel beschreibt technische Entwicklungen und Änderungen in einer Programmersprache, ohne politische Positionen oder Meinungsäußerungen zu vertreten. To je objektivno izvještavanje o softverskim ažuriranjima i tehničkim poboljšanjima.

Zašto činjenice (85): The article accurately reports on the release of Mojo 1.0, mentioning the unification of variable declarations, closures, and pointer types, aligning with the primary source document. It also correctly notes the removal of 'fn' in favor of 'def', which matches details in the source. However, it omit

Zašto objektivnost (90): The article maintains a neutral tone overall, presenting facts about the language changes without overt bias. It uses technical terms appropriately and avoids emotional language. The mention of 'slimmer and more uniform' could be seen as slightly evaluative, but it remains mostly objective.

Kako je izvijestila svaka strana

Isti događaj, grupiran prema političkom nagibu medija koji su o njemu izvještavali.

Kako je izvijestila svaka strana

Podržite neovisne vijesti svjesne pristranosti i otključajte društveni puls, glasovanje zajednice i sve ostale značajke za podupiratelje.

Postani podupiratelj

Izvještavanje u svijetu

Isti događaj kako se o njemu izvještavalo u drugim zemljama.

Izvještavanje u svijetu

Podržite neovisne vijesti svjesne pristranosti i otključajte društveni puls, glasovanje zajednice i sve ostale značajke za podupiratelje.

Postani podupiratelj

Provjera tvrdnji

Ključne činjenične tvrdnje i koliko ih izvora potvrđuje odn. osporava.

Provjera tvrdnji

Podržite neovisne vijesti svjesne pristranosti i otključajte društveni puls, glasovanje zajednice i sve ostale značajke za podupiratelje.

Postani podupiratelj

Neka vijesti ostanu poštene.

ObjectiveNews financiraju čitatelji i bez oglasa je – pristranost vam pokazujemo, ne skrivamo. Podržite neovisno novinarstvo za 4 €/mjesec.

Postani podupiratelj

Povezane priče