Инструменты для разработки в Windows 3.11, Windows 95

Разработка приложений под ретро системы
Аватара пользователя
froller
Advanced Member
Сообщения: 396
Зарегистрирован: 07.02.2020,17:47
Откуда: Ленинград
Благодарил (а): 3 раза
Поблагодарили: 4 раза

Инструменты для разработки в Windows 3.11, Windows 95

Сообщение froller » 24.12.2023,20:46

Qulif писал(а): 24.12.2023,20:35 froller, на вики пишут что vim написан на Ц со скриптовыми костылями
Совершенно верно. Я в исходник глянул. Там нет С++. Там чистый С.
В root мне логи!!

Qulif
Advanced Member
Сообщения: 617
Зарегистрирован: 15.09.2019,19:54
Откуда: Russia

Инструменты для разработки в Windows 3.11, Windows 95

Сообщение Qulif » 24.12.2023,20:50

froller писал(а): 24.12.2023,20:46
Qulif писал(а): 24.12.2023,20:35 froller, на вики пишут что vim написан на Ц со скриптовыми костылями
Совершенно верно. Я в исходник глянул. Там нет С++. Там чистый С.
То бишь любой Ц с крестами будет за глаза, кресты лишь для вкусовщинного удобства написания кода.
Non-System disk or disk error replace and strike any key when ready

Аватара пользователя
froller
Advanced Member
Сообщения: 396
Зарегистрирован: 07.02.2020,17:47
Откуда: Ленинград
Благодарил (а): 3 раза
Поблагодарили: 4 раза

Инструменты для разработки в Windows 3.11, Windows 95

Сообщение froller » 24.12.2023,22:55

Qulif писал(а): 24.12.2023,20:50 То бишь любой Ц с крестами будет за глаза, кресты лишь для вкусовщинного удобства написания кода.
Нет, есть задачи, которые на плюсах решаются проще. Но на чистом C можно сделать все то же самое, только писать и отлаживать это будет очень больно.
И в самом C++ в разных стандартах может присутствовать полезный инструментарий, который иначе придется писать самому, причем не факт, что ты сможешь сделать это хорошо. Например, строки, контейнеры, часто используемые алгоритмы и т.д.
Но если говорить о компиляторах конца 90-х, то в то время стандартная библиотека C++ был достаточно бедной и кресты действительно больше походили на С с ништяками.
В root мне логи!!

Qulif
Advanced Member
Сообщения: 617
Зарегистрирован: 15.09.2019,19:54
Откуда: Russia

Инструменты для разработки в Windows 3.11, Windows 95

Сообщение Qulif » 24.12.2023,23:03

froller писал(а): 24.12.2023,22:55
Qulif писал(а): 24.12.2023,20:50 То бишь любой Ц с крестами будет за глаза, кресты лишь для вкусовщинного удобства написания кода.
Нет, есть задачи, которые на плюсах решаются проще. Но на чистом C можно сделать все то же самое, только писать и отлаживать это будет очень больно.
И в самом C++ в разных стандартах может присутствовать полезный инструментарий, который иначе придется писать самому, причем не факт, что ты сможешь сделать это хорошо. Например, строки, контейнеры, часто используемые алгоритмы и т.д.
Но если говорить о компиляторах конца 90-х, то в то время стандартная библиотека C++ был достаточно бедной и кресты действительно больше походили на С с ништяками.
Полезный инструментарий в более новых относительно 90х стандартах С++ это здорово, только нужно приложить усилия к его освоению.
А так даже простого Ц достаточно для написания хорошего продукта как vim.

После ассемблера Ц кажется развитым кросплатформенным языком, Ц с крестами вообще кажется обладает заоблачными наворотами, правда чем дальше тем тяжелей понять зачем это все и какая разница с тем что уже есть - ссылки и указатели тому пример
Non-System disk or disk error replace and strike any key when ready

Аватара пользователя
froller
Advanced Member
Сообщения: 396
Зарегистрирован: 07.02.2020,17:47
Откуда: Ленинград
Благодарил (а): 3 раза
Поблагодарили: 4 раза

Инструменты для разработки в Windows 3.11, Windows 95

Сообщение froller » 25.12.2023,01:30

Qulif писал(а): 24.12.2023,23:03 Ц с крестами вообще кажется обладает заоблачными наворотами, правда чем дальше тем тяжелей понять зачем это все и какая разница с тем что уже есть
В Ц и Ц++ у тебя разные парадигмы программирования. Надо попробовать и то, и другое, чтоб интуитивно понимать, что лучше применять в каждом конкретном случае.
Если ты поймал себя на том, что тебе из функции в функцию приходится таскать контекст (жирную структуру с кучей полей), или одинаковый набор аргументов мигрирует между функами, то это верный признак того, что этот кусок просится быть переписанным на объекты. Благо плюсы позволяют писать как ОО-код, так и обычный процедурный, и даже смешивать их, если вдруг сильно надо.
Qulif писал(а): 24.12.2023,23:03 ссылки и указатели тому пример
Это разные вещи. Ссылки не существуют во время выполнения. Они все разрешаются во время компиляции.
В root мне логи!!

JordanCpp
Newbie
Сообщения: 10
Зарегистрирован: 20.11.2023,09:12
Откуда: Самара

Инструменты для разработки в Windows 3.11, Windows 95

Сообщение JordanCpp » 25.12.2023,05:58

Qulif писал(а): 24.12.2023,13:40
froller писал(а): 16.12.2023,01:28
JordanCpp писал(а): 12.12.2023,16:56 Для Windows 95 есть mingw поддерживающий С++ 11.

Смысла юзать borland C++ 3.1 или подобное нет. Под есть OpenWatcom v2, поддерживает под DOS С++ 11.
Ну, вдруг кто-то настолько проникся духом эпохи, что решил использовать винтажные компиляторы? :biggrin:
И когда на Ц без крестов пишешь, разницы нет умеет оно что-нть новее C98 или нет.

Интересно а что из Ц с крестами для старых систем нужно без чего старые среды разработки так негодны ???

С++4.0 или vs6 по мойму там почти все что нужно есть ....
Vim чтоле надо перекомпилить под дос или 95 ??

Имхо не фишечки рюшечки ide а реальный код который реально что то делает - вот это нужно
Вот реальный проект написанный на С++ 98 использующий в том числе и старые компиляторы. Опубликована мультимедийная библиотека LDL, оптимизированная для маломощных систем.

Visual C++ 6.0 вполне покрывает С++ 98, есть небольшие косяки с STL, но в целом подходит для разработки.

JordanCpp
Newbie
Сообщения: 10
Зарегистрирован: 20.11.2023,09:12
Откуда: Самара

Инструменты для разработки в Windows 3.11, Windows 95

Сообщение JordanCpp » 25.12.2023,06:00

Qulif писал(а): 24.12.2023,20:50 кресты лишь для вкусовщинного удобства написания кода.
Вкусовщина здесь не подходит. С++ это не просто удобство написания кода, а язык поддерживающий оперделенные возможности. Которые уже упрощают написание кода.

JordanCpp
Newbie
Сообщения: 10
Зарегистрирован: 20.11.2023,09:12
Откуда: Самара

Инструменты для разработки в Windows 3.11, Windows 95

Сообщение JordanCpp » 25.12.2023,06:02

Qulif писал(а): 24.12.2023,23:03 После ассемблера Ц кажется развитым кросплатформенным языком, Ц с крестами вообще кажется обладает заоблачными наворотами, правда чем дальше тем тяжелей понять зачем это все и какая разница с тем что уже есть - ссылки и указатели тому пример
А ещё есть ООП, шаблоны, namespace и т.д Каждая возможность языка С++, решает свои задачи.

Qulif
Advanced Member
Сообщения: 617
Зарегистрирован: 15.09.2019,19:54
Откуда: Russia

Инструменты для разработки в Windows 3.11, Windows 95

Сообщение Qulif » 25.12.2023,17:32

JordanCpp писал(а): 25.12.2023,06:02
Qulif писал(а): 24.12.2023,23:03 После ассемблера Ц кажется развитым кросплатформенным языком, Ц с крестами вообще кажется обладает заоблачными наворотами, правда чем дальше тем тяжелей понять зачем это все и какая разница с тем что уже есть - ссылки и указатели тому пример
А ещё есть ООП, шаблоны, namespace и т.д Каждая возможность языка С++, решает свои задачи.
Да, да банду четырех читал, namespace тоже вещь нужная, но для всего этого можно обойтись просто Ц если постараться .... а так да Ц с крестами и навороты, навороты, навороты .... только зачем они нам на пне втором ???
Non-System disk or disk error replace and strike any key when ready

Qulif
Advanced Member
Сообщения: 617
Зарегистрирован: 15.09.2019,19:54
Откуда: Russia

Инструменты для разработки в Windows 3.11, Windows 95

Сообщение Qulif » 25.12.2023,17:34

froller писал(а): 25.12.2023,01:30
Qulif писал(а): 24.12.2023,23:03 Ц с крестами вообще кажется обладает заоблачными наворотами, правда чем дальше тем тяжелей понять зачем это все и какая разница с тем что уже есть
В Ц и Ц++ у тебя разные парадигмы программирования. Надо попробовать и то, и другое, чтоб интуитивно понимать, что лучше применять в каждом конкретном случае.
Если ты поймал себя на том, что тебе из функции в функцию приходится таскать контекст (жирную структуру с кучей полей), или одинаковый набор аргументов мигрирует между функами, то это верный признак того, что этот кусок просится быть переписанным на объекты. Благо плюсы позволяют писать как ОО-код, так и обычный процедурный, и даже смешивать их, если вдруг сильно надо.
Qulif писал(а): 24.12.2023,23:03 ссылки и указатели тому пример
Это разные вещи. Ссылки не существуют во время выполнения. Они все разрешаются во время компиляции.
Вот по поводу жирной структуры это явно просится указатель на область с данными...
Non-System disk or disk error replace and strike any key when ready

JordanCpp
Newbie
Сообщения: 10
Зарегистрирован: 20.11.2023,09:12
Откуда: Самара

Инструменты для разработки в Windows 3.11, Windows 95

Сообщение JordanCpp » 25.12.2023,17:49

Qulif писал(а): 25.12.2023,17:32 а так да Ц с крестами и навороты, навороты, навороты .... только зачем они нам на пне втором ???
Выше я разместил ссылку на свой проект библиотеки. Так вот, эти навороты требуют 75 mhz и 6 мб ОЗУ. И ещё есть запас по оптимизации. Навороты никак ни мешают разрабатывать софт, в основном помогает.

Ответить