LINUX.ORG.RU
ФорумTalks

C-хейтерам


0

2

Какие есть у C живые альтернативы для вычислительных программ, требующих максимизации производительности, но лишенные его недостатков?

Использование C только для вычислительных задач, но не для логики.

note173
()

А какие конкретно недостатки Вы имеете в виду?

trex6
()

кресты там, objc, D... Есть и более экзотические вещи, но я бы в сторону последних двух присмотрелся.

true_admin
()

Си++. Используется, например, в одном институте для вычислений по физ.-мат. моделям гидродинамики.

pacify
()
Ответ на: комментарий от pacify

Си++

не катит, там все недостатки Си бережно сохранены и к ним щедро добавлены новые.

DNA_Seq
()

тут куча вариантов и вопросов,

1). где и как выполняется 1 хост, кластер, SMP.

2). Какие основные операции выполняются,

3). что хочется улучшать concurrency или parallelism

4). есть ли при этом активное взаимодействие с IO

5). и т.д.

при этом выигрывать могут как fortran, так плюсы, а то и специализированные языки, хотя там обычно low-level нод на одном из указанных плюс c.

qnikst
()

C++

но лишенные его недостатков?

Смотря каких.

geekless
()

А разве у Си есть какие-то недостатки кроме отсутствия нормального наследования структур (чтобы можно было сделать ООП)?

KivApple 👍👍👍
()
Ответ на: комментарий от KivApple

А разве у Си есть какие-то недостатки кроме ...

Для ВЫЧИСЛИТЕЛЬНЫХ задач часто предпочтительнее фортран - работа с массивами реализована принципиально по другому и богатая математическая библиотека.

sergv
()

Смотря какие именно недостатки. Не знаю насколько оно живо, но тут еще не упоминали Cyclone.

pss
()
Ответ на: комментарий от KivApple

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

DNA_Seq
()

Берём любой ЯП, прикручиваем к нему inline c (наподобие inline asm в C), PROFIT!

PolarFox
()
Ответ на: комментарий от DNA_Seq

и да, отсутствие раздельной компиляции => отсутствие бинарной совместимости

DNA_Seq
()
Ответ на: комментарий от DNA_Seq

отсутствие встроенных регэкспов

В системном ЯП?!

отсутствие всякой защиты от ошибок переполнения буфера

Всякой защиты навалом - strncmp, fgets...

отсутствие раздельной компиляции => отсутствие бинарной совместимости

А также отсутствие раздельной компиляции => максимально возможная производительность кода. Отсутствие бинарной совместимости - необходимая плата.

unsigned
()
Ответ на: комментарий от greenzu

а в 90м или 2008м есть pointerы на функции/процедуры?

thunar ☕☕☕
()
Ответ на: комментарий от KivApple

А разве у Си есть какие-то недостатки кроме отсутствия нормального наследования структур (чтобы можно было сделать ООП)?

Да и с этим вроде нормально всё при поддержке unnamed fields. Правда, хз - как множественное наследование делается и нормальные таблицы виртуальных методов.

backbone
()

Какие есть у C живые альтернативы для вычислительных программ, требующих максимизации производительности

Фортран же.

Manhunt ☕☕
()
Ответ на: комментарий от unsigned

В системном ЯП?!

Если система - *nix то регэкспы необходимы

А также отсутствие раздельной компиляции => максимально возможная производительность кода.

Ну вообще по http://shootout.alioth.debian.org/ си частенько сливает фортрану

DNA_Seq
()

Си - хороший язык. Для написания ядра и компиляторов/интерпретаторов языков высокого уровня. Но это не значит, что надо на нем писать вплоть до интерфейсов.

vurdalak
()
Ответ на: комментарий от vurdalak

10-15 лет гномодевы это делали, и ничо :)
И заметь, как только переехали с православного С на пэтоны, моны, валы, муялы - так сразу же скатились в СГ.

Jetty
()
Ответ на: комментарий от Jetty

Для меня гном и GTK всегда был СГ. Я язык тут ни при чем, просто оно прибито гвоздами изо всех щелей.

vurdalak
()
Ответ на: комментарий от vurdalak

Си - хороший язык. Для написания ядра и компиляторов/интерпретаторов языков высокого уровня. Но это не значит, что надо на нем писать вплоть до интерфейсов.

и это также не значит, что ради простой формочки надо в проект кучу сторонних библиотек натаскивать и лепить интерфейсы к другим ЯП

shty
()
Ответ на: комментарий от shty

Это значит, что у разных языков разное применение. Я тоже не сторонник той же джавы SE (банально потому, что свинг не подхватывает тему кьюта). А вот питон или баш для скриптов самое оно, и писать их на сях глупо.

vurdalak
()
Ответ на: комментарий от stevejobs

Верблюд. O'Caml то есть. У него вполне неплохая производительность

Всегда считал что верблюдом Perl называют...

encyrtid
()

но лишенные его недостатков?

Эт каких недостатков?

Siado
()

А это, LISP ужо советовали?

Siado
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.