Важное сообщение для всех, программирующих на C/C++ ...
25 причин, по которым вы собираетесь перейти на Euphoria!
-
потому что вы устали переизобретать динамическое распределение памяти
для каждой программы, которую вы пишете
-
потому что вы хотите забыть о ближних и дальних указателях,
о малой, средней, компактной, большой и громадной моделях памяти
-
потому что вы провели слишком много невеселых часов, исправляя
ошибки, связанные с распределением памяти
-
потому что вы уже один раз наигрались в кошки-мышки с ошибкой,
которая как только есть, так ее сразу нет и которая в конце концов
оказалась всего лишь неинициализированной переменной
-
потому что независимо от того, как трудно вам было устранить утечку
памяти, уже готова следующая дыра для этой склеротической жидкости
-
потому что вы устали перезагружать машину, молча зависающую по
одной из 10.000 команд вашей программы без всяких комментариев
на тему о том, что же ей не по нутру
-
потому что вы знаете, что проверка индексов
избавит вас от многих часов отладки
-
потому что вы не хотите, чтобы ваша программа переписывала первые
подвернувшиеся ей блоки памяти как попало из-за очумевших указателей
-
потому что вы знаете, как плохо будет при переполнении стека, но
не можете придумать, как от этого застраховаться
-
потому что однажды вы уже имели дело с функцией, которая вместо того,
чтобы расчитать требуемую величину, вывалила кучу случайного мусора
-
потому что вы хотите, чтобы библиотечные процедуры просто не позволяли
вам подавать в них неверные аргументы, а не вывешивали "errno" или еще
что-нибудь в этом духе (кому охота видеть это "errno" после каждого вызова?)
-
потому что вы хотели бы "перекомпилировать вселенную" за долю секунды
а не ждать долгие минуты - вам больше нравится работать быстро в цикле
редактирование/исполнение, чем тянуть резину в цикле
редактирование/компиляция/компоновка/исполнение.
-
потому что в третьем издании книги "Язык программирования C++"
Бьярна Строустрапа 911 страниц, набранных убористым шрифтом, но там
даже не обсуждается специфика программирования для платформ
DOS, Windows, Linux или любых других операционных систем.
-
потому что вы уже "забор" с клавиатуры стерли, программируя на C/C++,
но еще, говорят, есть множество достоинств этих языков, которые так и
остаются для вас загадкой, вы даже не знаете, для чего же они и
нужны-то, эти достоинства
-
потому что переносимости программ не так легко добиться, как это
кажется продавцам C/C++
-
потому что вы знаете диапазон законных значений для каждой из своих
переменных, но не можете достаточно просто его проконтролировать
во время прогона программы
-
потому что вам нужно передавать в процедуру переменное число аргументов,
но вас удручают сложности реализации этого на C
-
потому что вам нужен ясный путь
получения на выходе функции многих величин, а не одной
-
потому что вам нужен встроенный
полноэкранный отладчик исходного кода
который было бы легко использовать без ежеминутного поиска рецептов в
руководстве (или без начинки программы операторами print)
-
потому что вы терпеть не можете, когда ваша программа начинает работать,
только если ее откомпилировать в отладочном режиме
-
потому что вам нужен действительный и точный
профиль выполнения операторов,
чтобы в деталях разобраться с внутренней динамикой хода вашей программы
и выжать из нее предельную производительность
-
потому что некоторые из ваших программ требуют учета буквально каждого
машинного цикла. Разница в скорости между Euphoria и C/C++ не так велика,
как вы могли бы думать. Попробуйте испытать производительность. Мы уверены,
что вы будете приятно удивлены!
-
потому что вы не хотите захламлять ваш винчестер .obj и
.exe файлами
-
потому что вы хотите поскорее взглянуть, как работает ваша программа,
а не рыться в нескольких сотнях страниц документации, чтобы решить,
какие режимы компилятора и компоновщика вам в действительности нужны
-
потому что ваш C/C++ пакет содержит 57 различных процедур распределения
памяти и 67 различных процедур для манипулирования строками и блоками
памяти. Сколько таких процедур нужно Euphoria?
Ответ: нуль.
В Euphoria распределение памяти происходит
автоматически, а строки обрабатываются точно так же как и все
остальные ряды.
|