The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Релиз языка программирования Rust 1.5, развиваемого проектом Mozilla

10.12.2015 23:38

Состоялся релиз языка программирования Rust 1.5, развиваемого проектом Mozilla, обеспечивающего автоматическое управление памятью и предоставляющего средства для высокого параллелизма выполнения заданий, при этом обходясь без использования сборщика мусора и runtime. Параллельно с Rust совместно с компанией Samsung развивается экспериментальный браузерный движок Servo, написанный на языке Rust и отличающийся поддержкой многопоточного рендеринга web-страниц и распараллеливанием операций с DOM (Document Object Model).

В новом выпуске представлено более 700 изменений, наиболее значительным из которых является доведение утилиты cargo до полноценного средства распространения приложений на языке Rust. В частности, в новой версии представлена команда "cargo install", предназначенная для установки пакетов с приложениями в локальной системе в директорию ~/.cargo/bin. Новая команда также может использоваться для установки средств разработки, таких как утилита форматирования кода rustfmt или модули с реализацией дополнительных подкоманд для cargo. Например, уже доступны пакеты с реализацией подкоманд "cargo check" для статической проверки проекта без сборки исполняемого файла, "cargo edit" для добавления или удаления зависимостей, "cargo graph" для создания графика зависимостей при помощи GraphViz, "cargo watch" для автоматического повтора команды Cargo при изменении проекта.

Из других изменений отмечается стабилизация значительной части библиотечного API и, в частности, вызовов, связанных с работой с файлами. Продолжена оптимизация системы сборки. На 20% сокращён размер создаваемых метаданных. Улучшено качество генерации кода, что позволило сократить размер libcore на 3.3 Мб и сократить потребление памяти rustc на 18 Мб. Добавлена поддержка платформы NetBSD на архитектуре amd64 и ядер rump.

Язык Rust развивается проектом Mozilla и сфокусирован на безопасной работе с памятью и обеспечении высокого параллелизма выполнения заданий. При этом Rust обходится без использования сборщика мусора или runtime, что делает возможным создания на Rust библиотек, которые могут выступать в роли прозрачной замены библиотекам для языка Си. Для распространения библиотек на языке Rust, обеспечения сборки и управления зависимостями проектом развивается пакетный менеджер Cargo, позволяющий получить нужные для программы библиотеки в один клик. Для размещения библиотек введён в строй репозиторий crates.io.

По структуре язык Rust напоминает C++, но существенно отличается в некоторых деталях реализации синтаксиса и семантики. Автоматическое управление памятью избавляет разработчика от манипулирования указателями и защищает от проблем, возникающих из-за низкоуровневой работы с памятью, таких как обращение к области памяти после её освобождения, разыменование нулевых указателей, выход за границы буфера и т.п. Rust поддерживает смесь императивных процедурных и объектно-ориентированных методов с такими парадигмами, как функциональное программирование и модель акторов, а также обобщённое программирование и метапрограммирование, в статических и динамических стилях.

  1. Главная ссылка к новости (http://blog.rust-lang.org/2015...)
  2. OpenNews: На 2016 год запланировано задействование в Firefox кода на языке Rust и движка Servo
  3. OpenNews: Релиз языка программирования Rust 1.4, развиваемого проектом Mozilla
  4. OpenNews: Представлена операционная система Redox, написанная на языке Rust
  5. OpenNews: Выпуск языка программирования Rust 1.3
  6. OpenNews: Подготовлен вариант GNU Coreutils, переписанный на языке Rust
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/43498-rust
Ключевые слова: rust
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (98) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (-), 00:23, 11/12/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • –8 +/
    А где в расте модель акторов?
     
     
  • 2.15, Аноним (-), 09:33, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Там же, где почти всё остальное — сбоку.
     

  • 1.2, Аноним (-), 00:52, 11/12/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • –11 +/
    > предназначенная для установки пакетов с приложениями в локальной системе в директорию ~/.cargo/bin

    Оно так и устанавливает трояны неизвестно откуда неизвестно кем и как собранные?

     
     
  • 2.3, анонянь (?), 01:58, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Оно устанавливает только то, что ты скажешь ему установить?
     

  • 1.5, Илья (??), 07:20, 11/12/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Очень много у него конкурентов.
     
     
  • 2.6, Аноним (-), 07:34, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Нет. Один Swift, и тот не везде можно применять, где применим Rust.
     
     
  • 3.20, Аноним (-), 10:47, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Как можно сравнивать 2 языка, если у одного есть сборщик мусора, а у другого нет? Swift не подойдет для системного программирования (ядро драйвера фс), а руст может подойти.
     
     
  • 4.30, Аноним (-), 11:18, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Ссылку на наличие GC в Swift в студию. Если речь об ARC - в Rust они тоже есть. Да они и в ядре Linux есть, к слову.
     
  • 2.14, Аноним (-), 09:32, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Какие, например, кроме крестов?
     
     
  • 3.16, wWolf (?), 10:04, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Без учета попсового маркетинга и разницы во вбухиваемом бабле, D например.
     
     
  • 4.24, Аноним (-), 10:53, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +/
    D не конкурент, он с GC.
     
     
  • 5.74, wWolf (?), 20:17, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +/
    GC там опционально, как напишешь. А вот заявления о Rust, что он и без ручного управления и без GC с подсчетом ссылок, кажется маркетойдным бредом, если и без того и без другого, значит пришлось пожертвовать чем-то еще. Вот только чем, я для себя пока не понял.
     
     
  • 6.83, Ан (??), 21:07, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Основное управление памятью берёт компилятор и язык. Для некоторых определённых случаев памятью можно управлять в unsafe блоках если это необходимо. Так же есть механизмы со счётчиками ссылок(Rc, Arc и тд.) которые берут владение данными и всем потребителям предоставляют ссылки. Так что в зависимости от задачи и необходимости можно воспользоваться разными механизмами.
    При написании кода скорее потребуется себя переучить в плане того как его писать. Поскольку придётся соблюдать правила.
     
  • 6.106, Растаман (?), 18:21, 12/01/2016 [^] [^^] [^^^] [ответить]  
  • +/
    Мне кажется, что ты даже не пытался. Критикуешь сам не знаешь что. И там есть управление памятью.
     
  • 4.39, 10й Брейтовский переулок (?), 12:07, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +/
    D - ходячий мертвец.
     
     
  • 5.66, Вареник (?), 19:43, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Как и Rust. Еще один громкий "убийца С++".
     
  • 2.23, Аноним (-), 10:51, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • –5 +/
    Кроме С и плюсов у него нет конкурентов. Поскольку остальные все "модные языки" (swift, go, d, java) используют GC для сборки мусора.
     
     
  • 3.52, НяшМяш (?), 13:24, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Swift использует ARC.
     
  • 3.64, menangen (?), 17:24, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Да не использует SWIFT сборку мусора, что за тугие роботы это пишут?
     
     
  • 4.67, Вареник (?), 19:45, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Да не использует SWIFT сборку мусора, что за тугие роботы это пишут?

    Пытаются отличаться хоть какими-то надуманными пововодами. Акторов налепили, отсутствие сборщика пытаются из недостатка сделать уникальным достоинством. Якобы язык спасает от ошибок в головах...

     
     
  • 5.84, Aleks Revo (ok), 21:49, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Rust не спасает от ошибок в головах. Просто при наличии ошибки в голове на других языках программа запускается, но работает не правильно, а Rust пытается объяснить пользователю почему тот идиот.
     
     
  • 6.90, Roo2AT7d (ok), 06:07, 12/12/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Пишут обезьяны, а в дураках пользователь
     
  • 3.91, Ilya Indigo (ok), 07:34, 12/12/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    С каких это пор D стал "модным" языком?
    Да и GC у него опционален.
     

  • 1.11, h31 (ok), 08:48, 11/12/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Неделя Mozilla объявляется открытой!
     
  • 1.12, anonimous (?), 08:56, 11/12/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Когда планируют его закрыть?
     
  • 1.13, Аноним Анонимович Анонимов (?), 09:05, 11/12/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    На фоне последних новостей, не удивлюсь, если Mozilla выдаст что-то на подобии: Mozilla прекращает разработку языка программирования Rust.
     
     
  • 2.18, Дмитрий (??), 10:12, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Даже если такое и произойдёт, язык будет разрабатываться - он открыт и все желающие могут помогать его развивать.
     
     
  • 3.22, Moomintroll (ok), 10:48, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > язык будет разрабатываться - он открыт и все желающие могут помогать его развивать

    Вообще-то, то что язык открыт вовсе не гарантирует, что у тех, кто может помогать его развивать, будет такое желание…

     
     
  • 4.69, Вареник (?), 19:47, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +/
    >> язык будет разрабатываться - он открыт и все желающие могут помогать его развивать
    > Вообще-то, то что язык открыт вовсе не гарантирует, что у тех, кто
    > может помогать его развивать, будет такое желание…

    D тоже открыт, с самого начала. Субъективно говоря, он и сейчас лучще Rust.

     
     
  • 5.85, Aleks Revo (ok), 21:51, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +/
    >>> язык будет разрабатываться - он открыт и все желающие могут помогать его развивать
    >> Вообще-то, то что язык открыт вовсе не гарантирует, что у тех, кто
    >> может помогать его развивать, будет такое желание…
    > D тоже открыт, с самого начала. Субъективно говоря, он и сейчас лучще
    > Rust.

    «Субъективно говоря» = «Чем лучше? — Чем Rust»

     

  • 1.17, Коля (?), 10:09, 11/12/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • –15 +/
    Наплодили сущностей! Да здравствует QuickBASIC, C, Delphi, PHP. И точка!

    Плодят тут языки для школоты. Всё сделать так, чтобы программировать мог любой безграмотный имбицил. Программировать должны специально обеченные люди. А такие люди, как правило, консервативны. Всплывает тут понимаешь всякое - "эгэгэй, я новый супер крутой язык! Я лучше чем С и любой дурак может на мне программировать!" Дураки должны лечится. Программировать должны программисты, при чём, на языках, которыми пользуются другие программисты.

    Школота пусть Бэйсик учит; системное программирование на С; юзерские интерфейсы на Дельфах; веб на ПХП. Точка.

     
     
  • 2.19, Виктор (??), 10:27, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +10 +/
    дурак ты Коля и не лечишься.
     
     
  • 3.25, Коля (?), 11:04, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • –3 +/
    обоснуй
     
     
  • 4.49, angra (ok), 13:16, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Ты свой путь в программировании и остановку в развитии пытаешься спроецировать на всех остальных программистов. Это нормальное поведение для двухлетнего ребенка, который закрывает глазки в уверенности, что всем остальным тоже станет темно и его не увидят. В промежутке с трех до пяти лет большинство детей понимает ошибочность такого подхода. Но некоторые продолжают его использовать даже став великовозрастными балбесами. Это дураки, их не вылечить.
     
     
  • 5.54, Ури (ok), 13:45, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • –5 +/
    Но в "напплодили" он таки прав. В результате этого "быстрее, легче, топорнее" у нас текстовые странички тормозят на топовых компах, которые легко справляются с риалтаймовым рендерингом гор, лесов и полей и тысячи НПС.

    Раст из той же оперы, и результаты будут теми же.

     
     
  • 6.68, angra (ok), 19:46, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Тормозящие текстовые странички сделаны на чем-то новом или на языках двадцатилетней давности?
    Тесты производительности для rust ты смотрел?
     
     
  • 7.70, Вареник (?), 19:51, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • –5 +/
    > Тормозящие текстовые странички сделаны на чем-то новом или на языках двадцатилетней давности?
    > Тесты производительности для rust ты смотрел?

    Ну тормозит, как все языки с доп. проверками границ, типов, возвратов, GC. Да еще при этом без GC. И че?

     
  • 4.87, Led (ok), 00:18, 12/12/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > обоснуй

    Диагноз не обосновывают, а устанавливают.

     
  • 2.21, Аноним (-), 10:48, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • –1 +/
    "системное программирование на С"
    и каждый плодит свою реализацию и свои костыли, а потом все дружно ищут баги годами :)
     
     
  • 3.26, Коля (?), 11:06, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +/
    БСД, Линукс и даже Виндовс API написаны на сях. Им это скажи.
     
     
  • 4.29, Аноним (-), 11:14, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > БСД, Линукс и даже Виндовс API написаны на сях. Им это скажи.

    А что, когда их создавали, была альтернатива?

     
     
  • 5.38, Коля (?), 12:06, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Си создавался как язык системного программирования. Альтернатив и сейчас нет и не надо. Будете мне заливать, что Си устарел? Я за 8 лет программирования на разных языках (с, с++, с#, дельфи, и др. и пр.) не встречался с такой задачей, которую нелзя решить на Си. Всякие там рекурсии и абстракции на нём прекрасно пишутся. Всё просто - во первых, руки надо иметь прямые, во вторых, если структура программы зашла в тупик, то надо переписывать, а не городить костыли. Не язык плохой, а лень и кривые руки виной во всём.
     
     
  • 6.43, Аноним (-), 12:44, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > БСД, Линукс и даже Виндовс API написаны на сях. Им это скажи.
    > Альтернатив и сейчас нет и не надо.

    Сам же и ответил.

    > Будете мне заливать, что Си устарел? Я за 8 лет программирования на разных языках (с, с++, с#, дельфи, и др. и пр.) не встречался с такой задачей, которую нелзя решить на Си. Всякие там рекурсии и абстракции на нём прекрасно пишутся. Всё просто - во первых, руки надо иметь прямые, во вторых, если структура программы зашла в тупик, то надо переписывать, а не городить костыли. Не язык плохой, а лень и кривые руки виной во всём.

    Замечательно! И если так, то заявления вида:

    > Плодят тут языки для школоты. Всё сделать так, чтобы программировать мог любой безграмотный имбицил.

    оставь при себе.

     
     
  • 7.71, Вареник (?), 19:54, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > Замечательно! И если так, то заявления вида:
    >> Плодят тут языки для школоты. Всё сделать так, чтобы программировать мог любой безграмотный имбицил.
    > оставь при себе.

    Он прав (в части системного программирования), а ты неаргументированно троллишь. Заявления вида "сам дурак" - это стиль программирования rust, судя по его фанатам.

     
     
  • 8.94, Аноним (-), 16:24, 12/12/2015 [^] [^^] [^^^] [ответить]  
  • +/
    А можно пример его конструктивной критики языка Да, против такого Да кто я т... текст свёрнут, показать
     
  • 6.55, Ури (ok), 13:46, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Не язык плохой

    Плохой, ведь на нем надо учиться программировать. /сарказм/


     
  • 6.81, Аноним (-), 20:35, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >Всякие там рекурсии и абстракции на нём прекрасно пишутся

    с макросами, приведением типов через указатели, и прочей неотлаживаемой фигней

    >Не язык плохой, а лень и кривые руки виной во всём

    то же самое можно написать про ассемблер

     
  • 3.28, Аноним (-), 11:13, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > и каждый плодит свою реализацию и свои костыли, а потом все дружно ищут баги годами :)

    Классика же. ;)

     
  • 2.33, Ан (??), 11:43, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Иди ознакомься с историей.
    До C то же были языки. Ты бы и тогда сказал пошли вы все со своими новыми модными языками?
    Ты тут понимаешь выплюнул свой кругозор языков, а некоторым твой этот наборчик по большей части тоже нафиг не нужен.
     
     
  • 3.40, Коля (?), 12:12, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • –3 +/
    я говорю про сейчас, а не про стопицсот лет назад. Ну и какие же языки например Вы нам посоветуете? Java + .NET + Python? Джентльменский набор айтишника, который ничерта не понимает, как работает и как устроен тот компютер, на котором он кодит... Механик, не понимающий, как устроен автомобиль. Даааа, бедааа.
     
     
  • 4.47, Аноним (-), 12:59, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Java + .NET + Python? Джентльменский набор айтишника, который ничерта не понимает, как работает и как устроен тот компютер, на котором он кодит... Механик, не понимающий, как устроен автомобиль. Даааа, бедааа.

    Ну да... Есть руль, твоя задача рулить. Не обязательно (но полезно, на всякий) знать, что там под капотом.

    Ты между прочим тоже, пишешь на Си, но ведь... Зачем Си? Пиши в машинных кодах! Будь мужиком!

    Такая позиция, абсолютный бред! Если им нравится, то пусть жрут кактус. Ты то чего за них так переживаешь, они ведь не твой пирог жрут?

    Си в своё время тоже был: "Наплодили сущностей!".

    > Плодят тут языки для школоты. Всё сделать так, чтобы программировать мог любой безграмотный имбицил.

    И такие же олдфаги как ты, тогда писали такое же.

     
     
  • 5.57, Ури (ok), 13:48, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Ты то чего за них так переживаешь, они ведь не твой пирог жрут?

    Я не могу запрограммировать все на свете, мне приходится пользоваться софтом, написанным такими неучами, и этот софт тормозит, глючит, дико бесит и разражает.

    Это как жить в городе, в котором полным полно срущих прямо на улице бомжей. Да, теоретически можно ходить и за всеми ними убирать. Хотя правильнее было бы их всех пристрелить.

     
     
  • 6.60, Аноним (-), 14:03, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Если это адресовано мне, то комментарий писал с позиции Коляна.

    Я сам ничего против разнообразия не имею. Больше языков, каждый для своей ниши, а там пусть победит сильнейший.

     
  • 6.72, ASH (??), 19:55, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Стоимость и сложность разработки софта на С (серьезного софта) очень высока. Т.е. если бы все писали на си, компании бы выпускали только текстовые программки или на ГТК, и те раз в 2 года. Такая модель подходит только для тех кто никогда разработкой-то и не занимался, просто считает себя "программистом".

    ЗЫ. На си такие же как вы очень много ненадежного, дырявого и при этом еще и тормозного софта написали. Поэтому мир решил иначе.

     
  • 4.53, angra (ok), 13:27, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Чем плохи C+Go+Perl, C+Rust+Ruby, C+Ocaml+Erlang, C+Haskell+Scheme или десятки других возможных связок? А самое главное, с чего ты взял, что знание выбранного тобой PHP или Qbasic лучше позволяет понять устройство компьютера, чем  Java + .NET + Python?
     
  • 4.73, Вареник (?), 19:58, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > я говорю про сейчас, а не про стопицсот лет назад. Ну и
    > какие же языки например Вы нам посоветуете? Java + .NET +
    > Python? Джентльменский набор айтишника, который ничерта не понимает, как работает и
    > как устроен тот компютер, на котором он кодит... Механик, не понимающий,
    > как устроен автомобиль. Даааа, бедааа.

    Есть бензопила (Java + .NET + Python - прикладное ПО), есть скальпель (С - системное ПО), есть мультитул (С++). И они не заменяют друг друга.

    Валить лес скальпелем можно, но это стиль сбежавшего психа, а не хирурга.

     
     
  • 5.88, Led (ok), 00:27, 12/12/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > Есть бензопила (Java + .NET + Python

    Это не бнзопила, а "летающий топор" из "Юного техника" 1983 года.

     
  • 2.46, soarin (ok), 12:54, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +5 +/
    > QuickBASIC, Delphi

    Уровень допустимой толщины превышен в разы

     
  • 2.48, Аноним (-), 13:12, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Delphi мертво. PHP убого.
     
  • 2.56, Аноним же (?), 13:48, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Сразу видно Коляну >35 лет
     
  • 2.59, Нанобот (ok), 13:58, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +2 +/
    >Программировать должны специально обеченные люди

    ничего мы тебе не должны

     
  • 2.102, vn971 (ok), 15:45, 17/12/2015 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Хочешь побольше технических аргументов? ОК:

    1. Delphi проприетарный компилятор и проиприетарная IDE. Писать "юзерские интерфейсы" на ней глупо т.к. будет работать только в одной ОС, будет требовать бабла чтобы даже собрать пакет из исходников.

    2. PHP это язык с тонной врождённых кривостей которые делают его непригодным для задач где высока цена ошибки.

    3. Вы не привели ни одного нормального языка с GC. При этом специалистам достаточно ИМХО очевидно что ниша gc-языков типа python,ruby,scala -- весьма широкая. Т.е. для очень многих задач GC годится если даёт иные выгоды в духе цены поддержки и скорости написания.

    Квик-бэйсиком и Си вы может быть покрыли свои текущие умения, но я советую всё же расширять кругозор. И уж _точно_ не думать что вы покрыли >50% надобностей человечества.

     

  • 1.27, Аноним (-), 11:12, 11/12/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    но зачем? если есть уже открытые и стандартизированные Java, C++14, C#(5-я версия+ADO.NET+LINQ+WCF в процессе стандартизации ECMA), но или попсовые Go и Swift
     
     
  • 2.31, Andrey Mitrofanov (?), 11:23, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +4 +/
    >стандартизированные Java

    Бззззз! Наброс сфейлил. Попытайтесь ещё.

     
     
  • 3.32, Аноним (-), 11:41, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Java это настолько тонкая тема, что аж толсто)
     
     
  • 4.35, Andrey Mitrofanov (?), 11:51, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > настолько тонкая тема, что аж толсто)

    Бссодержательная глубина Вашей рекурсивности поражает всё больше с каждым новым повторением.  Да-да.  Не останавливайтесь.

     
  • 2.34, Ан (??), 11:49, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Из этого списка упоминания заслуживают только C++ и Swift, а остальное из другой вселенной.
    А тут внезапно оказывается что у Rust есть свои особенности которые дают преимущества перед плюсами. Что касается Swift, то почему это нужно выбирать его если он такой же новичок как Rust? Или для некоторых Apple создала машину времени?
     
  • 2.103, vn971 (ok), 15:48, 17/12/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Вон Коля уже выше предложил уничтожить все языки и оставить только C/QuickBasic/PHP/Delphi. Вы в ту же коробку, громко удивляетесь зачем созданы различные Я.П.? Не хотите вчитываться в подробности?
     

  • 1.36, Okarin (ok), 11:56, 11/12/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Так что на нем написано, кроме мозилкиного движка? Очередной ненужный убийца плюсов, сколько их было уже.
     
     
  • 2.37, Andrey Mitrofanov (?), 12:02, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > Так что на нем написано, кроме мозилкиного движка? Очередной ненужный убийца плюсов,
    > сколько их было уже.

    Внимательно подними глаза вверх: там примеры.  Убийца *NIX "под лицензией MIT", убийца GNU Coreutils "под лицензией MIT".  Опасные ребята, пора искать в их вики расстрельный список, провериться  --  а то не ровен же час!?

     
     
  • 3.45, Okarin (ok), 12:45, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Бро, извини, но о чем ты вообще несешь, а?
     
     
  • 4.62, Andrey Mitrofanov (?), 14:50, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > Бро, извини, но о чем ты вообще несешь, а?

    Там вверху, под новостью, ссылки на "что на нем написано, кроме мозилкиного". Туда надо поднять глазики и посмотрекать.  ---Russian, motherfucker, do you speak it?

     
  • 2.41, Аноним (-), 12:29, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    настолько ненужный, что Страуструп и Ко чешут головы и потихоньку перетаскивают в плюсы фичи оттуда, стыдливо умалчивая об источнике вдохновения :) Вот только это появится в компиляторах лет через 3-5, а ржавчина уже есть здесь и сейчас.

    Судя по тому, что начали появляться вакансии rust-программистов, шансы взлететь у этого языка довольно хороши.

     
     
  • 3.44, Okarin (ok), 12:44, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Я аж на хедхантер полез с такой наглости - вакансия аж целых две на всю РФ.

    А фичи потырили - это да, это ок, прогресс.

     
  • 3.58, Ури (ok), 13:51, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > потихоньку перетаскивают в плюсы фичи оттуда, стыдливо умалчивая об источнике вдохновения

    Ох уж эта безграмотная школота... Все эти фичи известны (и реализованы) уже лет 20 как, просто никому особо не были нужны, потому и попадали в мейнстримовые языки.

     
     
  • 4.82, Аноним (-), 20:42, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +3 +/
    написал человек, не видевший ни одной строчки кода на rust, ни одной статьи Страуструпа о C++17, и даже не представляющий, о каких собственно фичах идет речь. Эсперты opennet - они такие :)
     

  • 1.42, Аноним (-), 12:31, 11/12/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • –5 +/
    А без сборщика мусора это примерно как и плюсы, где нельзя к примеру вернуть статический локальный массив из функции и просто обязан использовать указатели, чтобы объект не исчез раньше времени?
     
     
  • 2.50, Аноним (-), 13:18, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +/
    А что в этом плохого?
     
     
  • 3.78, Аноним (-), 20:23, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Самодеятельность языка это плохо. Когда если массив передаётся по стеку выше, но компилятор не смотря на это его уничтожает.
     
     
  • 4.89, Аноним (-), 01:06, 12/12/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Вы слегка мануал не дочитали. Нету в плюсах никаких массивов. Есть указатели и синтаксический сахар к ним. Вы создаете указатель на область памяти, функция его и возвращает. Где тут самодеятельность?
     
     
  • 5.93, Аноним (-), 16:08, 12/12/2015 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Указатели объявляются с помощью *. Ты видишь в строке "int a[10];" хоть одну звёздочку?
     
     
  • 6.95, Аноним (-), 18:45, 12/12/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Вы все таки не читали мануал
     
     
  • 7.96, Аноним (-), 19:04, 12/12/2015 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Во первых какую часть мануала? Во вторых даже если назвать это сахаром, то это будет звучать: сахар не работает. Так больше нравится?
     
  • 2.51, Аноним (-), 13:21, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Используйте вектор. В чем проблема?
     
     
  • 3.77, Аноним (-), 20:21, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Ха.
    - Слушайте у вас тут компилятор шалит.
    - Используй стандартную библиотеку.
    Наличие костыля не отменяет проблемы. К тому же есть принцип наименьшей сложности.
     
  • 2.61, Аноним (-), 14:27, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > А без сборщика мусора это примерно как и плюсы, где нельзя к
    > примеру вернуть статический локальный массив из функции и просто обязан использовать
    > указатели, чтобы объект не исчез раньше времени?

    Yes We Can - http://is.gd/IXHhll

     
     
  • 3.76, Аноним (-), 20:20, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Ну это хорошо.
     
  • 2.63, Аноним (-), 15:38, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > нельзя к примеру вернуть статический локальный массив

    Можно. RTFM.

     
     
  • 3.75, Аноним (-), 20:19, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • –1 +/
    В плюсах? Пример в студию.
     
     
  • 4.104, alexr (??), 21:57, 18/12/2015 [^] [^^] [^^^] [ответить]  
  • +/
    int *foo(void)
    {
       static int A[10] = { };

       A[9] = '3';

       return A;
    }

     
  • 4.105, alexr (??), 22:22, 18/12/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > В плюсах? Пример в студию.

    статический локальный массив это в понятиях С и С++ парадокс.
    Локальный значит аллокированный на стеке (видимость в пределах функции/метода и субфункций расширения если компилятор поддерживает), статический значит (видимость в пределах модуля при линковке) живет в одной из .data, .rodata, .sdata, .bss или .sbss и еще в нескольких секциях может быть, но вы и про эти вряд ли слышали зачем они...

    Пример приведен для статика. Так кстати работает много функций разных реализаций libc.

    Еще может быть TLS локальность...

    Лично мое мнение что для каждой задачи подходит свой набор языков которые ее оптимально решают в соответствии с заданными ограничениями.

    По опыту большой проект легче всего поддерживать на С. Хуже всего на С++ с применением всех фич языка и автогенерацией кода. о больших проектах на других языках я не слышал... Если в проекте меньше 100 000 000 строк и его писало < 100 людей это еще не большой проект. Код с черезмерным засилием ООП или не следующему подобию Linux Kernel Codyng Style тяжело читать.

    PS обидно за незаслуженное отсутствие интереса к прекрасному языку TCL/TK для разработки GUI морд (но не работы с данными конечно).

     

  • 1.65, Вареник (?), 19:37, 11/12/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    >> сократить потребление памяти rustc на 18 Мб.

    - И эти люди говорят что Java много ест??

     
     
  • 2.80, Crazy Alex (ok), 20:25, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Для компилятора и пара гиг - не беда, если есть ради чего
     
  • 2.86, Aleks Revo (ok), 22:04, 11/12/2015 [^] [^^] [^^^] [ответить]  
  • +3 +/
    >>> сократить потребление памяти rustc на 18 Мб.
    > - И эти люди говорят что Java много ест??

    Для сравнения Chromium для компиляции сразу честно просит 6 Гб и, ЧСХ, гарантированно сжирает их на пол часика.

    А что там Java, перестала быть JIT-backed интерпретатором, что её решили с чистым компилятором сравнить?

     
     
  • 3.99, Онаним (?), 20:30, 13/12/2015 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Для сравнения Chromium для компиляции сразу честно просит 6 Гб

    6 Гб оперативы или места на харде?

     
     
  • 4.100, Andrey Mitrofanov (?), 21:35, 13/12/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >> Для сравнения Chromium для компиляции сразу честно просит 6 Гб
    > 6 Гб оперативы или места на харде?

    Да, кто ж https://chromium.googlesource.com/chromium/src/+/master/docs/linux_build_instr его разберёт: от 4 памяти, примерно 8 свопа и 10 диска (там же выше парой строчек).   В среднем 6, B) почти

     

  • 1.98, Онаним (?), 20:29, 13/12/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Мне одному кажется, что ставить приложения в ~/ - это ненормально за исключением случаев, когда ему предназначено быть запущенным пару раз и удалённым?
     
     
  • 2.101, Ilya Indigo (ok), 07:37, 14/12/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > Мне одному кажется, что ставить приложения в ~/ - это ненормально за
    > исключением случаев, когда ему предназначено быть запущенным пару раз и удалённым?

    Видимо, да. Для вашего случая идеально подходит /tmp а в ~/bin устанавливаются пользовательские приложения, нужные только этому пользователю и доступные только ему для запуска, установки и удаления. А также, что бы установщик этих приложений мог работать только с ними и не имел привелегий выполнять чего-то больше.

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру