Этот сайт использует файлы cookies. Продолжая просмотр страниц сайта, вы соглашаетесь с использованием файлов cookies. Если вам нужна дополнительная информация, пожалуйста, посетите страницу Политика файлов Cookie
Subscribe
Прямой эфир
Cryptocurrencies: 9963 / Markets: 82358
Market Cap: $ 2 432 007 753 465 / 24h Vol: $ 47 549 863 292 / BTC Dominance: 54.587026436328%

Н Новости

Язык программирования Mojo: что нового в версии 24.3?

a156b8541ec86545f2741744f59c1de6.jpg

На днях была опубликована новая версия языка программирования Mojo, теперь это 24.3. Новинка получила несколько важных компонентов, которые требуются для создания приложений на этом языке. Например, компилятор, интерактивная REPL-оболочка для сборки и запуска программ, отладчик, дополнение к редактору кода Visual Studio Code (VS Code) и т. п.

Стоит отметить, что исходники открыты под лицензией Apache 2.0. После того как будет завершено проектирование внутренней архитектуры, разработчики откроют и код компилятора. Ну а подробности изменений и дополнений — под катом.

Что это за язык такой?

fe4e0d948440efb94d7a766bbc5b0c28.png

Mojo — специализированный ЯП, созданный компанией Modular и ориентированный на разработку в сфере машинного обучения. Выпущен в мае 2023 года. Mojo позиционируется как более продвинутая альтернатива Python, практически полностью совместим с ним и его библиотеками, но при этом показывает лучшую производительность, аналогичную таким довольно низкоуровневым языкам программирования, как C и C++.

Ключевые приоритеты языка — разработка в области искусственного интеллекта и системное программирование. Mojo умеет взаимодействовать с SIMD-командами, из-за чего позволяет выполнять множество алгебраических операций за раз, что положительно сказывается на производительности.

ea54654000723cbacdfc1aa10b5d5d0f.png

Кроме того, у Mojo нет сборщика мусора, вместо этого он применяет семантику перемещения, сильно похожую на ту, что есть в Rust. Данный подход позволяет языку безопасно и быстро удалять неиспользуемые ресурсы и отказаться от рантайма.

По словам разработчиков, Mojo — отлично продуманная система, в фундаменте языка — MLIR, который не является новинкой. Он совершенствуется в течение многих лет. Команда проекта понимала, что требуется для ядра «языка программирования для ИИ», поэтому сделала максимум, чтобы оптимально всё реализовать.

Ещё одно достоинство Mojo — использование синтаксиса Python, благодаря чему некоторые разработчики называют этот ЯП Python++. Создатели языка решили использовать синтаксис, чтобы избежать одной из самых сложных частей в проектировании и реализации ЯП. Есть, конечно, и некоторое количество новых элементов, но оно небольшое.

Команда этого ЯП — вовсе не новички, у всех них огромный опыт в этой отрасли. Благодаря этому им удалось применить лучшие практики, избежав слабых мест и проблем других ЯП. Стоит отметить, что с развёртыванием Mojo дела обстоят примерно так же, как и у С. Так, приложение с matmul, т. е. матричным умножением, занимает всего 100 КБ. При помощи Mojo можно относительно быстро писать легко развёртываемые приложения, которые в полной мере используют многоядерность и многопоточность систем.

Что нового?

2e089ad1febe759395196dae022d5397.png

В общем-то, достаточно много всего:

  • так, в модули для работы с коллекциями (List, Dict, Set и Tuple) добавлены возможности, делающие их более привычными пользователям, знакомым с языком программирования Python. В типе List теперь появились методы, которые повторяют Python API. Это в первую очередь pop(index), resize(new_size) и insert(index, value)

  • кроме того, обновлены типы. Так, в типе Dict теперь есть метод update() для обновления ключа/значения из другого Dict. В Tuple добавили возможность работы с типами, которые хранятся лишь в памяти. Это, например, String. В результате можно указать "x = tup[1]" вместо "x = tup.get[1, Int]()" и присваивать значения через "tup[1] = x". И в типе Set добавлена поддержка именованных методов. Их можно применять вместо операторов: difference() вместо "-", difference_update() вместо "-=", intersection_update() вместо "&=" и update() вместо "|="

  • нельзя забывать и о добавлении новых функций. Например, reversed(), которая предоставляет возможность изменить порядок следования элементов на обратный

  • функция reversed() может применяться с List, Dict и любыми типами, поддерживающими диапазоны значений

var numbers = List(1, 2, 3, 4, 5)
for number in reversed(numbers):
               print(number)
  • оптимизирована поддержка вариативных аргументов. Так, разработчики теперь дают возможность определить функции, которые содержат как необязательные, так и вариативные аргументы

fn variadic_arg_after_default(
               a: Int, b: Int = 3, *args: Int, c: Int, d: Int = 1, **kwargs: Int
   ): ...
  • появились в новой версии функции __source_location() и __call_location() для определения местоположения (номер строки в исходных текстах) вызовов функций и кода

  • добавлена поддержка аргумента whence, как это организовано в методе FileHandle.seek()

  • тип AnyPointer переименован в UnsafePointer. Добавлена возможность инициализации UnsafePointer напрямую из ссылки с типом Reference ("UnsafePointer(someRef)"). Для работы с указателями UnsafePointer добавлены функции initialize_pointee_copy, initialize_pointee_move, move_from_pointee() и move_pointee

Вместе с новым релизом представлен и движок MAX Engine 24.3, предлагающий платформу для проектов в области машинного обучения. Он дополняет инструментарий Mojo средствами для разработки и отладки приложений, использующих ML-модели в различных форматах (TensorFlow, PyTorch, ONNX и т. п.). Сборки Mojo SDK и MAX Engine подготовлены для платформ Linux и macOS.

Источник

  • 07.09.23 16:24 CherryTeam

    Cherry Team atlyginimų skaičiavimo programa yra labai naudingas įrankis įmonėms, kai reikia efektyviai valdyti ir skaičiuoti darbuotojų atlyginimus. Ši programinė įranga, turinti išsamias funkcijas ir patogią naudotojo sąsają, suteikia daug privalumų, kurie padeda supaprastinti darbo užmokesčio skaičiavimo procesus ir pagerinti finansų valdymą. Štai keletas pagrindinių priežasčių, kodėl Cherry Team atlyginimų skaičiavimo programa yra naudinga įmonėms: Automatizuoti ir tikslūs skaičiavimai: Atlyginimų skaičiavimai rankiniu būdu gali būti klaidingi ir reikalauti daug laiko. Programinė įranga Cherry Team automatizuoja visą atlyginimų skaičiavimo procesą, todėl nebereikia atlikti skaičiavimų rankiniu būdu ir sumažėja klaidų rizika. Tiksliai apskaičiuodama atlyginimus, įskaitant tokius veiksnius, kaip pagrindinis atlyginimas, viršvalandžiai, premijos, išskaitos ir mokesčiai, programa užtikrina tikslius ir be klaidų darbo užmokesčio skaičiavimo rezultatus. Sutaupoma laiko ir išlaidų: Darbo užmokesčio valdymas gali būti daug darbo jėgos reikalaujanti užduotis, reikalaujanti daug laiko ir išteklių. Programa Cherry Team supaprastina ir pagreitina darbo užmokesčio skaičiavimo procesą, nes automatizuoja skaičiavimus, generuoja darbo užmokesčio žiniaraščius ir tvarko išskaičiuojamus mokesčius. Šis automatizavimas padeda įmonėms sutaupyti daug laiko ir pastangų, todėl žmogiškųjų išteklių ir finansų komandos gali sutelkti dėmesį į strategiškai svarbesnę veiklą. Be to, racionalizuodamos darbo užmokesčio operacijas, įmonės gali sumažinti administracines išlaidas, susijusias su rankiniu darbo užmokesčio tvarkymu. Mokesčių ir darbo teisės aktų laikymasis: Įmonėms labai svarbu laikytis mokesčių ir darbo teisės aktų, kad išvengtų baudų ir teisinių problemų. Programinė įranga Cherry Team seka besikeičiančius mokesčių įstatymus ir darbo reglamentus, užtikrindama tikslius skaičiavimus ir teisinių reikalavimų laikymąsi. Programa gali dirbti su sudėtingais mokesčių scenarijais, pavyzdžiui, keliomis mokesčių grupėmis ir įvairių rūšių atskaitymais, todėl užtikrina atitiktį reikalavimams ir kartu sumažina klaidų riziką. Ataskaitų rengimas ir analizė: Programa Cherry Team siūlo patikimas ataskaitų teikimo ir analizės galimybes, suteikiančias įmonėms vertingų įžvalgų apie darbo užmokesčio duomenis. Ji gali generuoti ataskaitas apie įvairius aspektus, pavyzdžiui, darbo užmokesčio paskirstymą, išskaičiuojamus mokesčius ir darbo sąnaudas. Šios ataskaitos leidžia įmonėms analizuoti darbo užmokesčio tendencijas, nustatyti tobulintinas sritis ir priimti pagrįstus finansinius sprendimus. Pasinaudodamos duomenimis pagrįstomis įžvalgomis, įmonės gali optimizuoti savo darbo užmokesčio strategijas ir veiksmingai kontroliuoti išlaidas. Integracija su kitomis sistemomis: Cherry Team programinė įranga dažnai sklandžiai integruojama su kitomis personalo ir apskaitos sistemomis. Tokia integracija leidžia automatiškai perkelti atitinkamus duomenis, pavyzdžiui, informaciją apie darbuotojus ir finansinius įrašus, todėl nebereikia dubliuoti duomenų. Supaprastintas duomenų srautas tarp sistemų padidina bendrą efektyvumą ir sumažina duomenų klaidų ar neatitikimų riziką. Cherry Team atlyginimų apskaičiavimo programa įmonėms teikia didelę naudą - automatiniai ir tikslūs skaičiavimai, laiko ir sąnaudų taupymas, atitiktis mokesčių ir darbo teisės aktų reikalavimams, ataskaitų teikimo ir analizės galimybės bei integracija su kitomis sistemomis. Naudodamos šią programinę įrangą įmonės gali supaprastinti darbo užmokesčio skaičiavimo procesus, užtikrinti tikslumą ir atitiktį reikalavimams, padidinti darbuotojų pasitenkinimą ir gauti vertingų įžvalgų apie savo finansinius duomenis. Programa Cherry Team pasirodo esanti nepakeičiamas įrankis įmonėms, siekiančioms efektyviai ir veiksmingai valdyti darbo užmokestį. https://cherryteam.lt/lt/

  • 08.10.23 01:30 davec8080

    The "Shibarium for this confirmed rug pull is a BEP-20 project not related at all to Shibarium, SHIB, BONE or LEASH. The Plot Thickens. Someone posted the actual transactions!!!! https://bscscan.com/tx/0xa846ea0367c89c3f0bbfcc221cceea4c90d8f56ead2eb479d4cee41c75e02c97 It seems the article is true!!!! And it's also FUD. Let me explain. Check this link: https://bscscan.com/token/0x5a752c9fe3520522ea88f37a41c3ddd97c022c2f So there really is a "Shibarium" token. And somebody did a rug pull with it. CONFIRMED. But the "Shibarium" token for this confirmed rug pull is a BEP-20 project not related at all to Shibarium, SHIB, BONE or LEASH.

Для участия в Чате вам необходим бесплатный аккаунт pro-blockchain.com Войти Регистрация
Есть вопросы?
С вами на связи 24/7
Help Icon