The OpenNET Project / Index page

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



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Выпуск языка программирования Rust 1.54, opennews (??), 29-Июл-21, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


270. "Выпуск языка программирования Rust 1.54"  –3 +/
Сообщение от Брат Анон (ok), 30-Июл-21, 08:43 
Что только люди не сделают. Лишь нормальные языки не учить.Согласен переход с извращения на другое извращение -- несколько разнообразит боль.
Ответить | Правка | К родителю #23 | Наверх | Cообщить модератору

478. "Выпуск языка программирования Rust 1.54"  +/
Сообщение от Аноним (24), 31-Июл-21, 00:05 
А какие есть нормальные с производительностью уровня раста / c++?
И такие, чтоб популярные, а не ним или кристал
Ответить | Правка | Наверх | Cообщить модератору

564. "Выпуск языка программирования Rust 1.54"  +/
Сообщение от Брат Анон (ok), 01-Авг-21, 08:39 
> А какие есть нормальные с производительностью уровня раста / c++?
> И такие, чтоб популярные, а не ним или кристал

При чём тут производительность? Если в С++ проблемы с текущей памятью, а в расте с концептуальной перегруженностью (и это только начало) -- как это поможет в написании надёжного софта?

Что ним, что кристалл -- одинаковые поделки любителей, попытка подражания мейнстриму.

Хочешь глоток свежего воздуха? Смотри в сторону Обероно-подобных языков. Например, MultiOberon. Если хочешь зашаливающей производительности -- посмотри на тесты варианта Оберона "Vostok". Там тебе и десктоп, и JVM, и ведроид. Ты сожешь попробовать Оберон прямо сейчас в песочнице браузера. Ссылки гуглятся на раз.

Ответить | Правка | Наверх | Cообщить модератору

571. "Выпуск языка программирования Rust 1.54"  +/
Сообщение от Аноним (571), 01-Авг-21, 11:06 
Обероны с GC  поэтому конкуренты не для раста а для Go и D.
Ответить | Правка | Наверх | Cообщить модератору

587. "Выпуск языка программирования Rust 1.54"  +/
Сообщение от Брат Анон (ok), 01-Авг-21, 21:04 
> Обероны с GC  поэтому конкуренты не для раста а для Go
> и D.

Кто тебе такую чушь сказал? В 60% реализаций Оберонов нет никакого GC. Оберон успешно запускают (лично я, например), на STM32F4T6. Там памяти, простите за мой французский -- с гулькин нос. Какой там GC? именно в этом и сила Оберонов -- хочешь будет тебе GC, не хочешь -- не будет. Ещё обращу твоё внимание анон: в варианте "Vostok" Оберон откровенно нагибает С++ и заставляет нервничать Си. См. тесты в блогпосте от ComDiv. Ещё раз специально для тебя повторю: на Оберонах написан под десяток операционных систем. Сколько операционных систем написано на Расте, которые испольуются в боевых самолётах, типа "Еврофайтера"? Или сколько управляющих систем на Расте используется на Ростовской атомной станции? На подстанции 110 кВ (как в Калининграде)? Или при управлении БПЛА? Ты пишешь с умным видом глупости по теме, которой совершенно не знаешь.

Ответить | Правка | Наверх | Cообщить модератору

615. "Выпуск языка программирования Rust 1.54"  +/
Сообщение от Аноним (571), 02-Авг-21, 11:13 
> В 60% реализаций Оберонов нет никакого GC

Ссылку можно хоть на одну реализацию и чтобы там прямо говорилось что без GC. А то гугль наоборот больше подсовывает ссылки как оберон умеет в GC даже в ядерном коде.

Ответить | Правка | Наверх | Cообщить модератору

656. "Выпуск языка программирования Rust 1.54"  +/
Сообщение от Брат Анон (ok), 04-Авг-21, 08:34 
> Ссылку можно хоть на одну реализацию и чтобы там прямо говорилось что
> без GC. А то гугль наоборот больше подсовывает ссылки как оберон
> умеет в GC даже в ядерном коде.

Достаточно на сайте Вирта почитать сообщение  о языке. Там ни слова нет о GC. Я тебе даже дам ссылку на русский перевод. Плохо ищешь.

https://github.com/Spirit-of-Oberon/ProjectOberon2013 -- виртовский Оберон, даже с эмулятором. Нет GC.

https://github.com/AntKrotov/oberon-07-compiler -- работает на ТРЁХ осях. Нет GC.

https://docs.google.com/document/d/14-KQD4UT0_Xd_s7kVHVKa6tx... -- перевод на русский язык, где GC даже не упоминается.

Ответить | Правка | Наверх | Cообщить модератору

658. "Выпуск языка программирования Rust 1.54"  +/
Сообщение от Аноним (658), 04-Авг-21, 13:33 
>виртовский Оберон, даже с эмулятором. Нет GC.

Есть GC https://github.com/Spirit-of-Oberon/ProjectOberon2013/blob/m...

>работает на ТРЁХ осях. Нет GC.

Тут да нет, но это не полноценная реализация оберона, код на него леко переносим не будет, сразу потечет. И из-за отсутсвия GC нет одного из самых любых пропагандистами оберон фич - динамической модульности. Про компонентное программирование тоже можно сразу забыть.

>перевод на русский язык, где GC даже не упоминается.

Тут http://www.projectoberon.com/ в pdfках много раз упоминается.

Ответить | Правка | Наверх | Cообщить модератору

659. "Выпуск языка программирования Rust 1.54"  +/
Сообщение от Брат Анон (ok), 05-Авг-21, 09:02 
>>виртовский Оберон, даже с эмулятором. Нет GC.
> Есть GC https://github.com/Spirit-of-Oberon/ProjectOberon2013/blob/m...

Хм. Что-то новенькое. Когда последний раз смотрел -- не было. Как по мне -- даже хорошо.

>>работает на ТРЁХ осях. Нет GC.
> Тут да нет, но это не полноценная реализация оберона, код на него
> легко переносим не будет, сразу потечет. И из-за отсутствия GC нет
> одного из самых любых пропагандистами оберон фич - динамической модульности. Про
> компонентное программирование тоже можно сразу забыть.

Код будет перенесён легко. Три оси это доказывают. Динамической модульности нет, да.
Но это не функция языка -- это функция системы. Наоборот, чем меньше фич в ЯЗЫКЕ -- тем легче перенос. Компонентное программирование реализуется не через язык,а через среду. BBCB тебе в помощь.
Если ты внимательно прочитал описание -- там на нормальном буржуйском языке написано, что это не коммерческий вариант. Пацанчег его запили в одну харю. Попробую запили в одну харю Аду или ржавого. Ещё раз отдельно отмечу: существует ДВА ДЕСЯТКА реализаций Оберона одиночками. Переносимость у Оберона -- кратно выше, чем в Си. Зависимость от железа -- нулевая. Именно это главная фича Оберона, а не GC или динамическая модульность.

>>перевод на русский язык, где GC даже не упоминается.
> Тут http://www.projectoberon.com/ в pdfках много раз упоминается.

Нет. Нигде не упоминается обязательность GC. См. реализацию Оберона на основе виртовского от AIXP -- там всё также нет GC.

Ответить | Правка | Наверх | Cообщить модератору

665. "Выпуск языка программирования Rust 1.54"  +/
Сообщение от Аноним (665), 06-Авг-21, 11:11 
>Хм. Что-то новенькое. Когда последний раз смотрел -- не было. Как по мне -- даже хорошо.

Судя по пдфкам последний раз 8 лет назад обновленным, оно там всегда было.

>Код будет перенесён легко. Три оси это доказывают

Я про перенос кода с других реализаций оберона, а там GC и все на этой реализации тупо утекет.

>Попробую запили в одну харю Аду или ржавого.

В свое время в одиночку форт пилил, ничего сложного в пилении примитивных языков не вижу.

>Ещё раз отдельно отмечу: существует ДВА ДЕСЯТКА реализаций Оберона одиночками.

Фортов и лиспов еще больше было, часто плохо совместимых, похоже тут та же болезнь.

>Нет. Нигде не упоминается обязательность GC.

Это очень плохо. Теперь более понятна стала для меня непопулярность оберонов. Вообще как-то раньше ставил побаловаться xds oberon,  его умения оптимизации кода тогда впечатлили.

Ответить | Правка | Наверх | Cообщить модератору

650. "Выпуск языка программирования Rust 1.54"  +/
Сообщение от Аноним (246), 03-Авг-21, 08:55 
Если уж говорить о промышленных языках, на которых написано вот всякое такое, то это Ada.

А оберон это для узкого круга фанатов, он слишком уж вещь в себе.

Ответить | Правка | К родителю #587 | Наверх | Cообщить модератору

657. "Выпуск языка программирования Rust 1.54"  +2 +/
Сообщение от Брат Анон (ok), 04-Авг-21, 08:39 
> Если уж говорить о промышленных языках, на которых написано вот всякое такое,
> то это Ada.
> А оберон это для узкого круга фанатов, он слишком уж вещь в
> себе.

Нет. Ада это полукоммерческий продукт, который в ардуино ты не запихнёшь при всём желании.
Узкий круг фанатов Оберона, ещё раз для уяснения: фазированная антенная решётка основного боевого самолёта Евросоюза -- "Еврофайтер", швейцарский национальный центр управления дорожным движением. процессинговый центр "Дойчебанка", диспетчерский центр управления каскадом ГРЭС на Амазонке, подсистема резервирования телеметрии на Ростовской АЭС, управляющая программа БПЛА (в России, гуглится на раз), подсистема дорасчёта электрических параметров ПС 110 кВ "Восточная-1" Калининград, система диспетчерского управления перерабатывающих заводов в Орле(2 шт, Мираторг),символьная система расчёта проблемы дефекта массы нейтрино (объединённый центр ядерных исследований, Дубна), комплекс приборов для исследования эффекта люминисценции в биологических растворах (Новосибирск), основы преподавания программирования (клуб "Байтик", Троицк), кружок программирвоания для детей при Новосибирском государственном федеральном университете.

В каком месте это узкий круг фанатов? В каком месте тут хоть раз использована Ада? Пишешь то, о чём не имеешь ни малейшего понятия. Попробуй детям попреподавать Аду -- я на тебя посмотрю. Вот те самые детишки, что освоили Оберон -- будут программировать на нём ВСЁ, и уних не будет болеть голова от концепции владения раста (с его диким синтаксисом) и не думая о том, что такое адресная арифметика, как не поломать память, и всякие низкоуровневые вещи. Но при этом, при необходимости -- всего могут спуститься на аппаратный уровень. Один язык для всегда -- это технологическое преимущество перед всеми остальными, кто сначала учит Васик, потом Паскаль, потом С++, а когда приходят на работу -- оказывается надо было учить питон или пхп какой-нибудь. На Обероне -- для программирования железа даже ассемблер не нужен, как отдельная сущность. Собственно, как отдельной сущности -- ассемблера в Обероне и нет (в отличии от Си, который в ассемблере всё же нуждается -- в сущности, второй язык).

Ответить | Правка | Наверх | Cообщить модератору

660. "Выпуск языка программирования Rust 1.54"  +/
Сообщение от Совершенно другой аноним (?), 05-Авг-21, 10:16 
> На Обероне -- для программирования железа даже ассемблер не нужен, как
> отдельная сущность. Собственно, как отдельной сущности -- ассемблера в Обероне и
> нет (в отличии от Си, который в ассемблере всё же нуждается
> -- в сущности, второй язык).

Если не сложно изложите по-подробнее - как Вы без ассемблера сможете в регистре CR0 установить соответствующий бит для перехода в защищенный режим? или загрузить регистр GDTR таблицы GDT?

Ответить | Правка | Наверх | Cообщить модератору

663. "Выпуск языка программирования Rust 1.54"  +/
Сообщение от Брат Анон (ok), 06-Авг-21, 09:03 
> Если не сложно изложите по-подробнее - как Вы без ассемблера сможете в
> регистре CR0 установить соответствующий бит для перехода в защищенный режим? или
> загрузить регистр GDTR таблицы GDT?

Оберон -- это ЯВУ. Ему плевать какие есть регистры в процессоре, потому что это уже не ЯВУ. А если таки руки чешутся добраться до железа (за что в Оберонах придётся мягко говоря серьёзно держать ответ перед тимлидом за такие выкрутасы) -- для этого во всех Оберонах есть псевдомодуль SYSTEM (который позволяет творить с железом что угодно и для безопасности -- импорт этого модуля легко детектируется анализатором исходников). SYSTEM (* если прям очень сильно хочется *) может содержать ассемблер, но в сущности -- он просто не нужен.  Манипуляцию с байтами в машинной памяти берёт на себя компилятор (у которого есть высокоуровневые сущности от железа, что существенно снижает вероятность косяков, но не даёт ложную уверенность программисту, что всё будет ништяк).

Ответить | Правка | Наверх | Cообщить модератору

664. "Выпуск языка программирования Rust 1.54"  +/
Сообщение от Совершенно другой аноним (?), 06-Авг-21, 10:13 
>> Если не сложно изложите по-подробнее - как Вы без ассемблера сможете в
>> регистре CR0 установить соответствующий бит для перехода в защищенный режим? или
>> загрузить регистр GDTR таблицы GDT?
> Оберон -- это ЯВУ. Ему плевать какие есть регистры в процессоре, потому
> что это уже не ЯВУ.

Ну, несмотря на то, что C до недавнего времени тоже был ЯВУ, и там для повседневной работы тоже не нужно было знать регистры, но мы вроде как про программирование железа - а там, как-раз эти регистры и есть, какие в процессоре, какие отображенные на память (иногда с хитрым поведением, когда для обнуления каких-то определённых бит надо именно эти биты записать в регистр, а иногда, которые просто обнуляются по факту чтения из данного регистра), а какие (в архитектуре 8086+) отображенные на специальное пространство ввода-вывода, к которому доступ идёт спец-командами (in/out).

> но в сущности -- он просто не нужен.  Манипуляцию с
> байтами в машинной памяти берёт на себя компилятор (у которого есть
> высокоуровневые сущности от железа, что существенно снижает вероятность косяков, но не
> даёт ложную уверенность программисту, что всё будет ништяк).

Всё-же не совсем понятно, как Вы можете не используя ассемблер, установить в регистре CR0, бит 0, чтобы перевести процессор в защищенный режим процессора. На память этот регистр не отображается. Ну или всякие взаимодействия с отладочными регистрами DR (мы-же вся так-же про программирование железа, в том числе и настроек самого процессора).

Ответить | Правка | Наверх | Cообщить модератору

671. "Выпуск языка программирования Rust 1.54"  +/
Сообщение от Брат Анон (ok), 09-Авг-21, 08:55 
> Ну, несмотря на то, что C до недавнего времени тоже был ЯВУ,...

Си никогда не был ЯВУ.

> и там для повседневной работы тоже не нужно было знать регистры,

Поэтому Си не ЯВУ.

> Всё-же не совсем понятно, как Вы можете не используя ассемблер, установить в
> регистре CR0, бит 0, чтобы перевести процессор в защищенный режим процессора.

Откройте для себя машинные команды.


Ответить | Правка | Наверх | Cообщить модератору

672. "Выпуск языка программирования Rust 1.54"  +/
Сообщение от Совершенно другой аноним (?), 09-Авг-21, 09:20 
>> Ну, несмотря на то, что C до недавнего времени тоже был ЯВУ,...
> Си никогда не был ЯВУ.

гм.. вообще-то был, до того, как пошли C++/Java.

>> и там для повседневной работы тоже не нужно было знать регистры,
> Поэтому Си не ЯВУ.

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

Как Вы из этого вывели, что C не ЯВУ? или под ЯВУ Вы понимаете что-то другое?

>> Всё-же не совсем понятно, как Вы можете не используя ассемблер, установить в
>> регистре CR0, бит 0, чтобы перевести процессор в защищенный режим процессора.
> Откройте для себя машинные команды.

какие-такие машинные команды, и как можно вписать в программу на Обероне? или как в старых ассемблерах, которые не поддерживали некоторые новые команды лепили что-то типа:

        db 0eah
        dw 0
        dw entry

Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




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

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