The OpenNET Project / Index page

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



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

Оглавление

Выпуск Lazarus 3.0, среды разработки для FreePascal , opennews (??), 22-Дек-23, (0) [смотреть все]

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


89. "Выпуск Lazarus 3.0, среды разработки для FreePascal "  +/
Сообщение от Аноним (13), 22-Дек-23, 19:38 
Изучать паскаль в школе - это плохо. Изучать C/C++ в школе - это преступление, за это надо бить морду совершенно не стесняясь. Серьезно.
Ответить | Правка | Наверх | Cообщить модератору

98. "Выпуск Lazarus 3.0, среды разработки для FreePascal "  +/
Сообщение от Ivan7 (ok), 22-Дек-23, 19:42 
> Изучать паскаль в школе - это плохо. Изучать C/C++ в школе -
> это преступление, за это надо бить морду совершенно не стесняясь. Серьезно.

:))) Правда? Зато я в результате со школы уже 25 лет C++ и ассемблер использую, спасибо школьному учителю)

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

108. "Выпуск Lazarus 3.0, среды разработки для FreePascal "  +/
Сообщение от Аноним (108), 22-Дек-23, 20:08 
Вот, яркий пример. 25 лет прошло, а так от ассемблера с сишечкой и не ушёл.
Ответить | Правка | Наверх | Cообщить модератору

115. "Выпуск Lazarus 3.0, среды разработки для FreePascal "  +1 +/
Сообщение от Ivan7 (ok), 22-Дек-23, 20:21 
Так за 25 лет реальных альтернатив связке C/C++ и ассемблер так и не появилось. По крайней мере, что касается задач высокоскоростной обработки данных, системного программирования, систем жёсткого реального времени, программирования микроконтроллеров, DSP-процессоров и т.п.
Ответить | Правка | Наверх | Cообщить модератору

124. "Выпуск Lazarus 3.0, среды разработки для FreePascal "  –2 +/
Сообщение от Аноним (13), 22-Дек-23, 20:34 
С - это язык для написания ядер ОС. Кресты - это ошибка природы без своей сферы.
>высокоскоростной обработки данных

Непонятно, что тут имеется ввиду. В зависимости от контекста может подойти Erlang или Elixir. Черт, да даже Java иногда.
>системного программирования

Rust, Go, Haskell, лиспы. Про лисп машины ты вообще не слышал?)
>систем жёсткого реального времени

Ada.
>программирования микроконтроллеров

Fort.

Где тут сишка?

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

126. "Выпуск Lazarus 3.0, среды разработки для FreePascal "  +1 +/
Сообщение от Ivan7 (ok), 22-Дек-23, 20:46 
1. Современный C++ - очень полезная вещь, но как и любым другим инструментом, им надо уметь грамотно пользоваться. Чистый C сейчас уже не актуален - там нет многих полезных и очень эффективных возможностей, которые есть в C++, и при этом он абсолютно ничего относительно С++ не добавляет ни в плане функциональности, ни в плане производительности, ни в плане компактности генерируемого кода. Фактически, это просто подмножество С++.

2. Я написал РЕАЛЬНЫХ альтернатив, а не всего этого зоопарка весьма специфических языков, каждый из которых был создан для своей узкой сферы применения.

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

159. "Выпуск Lazarus 3.0, среды разработки для FreePascal "  +1 +/
Сообщение от Аноним (13), 22-Дек-23, 22:36 
>Современный C++ - очень полезная вещь, но как и любым другим инструментом, им надо уметь грамотно пользоваться

Да что ты говоришь. Я выше по треду уже предложил изобразить механизм функторов на классах. Дерзай, ведь ты круто умеешь в кресты. А потом я покажу как это делают белые люди)
>Я написал РЕАЛЬНЫХ альтернатив, а не всего этого зоопарка весьма специфических языков, каждый из которых был создан для своей узкой сферы применения.

Прости, а о каком вообще инженерном деле ты можешь говорить, если не в курсе, что инструмент подбирается под задачу? И чем уже инструмент - тем лучше. А не одна silver bullet для ядер, численных методов и приложух на айфон для остлеживания менструаций. Если для тебя эрланг, лисп и форт - специфические языки, то я прям сконфужен. Может ты и про DSL не в курсе?

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

203. "Выпуск Lazarus 3.0, среды разработки для FreePascal "  +/
Сообщение от Ivan7 (ok), 23-Дек-23, 05:54 
> Я выше по треду уже предложил изобразить механизм функторов...

Осталось понять, зачем мне механизм функторов, и как я без него жил всю жизнь)

> чем уже инструмент - тем лучше

1. От конкретных инструментов и ситуации зависит. Например, для обработки текстовых данных, сгенерированных какими-то программами, я обычно использую Perl, потому что для этого типа задач он удобен, и программы на нём получаются короткие. Но если речь идёт об обработке большого объёма текстовых данных, и эта обработка более сложная, то Perl для этого уже не годится, - он слишком медленный и есть ряд других особенностей. Например, однажды мне нужно было делать разбор многих и многих гигабайт текстовых данных. Начал писать обработку на Perl, но уже на ранней стадии реализации предварительные тесты показали, что обработка такого объёма данных будет происходить слишком медленно. В результате бросил реализацию на полпути, и написал всё на C++ с ассемблерными вставками. Полностью реализованный алгоритм на С++ и ассемблере оказался в 500-1000 раз быстрее (в зависимости от входных параметров и данных, причём на ассемблере инструкции SIMD не использовал) наполовину реализованного на Perl (в обоих случаях тесты производились в один поток). Т.е. получилось, что как только речь зашла о производительности Perl отправился на свалку, как и все наработки, с ним связанные, что весьма прискорбно. Подобная ситуация и со многими другими языками, к сожалению.

2. Универсальность очень полезна. В случае с С/С++ удобно то, что можно использовать одни и те же или похожие инструменты, включая компиляторы, линковщики, оптимизаторы, отладчики, ассемблеры, дизассемблеры и другие инструменты, а также код, свои наработки и опыт для очень широкого круга задач, для разнородных устройств от малопотребляющих микроконтроллеров, работающих от маленькой батарейки годами, до суперкомпьютеров. Причём в большинстве случаев есть широкий выбор инструментов разработки. Практически для любого микроконтроллера и процессора и для любой операционки есть компиляторы С и ассемблера и часто не одни. Тот же GCC может компилировать код под многие архитектуры микроконтроллеров и процессоров. В результате мы получаем высокую степень повторного использования кода, наработок, навыков, знаний, опыта для очень широкого круга задач и разных сфер применения. Кроме того, у GCC и Clang прекрасная стыковка с ассемблером, что очень важно при реализации высокопроизводительных алгоритмов, и всегда является дополнительным козырем в рукаве, т.е. вы всегда уверены, что сможете получить наивысшую производительность, если и когда это потребуется.

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

227. "Выпуск Lazarus 3.0, среды разработки для FreePascal "  +/
Сообщение от Аноним (-), 23-Дек-23, 12:16 
> предложил изобразить механизм функторов на классах. Дерзай, ведь ты круто умеешь в кресты. А потом я покажу как это делают белые люди)

Э... а давай ты сразу покажешь, как делать правильно. Реально интересно посмотреть.
Потому что предложение попробовать забивать гвоздь микроскопом классное, но я все-таки взял бы молоток, который для этого предназначен.

Но вопрос у меня другой "а зачем?"
В какой прикладной задаче может понадобиться такое?
Например делаем мы ОС. Очень упрощенно: нам нужны дрова которые общаются с железом, ядро следящее за всем этим хозяйством, еще нужен какой-то файловый и оконный менеджер, поверх идет слой всяких прикладных приложений для большинства из которых нужно UI.
Причем желательно чтобы все кроме прикладных работало быстро -> язык у нас будет без GC.

В какой момент нам может понадобиться изображение механизма функторов?

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

158. "Выпуск Lazarus 3.0, среды разработки для FreePascal "  +/
Сообщение от Аноним (-), 22-Дек-23, 22:33 
Про лисп машины только слышать и можно. Еще можно картинки из музеев посмотреть.
Потому что вымерли они еще в 90х годах прошлого века (за исключение парочки совсем живучих легаси) и показали свою полную несостоятельность просто проиграв с разгромным счетом general-purpose system'ам.
Или есть что сказать?
Ответить | Правка | К родителю #124 | Наверх | Cообщить модератору

167. "Выпуск Lazarus 3.0, среды разработки для FreePascal "  +/
Сообщение от Аноним (13), 22-Дек-23, 22:49 
Это пример того, что системным программированием можно заниматься и на Лиспе. Причём со своими задачами Лисп машины справлялись на порядки лучше x86, альф и прочих и были коммерчески успешны.
>проиграв с разгромным счетом general-purpose system'ам.

И что? Просто это было дешевле для массового производства. Это ничего не говорит о качестве технологии. Транспьютеры вон тоже сдохли, а какая крутейшая технология была. Сейчас её кстати переизобретают)

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

170. "Выпуск Lazarus 3.0, среды разработки для FreePascal "  +1 +/
Сообщение от Аноним (-), 22-Дек-23, 22:58 
> системным программированием можно заниматься и на Лиспе.

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

> И что? Просто это было дешевле для массового производства.

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

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

175. "Выпуск Lazarus 3.0, среды разработки для FreePascal "  +/
Сообщение от Аноним (-), 22-Дек-23, 23:36 
> систем жёсткого реального времени

ThreadX - одна из самых распространенных, написана внезапно на С
seL4 - С + ассемблер
LynxOS - одна из версий может сертифицироваться по DO-178B (авиация) - Ada, C, C++
Марсоходы - Мисра-С

Так что Сишка очень даже распространена, надеюсь ее будут вытеснять новые языки (тк некоторые UB меня просто бесят), но пока это факт.
В LynxOS например добавили поддержку Раст.

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

121. "Выпуск Lazarus 3.0, среды разработки для FreePascal "  +/
Сообщение от Аноним (13), 22-Дек-23, 20:30 
Это полностью подтверждает мои слова)
Ответить | Правка | К родителю #98 | Наверх | Cообщить модератору

206. "Выпуск Lazarus 3.0, среды разработки для FreePascal "  +/
Сообщение от Тот_Самый_Анонимус_ (?), 23-Дек-23, 06:14 
>Изучать C/C++ в школе - это преступление

Да ничего подобного. Если не лезть в дебри языка, и использовать формулу «потом поймём, а пока просто запомним», то вполне себе учится.

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

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

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




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

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