2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




На страницу 1, 2  След.
 
 О новом языке-лидере системного программирования
Сообщение10.08.2018, 17:01 
Аватара пользователя
Выделено в самостоятельную ветку из «ограничения на выделение памяти malloc()»
(Тема ветки определена во втором сообщении Aritaborian)


Вот, почему нужно переходить на Rust.

 
 
 
 Re: ограничения на выделение памяти malloc()
Сообщение10.08.2018, 17:08 
Aritaborian в сообщении #1331640 писал(а):
Вот, почему нужно переходить на Rust.

Сейчас многие высокоуровневые языки отлично оптимизируются. На том же Шарпе код летает. Только с микрооптимизацией ТС придётся завязать. :mrgreen:

 
 
 
 Re: ограничения на выделение памяти malloc()
Сообщение10.08.2018, 18:42 
Аватара пользователя
realeugene в сообщении #1331645 писал(а):
Сейчас многие высокоуровневые языки отлично оптимизируются. На том же Шарпе код летает.
Я не об этом говорил. Мало ли что, где и при каких условиях летает. Питон тоже полетит, если его под хвост пнуть это Cython или PyPy. Причём здесь Си-шарп? Я имел в виду Раст как перспективную замену Си/С++ в качестве общераспространённого системного ЯП. И конкретно — его работу с памятью. Как языка, в котором выстрелить себе в ногу можно только лишь при чётко и громко высказанном желании, а не как в Си/C++.

 
 
 
 Re: О новом языке-лидере системного программирования
Сообщение10.08.2018, 19:18 
Aritaborian в сообщении #1331657 писал(а):
Я имел в виду Раст как перспективную замену Си/С++ в качестве общераспространённого системного ЯП.
Я с Rust не знаком. Но задача у ТС, судя по всему, совсем не системная, а вполне себе вычислительная.

PS Системный язык без жесткой типизации? Занятно...

 
 
 
 Re: О новом языке-лидере системного программирования
Сообщение10.08.2018, 19:36 
Что вы понимаете под «жёсткой» здесь? По-моему, она довольно жёсткая. Статическая и менее вольная, чем у C, насколько читал.

 
 
 
 Re: О новом языке-лидере системного программирования
Сообщение10.08.2018, 19:39 
Аватара пользователя
realeugene в сообщении #1331667 писал(а):
Системный язык без жесткой типизации?
С чего вы взяли, что её там нет? Лишь потому, что синтаксис не обязывает указывать тип переменной при её первом указании?

 
 
 
 Re: О новом языке-лидере системного программирования
Сообщение10.08.2018, 23:33 
Тот случай, когда без колебаний угадал язык по заголовку темы :lol:

ЗЫ сам не растаман, но говорят, там внутри языка 2 условных подмножества с противоположными свойствами в плане гарантий/легкости написания: сейф и ансейв.

 
 
 
 Re: О новом языке-лидере системного программирования
Сообщение10.08.2018, 23:56 
Аватара пользователя
Что всё-таки такое жёсткая типизация? Сильная? Статическая? Ещё какая-то? (Какая?)

 
 
 
 Re: О новом языке-лидере системного программирования
Сообщение11.08.2018, 10:44 
Rust — отличная замена C, а нередко и C++ (но не всегда). Он всё ещё весьма сырой, на основные проблемы уже заткнули библиотеками, так что пользоваться можно. Но если есть выбор — выбирать лучше другой язык (Python, C#, Java и т. п.), потому что то, что на Python или C# выглядит как a.b().c, в Rust — в лучшем случае — превратится во что-то вроде a.lock().unwrap().as_ref().b().unwrap().c. А в худшем — в красивую и логичную, но многострочную конструкцию (в какой-нибудь if let, или просто выражение придётся разбить на части, чтобы продлить жизнь промежуточным значениям).

-- 11.08.2018, 12:09 --

А типизация в Rust строгая и статическая. Строгая без всяких скидок:
1) i8 (8-битное целое) в i32 (32-битное) без явной конвертации присвоить не получится;
2) конвертация между usize и конкретными типами uXX всегда явная, какой бы размер не имел usize;
3) сконвертировать трейт (аналог интерфейса) в конкретный тип нельзя; вообще нельзя.

 
 
 
 Re: О новом языке-лидере системного программирования
Сообщение11.08.2018, 11:45 
Аватара пользователя
mihaild в сообщении #1331704 писал(а):
Что всё-таки такое жёсткая типизация?
Видимо, это какой-то не общепринятый жаргонизм.

 
 
 
 Re: О новом языке-лидере системного программирования
Сообщение11.08.2018, 13:26 
Aritaborian в сообщении #1331670 писал(а):
С чего вы взяли, что её там нет?

Вы правы: это первое поспешное впечатление по примерам в интернетах, в которых куча ключевых слов 'let' и ни одного типа. Внешне напомнило Бейсик. Или это какие-то неправильные примеры? В общем, перехожу в этой теме в режим чтения.

PS Единственное что проясните pls. Драйвера для Линукса народ на нём пишет, или всё же нет?

 
 
 
 Re: О новом языке-лидере системного программирования
Сообщение11.08.2018, 13:32 
Аватара пользователя
realeugene, лучше перейдите в режим чтения The Rust Book ;-)

-- 11.08.2018, 13:40 --

realeugene в сообщении #1331765 писал(а):
Единственное что проясните pls. Драйвера для Линукса народ на нём пишет, или всё же нет?
На нём уже даже ядро Линукс переписывают ;-) Пока в качестве эксперимента, разумеется.

 
 
 
 Re: О новом языке-лидере системного программирования
Сообщение11.08.2018, 13:51 
Aritaborian в сообщении #1331766 писал(а):
На нём уже даже ядро Линукс переписывают
;-) Пока в качестве эксперимента, разумеется.
"Переписывают" - не интересно. Разные операционки писали на разных языках. Интересно, можно ли использовать без особых сложностей в обычном ядре Линукса?

 
 
 
 Re: О новом языке-лидере системного программирования
Сообщение11.08.2018, 17:18 
realeugene в сообщении #1331768 писал(а):
Интересно, можно ли использовать без особых сложностей в обычном ядре Линукса?
Смотря какие сложности считать особыми. Другой компилятор, другая система сборки... Стоимость интеграции довольно высока, а небходимость взаимодействовать с сишным кодом со всех сторон снижает выгоды от использования (кроме, возможно, именно случая написания драйверов, поскольку у них есть чёткая граница раздела от собственно ядра).

-- 11.08.2018, 18:19 --

realeugene в сообщении #1331765 писал(а):
Или это какие-то неправильные примеры?
Это называется вывод типов и это must have фича для любого современного языка, имеющего серьёзные претензии на что-то.

 
 
 
 Re: О новом языке-лидере системного программирования
Сообщение30.08.2018, 01:43 
Аватара пользователя
Aritaborian в сообщении #1331657 писал(а):
Я имел в виду Раст как перспективную замену Си/С++ в качестве общераспространённого системного ЯП. И конкретно — его работу с памятью. Как языка, в котором выстрелить себе в ногу можно только лишь при чётко и громко высказанном желании, а не как в Си/C++.


Нет такого языка Си/С++. Насчёт выстрелить в ногу -- это про си по большей части.

 
 
 [ Сообщений: 27 ]  На страницу 1, 2  След.


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group