The OpenNET Project / Index page

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

Релиз языка программирования Rust 1.22

24.11.2017 11:51

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

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

В подготовке нового выпуска приняли участие 160 разработчиков. Основные новшества:

  • В разряд стабильных переведена возможность использования оператора "?" вместе с конструкцией "Option<тип>" по аналогии с ранее обеспеченной поддержкой "?" в блоках "Result<тип, выражение>". Оператор "?" проверяет значение и если результат отличается от заданного, осуществляется выход с возвратом кода ошибки. Например:
    
       fn try_option_none() -> Option<u8> {
           let val = None?;
           Some(val)
       }
       assert_eq!(try_option_none(), None);
    
  • Типы с операцией Drop теперь можно применять в элементах const и static, что позволяет использовать в них значения, вычисляемые на этапе компиляции. Например:
    
       struct Foo {
          a: u32
       }
       impl Drop for Foo {
           fn drop(&mut self) {}
       }
       const F : Foo = Foo { a : 0 };
       static S : Foo = Foo { a : 0 };
    
  • Операции вида "T op= &T" теперь применимы ко встроенным числовым типам, например:
    
       let mut x = 2;
       let y = &8;
       x += y; // Ранее нужно было явно выполнять разыменование, указывая x += *y.
    
  • Увеличена скорость компиляции в отладочном режиме;
  • В Rustdoc теперь можно добавлять тесты, обрывающие компиляцию ( compile-fail);
  • Прекращена поддержка целевой платформы le32-unknown-nacl в связи с переводом PNaCl в разряд устаревших (теперь рекомендуется использовать WebAssembly);
  • Стабилизированы API From<Cow<str>> в Box<Error>, Hasher в {&mut Hasher, Box<Hasher>}, fmt::Debug в SplitWhitespace;
  • В пакетном менеджере Cargo появилась возможность определения примеров, состоящих из нескольких файлов (для подобных примеров создаётся поддиректория с main.rs). Добавлена поддержка взаимодействия с внешними Git-репозиториями вендоров.


  1. Главная ссылка к новости (https://blog.rust-lang.org/201...)
  2. OpenNews: Релиз языка программирования Rust 1.21
  3. OpenNews: Релиз языка программирования Rust 1.20
  4. OpenNews: Третий выпуск операционной системы Redox OS, написанной на языке Rust
  5. OpenNews: В Firefox добавлен CSS-движок Stylo, написанный на языке Rust
  6. OpenNews: Эксперимент по разработке частей ядра Linux на языке Rust
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/47620-rust
Ключевые слова: rust
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (97) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (-), 12:20, 24/11/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    приветствую, а есть какие-либо нормальные библиотеки для работы с ЛДАП?
     
     
  • 2.27, ano (??), 16:05, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    https://github.com/inejge/ldap3 оно?
     

  • 1.2, А.Нонимус (?), 12:23, 24/11/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +30 +/
    Синтаксис этого языка почему-то нагоняет депрессию на меня каждый раз как вижу куски кода на нём :(
     
     
  • 2.9, th3m3 (ok), 13:52, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Ничего страшного. Дело привычки. От JS тоже плевались по началу ;)
     
     
  • 3.21, Илья (??), 15:30, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Извините, но это совершенно разные вещи.
     
     
  • 4.26, th3m3 (ok), 16:03, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Разные. Но речь шла про синтаксис.
     
     
  • 5.71, Илья (??), 05:48, 25/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Отличие заключается в том, чо rust - это продуманный инструмент, в то время как js - наслоение  расширений на "то, что уже есть".

    В то время как rust отталкивает своим непривычным, но оправданным синтаксисом, js - просто тихий ужас

     
     
  • 6.76, kai3341 (ok), 10:26, 25/11/2017 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > В то время как rust отталкивает своим непривычным, но оправданным синтаксисом, js - просто тихий ужас

    Эволюция же :D

     
  • 6.78, freehck (ok), 12:07, 25/11/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > В то время как rust отталкивает своим непривычным, но оправданным синтаксисом

    Да ну? Вообще, мне довольно интересно было бы послушать, чем оправдано такое дикое количество синтаксического сахара. В каждой новости только об этом и речь.

     
     
  • 7.91, Аноним (-), 06:42, 26/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Да вроде не так его там и много Вот, например, примеры кода из руководства imp... большой текст свёрнут, показать
     
     
  • 8.98, freehck (ok), 17:18, 27/11/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Да любой язык вполне читаем, если приноровиться Даже Python, даже Perl, даже Sc... большой текст свёрнут, показать
     
     
  • 9.101, Аноним (-), 22:48, 27/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Так же было с perl Что ж, подождём 5 версии 8230 ... текст свёрнут, показать
     
     
  • 10.102, Аноним (-), 00:43, 30/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    нет, не так его быстро создали, а затем решили долго и продуманно создать абсол... текст свёрнут, показать
     
  • 6.95, Zarat (ok), 10:40, 27/11/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Отличие заключается в том, чо rust - это продуманный инструмент, в то
    > время как js - наслоение  расширений на "то, что уже
    > есть".
    > В то время как rust отталкивает своим непривычным, но оправданным синтаксисом, js
    > - просто тихий ужас

    Хоть по введенным новшествам из новости (сам от себя удивляюсь) полностью поддерживаю, и сложно не согласилься с вашим "но оправданным синтаксисом", но думаю нет на них Вирт.. ой Жана Ишбиа
    Не так оно делается. Будут у Rust-a еще последователи, и будут лучше

     
  • 3.36, А.Нонимус (?), 16:58, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +8 +/
    Не, меня JS как раз не очень бесил. А с растом - как увижу строчку кода, так сразу хочется рспечатать её на 3Д принтере и запихнуть куда-нибудь тому, кто этот синтаксис придумывал.
     
     
  • 4.73, Anonimous (?), 06:13, 25/11/2017 [^] [^^] [^^^] [ответить]  
  • +6 +/
    Так вот зачем нужны 3д принтеры! У меня тут целый отдел программистов которыми я недоволен...
     
  • 3.105, Аноним (-), 12:22, 04/12/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Почему поначалу?
     
  • 2.19, Анонимикс (?), 15:16, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Да что там депрессию, невольно начинаешь задумываться - может у плюсиков с этим все ещё не так плохо?
     
  • 2.30, rustic (?), 16:18, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Да что вы.... (Взято отсюда https://youtu.be/VSlBhAOLtFA)
    C++17
    template<class... Ts>
    struct overloaded : Ts... {
         using T s: : operator()...;
    }
    template<class... Ts>
    overloaded(Ts... ) -> overloaded<Ts...>
     
     
  • 3.38, фывфыв (?), 17:07, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • –2 +/
    На C++ можно (ИМХО, и нужно) нормально писать. А с Rust'ом ты постоянно получаешь кучу непонятных ошибок при компиляции. Еще и их пакетный менеджер не всегда нормально отрабатывает -_-"
     
     
  • 4.67, Аноним (-), 01:14, 25/11/2017 [^] [^^] [^^^] [ответить]  
  • +6 +/
    В плюсах вообще пакетного менеджера нету
     
     
  • 5.84, Аноним (-), 21:08, 25/11/2017 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Пакетные менеджеры для яп зло. Каждый раз как ставлю что-либо из пакетного для питона, мне становится страшно за "вдруг в зависимостях прописан вредоносный пакет, ведь можно же, никто, проверяя исходники, не будет проверять все зависимости, исходники а их тонна для каждого пакета, и все обновляются кем попало."


    Скупшикам/взломщикам аккаунтов разработчиков расширений для хромого продуктивнее было бы заняться скупкой/взломом аккаунтов популярных пакетов в pip, cargo, gems и npm. Сейчас расширения для браузеров шпионят малоценную инфу о миллионах, а встроя бекдр в пакет можно с тысяч разработчиков стрясти куда более ценную инфу вроде чьей-то коммерческой тайны.

     
     
  • 6.87, Ordu (ok), 22:43, 25/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > Каждый раз как ставлю что-либо из пакетного для питона, мне становится страшно за "вдруг в зависимостях прописан вредоносный пакет, ведь можно же, никто, проверяя исходники, не будет проверять все зависимости, исходники а их тонна для каждого пакета, и все обновляются кем попало."

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

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

     
  • 4.72, Аноним (-), 05:57, 25/11/2017 [^] [^^] [^^^] [ответить]  
  • +6 +/
    > На C++ можно (ИМХО, и нужно) нормально писать. А с Rust'ом ты
    > постоянно получаешь кучу непонятных ошибок при компиляции.

    так каеф же, чем больше ошибок при компиляции - тем меньше в рантайме

     

  • 1.3, Аноним (-), 12:29, 24/11/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Пишу и на Rust и на D, синтаксис Rust чудовищен, поэтому на D всё прикладное, а на Rust системное. Даже от python отказался в пользу D
     
     
  • 2.28, VINRARUS (ok), 16:06, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +6 +/
    :D
     
  • 2.33, Аноним (-), 16:35, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Извините, а что именно такое страшное "системное" вы делаете, чего невозможно сделать в D? Как раз Ди и позиционировался как универсальный язык, тем более это преемник С/С++ - куда уж "системнее"??
     
     
  • 3.42, _ (??), 17:58, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +3 +/
    ... доверчивый вы наш (С) Гараж
     
  • 2.53, Аноним (-), 19:19, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Мсье, Вы либо очень хорошо знаете психологию, либо никогда не работали в команде.
     

  • 1.4, Аноним (-), 12:31, 24/11/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Ну синтаксис у него, довольно вырвиглазный, но вообще, концепция интересная.
    В свободное время изучаю этот язык.

    Возникает несколько вопросов:
    1. Трейты - это что-то типо абстрактных классов? Нельзя создавать переменные типов трейтов?
    2. Как тогда мокать объекты в тестах?
    3. Кто-нибудь знает хороший пример DI контейнера? Этот шаблон вообще как-нибудь налазит на раст?
    4. Я правильно понимаю, что предполагается писать тесты прямо в тех же файлах, что и код?

     
     
  • 2.6, RazrFalcon (ok), 13:37, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    1. Нельзя.
    2. Трейты можно использовать в качестве типа аргумента функции.
    4. Как угодно.
     
  • 2.32, rustic (?), 16:29, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    https://doc.rust-lang.org/book/first-edition/trait-objects.html#dynamic-dispat
     

  • 1.5, Аноним (-), 12:58, 24/11/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –5 +/
    Что я ненавижу в раст больше всего - это композицию взамен наследования. Это добавляет кучу работы по прокидыванию методов и свойств из одного класса в другой. Наследование для этого и было придумано, как синтаксический сахар, чтобы вручную не прокидывать. Но в мозилле ребята %@№&$ самые умные и его убрали.
     
     
  • 2.10, yekm (ok), 13:57, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    https://www.youtube.com/watch?v=VSlBhAOLtFA
     
     
  • 3.15, Аноним (-), 14:51, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Говоря о виртуальных функциях, в C++ всё реализуется аналогично Rust, неинтрузивно, и возможно меньшими усилиями. Нужна неинтрузивность? Напишите шаблон-обертку, отнаследовав ее от интерфейса. Не нужна? Наследуйтесь напрямую от интерфейса.
     
  • 3.18, Илья (??), 15:14, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +15 +/
    А есть в текстовом виде?

    Вообще, никогда не понимал как можно смотреть видео по программированию

     
     
  • 4.34, Аноним (-), 16:36, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Вообще, никогда не понимал как можно смотреть видео по программированию

    эээ.. так ты попкорн-то не бери!

     
  • 2.37, Кузнец (?), 17:00, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Наследование нужно исключительно для реализации полиморфизма операций (т.е. сохранения законтрактированного интерфейса), а не "как синтаксический сахар". Композиция же как раз удобна для повторного использования кода (всё те же производные от паттерна "Стратегия").
     
     
  • 3.68, Аноним (-), 04:10, 25/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    >нужно исключительно для реализации полиморфизма операций (т.е. сохранения законтрактированного интерфейса), а не "как синтаксический сахар".

    Это можно сделать и через композицию, но придётся прописывать ручками, как в раст.

     
  • 2.43, Аноним (-), 18:08, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +4 +/
    >Наследование для этого и было придумано, как синтаксический сахар, чтобы вручную не прокидывать.

    Вот из-за таких "наследователей" ООП и не любят

     
     
  • 3.79, Аноним (-), 15:31, 25/11/2017 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Не любят те, кто ещё не вылез из 1970-х времён K&R.
     
     
  • 4.81, Ordu (ok), 16:05, 25/11/2017 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Те кто не вылез из времён K&R смотрят на наследование как на синтаксический сахар. И именно их ООП-поделия вызывают столько скепсиса в отношении ООП в целом и наследования в частности.
     
     
  • 5.85, Аноним (-), 21:10, 25/11/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Те кто не вылез из времён K&R смотрят на наследование как на
    > синтаксический сахар. И именно их ООП-поделия вызывают столько скепсиса в отношении
    > ООП в целом и наследования в частности.

    внезапно любой яп - это синтаксический сахар над опкодами.

     
     
  • 6.86, Ordu (ok), 22:07, 25/11/2017 [^] [^^] [^^^] [ответить]  
  • +4 +/
    > внезапно любой яп - это синтаксический сахар над опкодами.

    Нет. ЯП определяет то, как будет протекать процесс мышления, какими абстракциями будут ворочать мозги. Если ты думаешь в терминах опкодов, при написании программы на Haskell, то ты впустую греешь воздух своими мозгами. Высокоуровневые ЯП сужают пространство возможных последовательностей опкодов, которые ты можешь получить, но при этом они выводят процесс мышления на иной уровень. Высокоуровневые языки и абстракции созданы для того, чтобы тем же количеством ментальных операций достигать больших результатов.

    А синтаксический сахар -- это когда процесс мышления не меняется, но запись становится приятнее по каким-то параметрам. Например, короче.

     

  • 1.7, Аноним (-), 13:38, 24/11/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Новый баг: https://github.com/rust-lang/rust/issues/43370#issuecomment-336390479
    Старый баг, который не дает скомпилить с системным llvm: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=223342

    Ну пнятнько.

     
  • 1.8, 2018 Year of Linux on Desktops (?), 13:48, 24/11/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –10 +/
    А на чём был написан первый компилятор Раста? Неужто на дьявольском С?
     
     
  • 2.12, Анонс (?), 14:29, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +5 +/
    А на чем был первый компилятор ассемблера? Неужели на.. ? Че за вопрос вообще?
     
     
  • 3.45, 2018 Year of Linux on Desktops (?), 18:34, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    А на чём, кстати?
     
     
  • 4.69, Капитан Очевидность (?), 04:11, 25/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > А на чём, кстати?

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


     
  • 2.13, Аноним (-), 14:31, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +7 +/
    На OCaml

    https://github.com/rust-lang/rust/tree/ef75860a0a72f79f97216f8aaa5b388d98da648

     
     
  • 3.41, Аноним (-), 17:43, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Ужо лучше бы мурзиловцы и писали своё Servo на OCaml.
     
     
  • 4.57, Тру (?), 21:02, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +3 +/
    У Ocaml не всё хорошо с многопоточной работой и сборщик мусора встроенный, что в данном случае минус
     
  • 2.14, Comdiv (ok), 14:34, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > А на чём был написан первый компилятор Раста?

    На Ocaml. Зачем глупый сарказм?

     
  • 2.80, Вы забыли заполнить поле Name (?), 16:05, 25/11/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > А на чём был написан первый компилятор Раста? Неужто на дьявольском С?

    На js очевидно

     

  • 1.16, Мать драконов (?), 15:06, 24/11/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Что уже написано на Расте такого, что его вот прям щщяс надо изучать мне?
     
     
  • 2.17, Мать драконов (?), 15:06, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Может быть, вакансий стало больше? Сколько сейчас в Москве по расту?
     
  • 2.20, Имя (?), 15:23, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Firefox
     
     
  • 3.46, _ (??), 18:45, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Так вот почему он скатился в СГ! :-р
     
     
  • 4.88, Led (ok), 22:44, 25/11/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Так вот почему он скатился в СГ

    Нет - ты!

     
  • 3.55, Вареник (?), 20:13, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • –4 +/
    Пример провала продукта. Перешедшего на ржавчину. Совпадение?
     
  • 2.24, Аноним (-), 15:53, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    https://research.mozilla.org/rust/
    https://www.rust-lang.org/en-US/friends.html
     
  • 2.25, мимо (?), 16:01, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +4 +/
    тебе не нужно, ты слишком глуп для него
     
  • 2.35, Аноним (-), 16:38, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • –5 +/
    > Что уже написано на Расте такого, что его вот прям щщяс надо
    > изучать мне?

    Сколько бы ни было написано, сам язык - мёртворождённое дитя. Будет трепыхаться типа Перла/Tcl'я, но сдохнет только с последним олдфагом, знающим его синтаксис.

     
     
  • 3.44, qwerty123 (??), 18:15, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +2 +/
    >Будет трепыхаться типа Перла

    много пафоса.

    tcl пожалуй мало используется, perl скриптов навалом, ровно как python.
    я даже не представляю себе unix без perl.
    и мощь его в CPAN

    The Comprehensive Perl Archive Network (CPAN) currently has 193,967 Perl modules in 35,870 distributions, written by 13,310 authors


     
     
  • 4.48, _ (??), 18:54, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • –4 +/
    Пафоса тут у всех :) Ну типо:
    >я даже не представляю себе unix без perl.

    Нынче Unix - это Linux. И в каком дистре линя перл в базе? Нету? Даже в перво-слаке выпилили? Даже не в линуксе, а в "реал у-них :)" во фряхе уж хз сколько лет как ...

    А вот пёйтон в линуксах почти везде - в базе. Это ни плохо, ни хорошо - это как оно есть.

     
     
  • 5.58, Аноним (-), 22:17, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > И в каком дистре линя перл в базе?

    https://packages.debian.org/en/sid/perl-base "essential"

    > Даже в перво-слаке выпилили?

    https://mirrors.slackware.com/slackware/slackware-current/slackware/d/perl-5.2

    Ну и дальше что? Как вообще с такими как ты общаться? Зачем ты пишешь это враньё?

     
     
  • 6.94, . (?), 06:32, 27/11/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Ыгнспёрд - из пакета я тебе даже под форточкой наираспоследний перл поставлю :) В базе он у кого? Вот именно ...
     
  • 5.59, angra (ok), 22:23, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > И в каком дистре линя перл в базе?

    В debian/ubuntu и rhel/centos, что покрывает более 90% серверов.

     
  • 5.74, qwerty123 (??), 09:42, 25/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    >Нынче Unix - это Linux.

    Неверно. Количество копий не равно количеству классов. =)
    А классы это
    DragonFly,
    Open/Free/NetBSD (очень близкие),
    Linux kernel based (много разных, но это разновидности сборок утилит на одном ядре),
    Solaris/SunOS/Illimos/OpenIndiana

    Но это ремарка и отклонение от темы.

    >И в каком дистре линя перл в базе...

    Ты попробуй что-то скомпилировать.
    Вот так возьми и попробуй.

     
  • 5.75, qwerty123 (??), 09:54, 25/11/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/

    PS

    > А вот пёйтон в линуксах почти везде - в базе. Это ни
    > плохо, ни хорошо - это как оно есть.

    Сразу видно опытного человека.

    И что ты будешь делать с базовым дистрибутивом, который только для запуститься?
    В котором даже компилятора C и make нет?

    while sleep 1;do uptime; echo "I'm cool";done и тащиться от этого?

    В массовой разработке и эксплуатации реальных систем и компонент perl так или иначе используется.

     
  • 4.50, _ (??), 18:56, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    >The Comprehensive Perl Archive Network (CPAN) currently has 193,967 Perl modules in 35,870 distributions, written by 13,310 authors

    Сейчас ноджЫЭсники вылезут и достанут линейку :) И ты почувствуешь себя so miserable :)

     
     
  • 5.62, Аноним (-), 23:19, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Нет у них там ничего такого, чего бы в CPAN не было.
    https://metacpan.org/pod/LeftPad
     
  • 5.70, Аноним (-), 04:49, 25/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Как достанут, так и обратно её себе засунут. "Разосрать прогу на кучу мелких модулей по одной функции на каждый" - это залепа в чистом виде.
     
  • 5.92, Аноним (-), 07:02, 26/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > so miserable :)

    ущербным, жалким

     
  • 3.47, _ (??), 18:48, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Науке неизвестен ни один "олдфаг, знающим его синтаксис" :) Можно зaкaпывaть прямо сейчас?

    PS: Не так кстати плох раст сам по себе. А вот растишек надо активно давить :)

     
     
  • 4.96, Zarat (ok), 11:21, 27/11/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Науке неизвестен ни один "олдфаг, знающим его синтаксис" :) Можно зaкaпывaть прямо
    > сейчас?
    > PS: Не так кстати плох раст сам по себе. А вот растишек
    > надо активно давить :)

    Ну ты там у себя на раене хоть всех уже передавил? Этож не мешки ворочать

     

  • 1.22, Аноним (-), 15:36, 24/11/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Подскажите книжку толковую на русском по Rust? Уже что-то появилось?
     
     
  • 2.23, Имя (?), 15:47, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    мануал?

    https://www.gitbook.com/book/kgv/rust_book_ru/details

     
  • 2.29, ano (??), 16:13, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Подскажите книжку толковую на русском по Rust? Уже что-то появилось?

    https://www.rust-lang.org/ru-RU/documentation.html

     
     
  • 3.52, Аноним (-), 18:59, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • –3 +/
    >> Подскажите книжку толковую на русском по Rust? Уже что-то появилось?
    > https://www.rust-lang.org/ru-RU/documentation.html

    Писать надо на Си, в крайнем случае, на Си++, а не на этом дерь*е.

     
     
  • 4.56, ano (??), 20:15, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >>> Подскажите книжку толковую на русском по Rust? Уже что-то появилось?
    >> https://www.rust-lang.org/ru-RU/documentation.html
    > Писать надо на Си, в крайнем случае, на Си++, а не на
    > этом дерь*е.

    вот как раз с Си и хочу перейти на это "дерь*о".

     
  • 4.63, Аноним (-), 23:26, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >>> Подскажите книжку толковую на русском по Rust? Уже что-то появилось?
    >> https://www.rust-lang.org/ru-RU/documentation.html
    > Писать надо на Си, в крайнем случае, на Си++, а не на
    > этом дерь*е.

    Зачем же так о русском языке?

     

  • 1.31, Аноним (-), 16:19, 24/11/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >Оператор "?" проверяет значение и если результат отличается от заданного, осуществляется выход с возвратом кода ошибки.

    Но зачем? Есть же вроде pattern matching.

     
     
  • 2.40, Илья (??), 17:28, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Это сахар для паттерн-мачинга
     
     
  • 3.64, Аноним (-), 23:27, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Надо больше сахара. Пусть у растоманов всё послипается!
     

  • 1.39, Аноним (-), 17:26, 24/11/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    ironframework.io vs rocket.rs ?
     
  • 1.61, Мораторий (?), 23:07, 24/11/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    Уважаемый автор новости, большая просьба - перестаньте использовать символы "‹" и "›" в тексте новостей как замену символам "<" и ">". Это не только не правильно но и приводит к нерабочему коду после copy-paste.
     
     
  • 2.65, Аноним (-), 23:29, 24/11/2017 [^] [^^] [^^^] [ответить]  
  • –3 +/
    > приводит к нерабочему коду
    > после copy-paste.

    Перепись копипастокодеров объявляется открытой!

     
     
  • 3.66, Мораторий (?), 00:07, 25/11/2017 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Хмм, а что плохого в copy-paste из новости чтобы поиграться с новыми возможностями языка на реальном примере?
     
     
  • 4.89, Аноним (-), 23:36, 25/11/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Хотя бы то, что в новости не реальный, а заведомо синтетический пример.
     
  • 3.93, Аноним (-), 14:57, 26/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    А как же stackoverflow driven development?
     

  • 1.77, Аноним (-), 11:46, 25/11/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    забавно что все жалуются на синтаксис раста. Помню мне синтаксис Erlang тоже казался чудовищным когда я его не знал, а когда изучил и понял уже на практике как надо на ФП кодить, все встало на свои места. Меня конечно синтаксис раста пугает но я не знаю сам язык, но думаю после изучения все также встанет на свои места.
     
     
  • 2.90, Аноним (-), 05:12, 26/11/2017 [^] [^^] [^^^] [ответить]  
  • +2 +/
    >Помню мне синтаксис Erlang тоже казался чудовищным

    Мне даже после нескольких лет опыта написания эрлангокода за деньги его синтаксис кажется чудовищным. Особенно правила с ; , и .

     
     
  • 3.97, Zarat (ok), 11:34, 27/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    >>Помню мне синтаксис Erlang тоже казался чудовищным
    > Мне даже после нескольких лет опыта написания эрлангокода за деньги его синтаксис
    > кажется чудовищным. Особенно правила с ; , и .

    Вы на Прологе программировали? Именно задачи, которые на него хорошо ложатся?

     
     
  • 4.100, _ (??), 19:19, 27/11/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Ну я слышал в детстве страшную сказку что оно было где то в кровавом Ынтерпрайзе, а не только в японских универах работавших над 5世代 ... Жило оно плохо и умерло в мучениях :(
    Но то - сказка! В реале может и вовсе не было :-)))
     
     
  • 5.103, Аноним (-), 14:41, 01/12/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Вот пример использования: https://www.corezoid.com/en/deepmemo-whitepaper

    Этот самый DeepMemo интерпретирует Prolog и написан на Erlang (даже логотип явно отсылается к логотипу Erlang). Раньше у них была отдельная страница про Deepmemo с примерами кода на Prolog, но её убрали. Если кому интересно, то где-то в недрах шитхаба есть очень ранняя версия этого интерпретатора (ссылку сохранил, но на другом компьютере), видимо, её перестали пилить после коммерциализации.

    Из другого софта на Erlang - CouchDB, например.

     
     
  • 6.104, Аноним (-), 17:11, 01/12/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Нашёл.
    https://github.com/perldev/hprolog
    https://github.com/perldev/hpro_console
    https://github.com/perldev/hprolog_rest_api
     

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



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

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