Re[10]: Ржавчина - новый системный язык программирования
От: Воронков Василий Россия  
Дата: 09.07.10 09:04
Оценка:
Здравствуйте, FR, Вы писали:

FR>Раньше был гораздо более совместим.

FR>Ну и собирать совместно C++ / Си и прозрачно пользоваться из C++ сишным кодом без проблем.

Это какая-то очень странная совместимость. Реальный проект не соберется — хотя бы потому что в С++ кучу ключевых слов добавили, которые в С вполне могут использовать как идентификаторы. Но писать специально так, чтобы было совместимо, конечно, можно, да.

FR>Не обязательно трещит, можно существенно повысить безопасность и при прямой работе с памятью, даже в C++ она повыше чем в Си за счет

FR>более сильной статической типизации.
ВВ>>ИМХО высокоэффективный и высокобезопасный — это оксюморон.
FR>Но высокоэффективный и гораздо более безопасный чем Си/C++ вполне реально и главное востребовано.

Опять же — что есть "гораздо более"? В Obj C код более безопасен хотя бы за счет большего числа статических проверок типов, чем в С. До какой степени нужно еще доводить безопасность? Джава?

ВВ>>Кстати, очень хорошая причина серьезно подумать — а нужно ли изобретать еще один системный язык, если папа не миллионер.

FR>Тогда большей части живых и популярных языков не было бы

Это каких? Популярные нескриптовые языки — С, C++, Java, C#. У всех — папы.
Re[11]: Ржавчина - новый системный язык программирования
От: FR  
Дата: 09.07.10 09:13
Оценка:
Здравствуйте, Воронков Василий, Вы писали:

ВВ>Это какая-то очень странная совместимость. Реальный проект не соберется — хотя бы потому что в С++ кучу ключевых слов добавили, которые в С вполне могут использовать как идентификаторы. Но писать специально так, чтобы было совместимо, конечно, можно, да.


Это очень хорошая совместимость никакого FFI все прямо и прозрачно, я знаю так как немало совмещал

ВВ>Опять же — что есть "гораздо более"? В Obj C код более безопасен хотя бы за счет большего числа статических проверок типов, чем в С. До какой степени нужно еще доводить безопасность? Джава?


Тут я не понял как у ObjC может быть больше статических проверок если он свободно компилирует си?
Гораздо более опять же смотри D.

ВВ>>>Кстати, очень хорошая причина серьезно подумать — а нужно ли изобретать еще один системный язык, если папа не миллионер.

FR>>Тогда большей части живых и популярных языков не было бы

ВВ>Это каких? Популярные нескриптовые языки — С, C++, Java, C#. У всех — папы.


Скриптовых конечно
Re[9]: Ржавчина - новый системный язык программирования
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 09.07.10 09:31
Оценка: :))
Здравствуйте, Воронков Василий, Вы писали:

ВВ>ИМХО высокоэффективный и высокобезопасный — это оксюморон.

Хаскель?

На самом деле зависит от компилятора.
Раньше было модно писать на asm из-за высокой эффективности, потом внезапно оказалось что компилятор C дает более оптимальный ассемблерный выход, чем может написать человек.

Сейчас уже некоторые управляемые языки на некоторых задачах рвут C по быстродействию, при этом скорость управляемых языков растет быстрее, чем скорость C.
Re[4]: Ржавчина - новый системный язык программирования
От: CreatorCray  
Дата: 09.07.10 10:20
Оценка:
Здравствуйте, FR, Вы писали:

FR>Си не выбирал так как не вижу его преимуществ кроме простоты перед C++.

"Простота" С вылазит боком когда надо делать сколь либо сложные вещи.
Отсутствие RAII и шаблонов (для тех же контейнеров) вынуждает закатывать солнце вручную, что в общем то геморно.

FR>C++, но к сожалению он слишком переусложнен

Чем же? На С++ можно писать как на "C с классами". "Переусложнённые" фичи ж никто не принуждает использовать.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re: Ржавчина - новый системный язык программирования
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 09.07.10 10:57
Оценка:
Здравствуйте, Курилка, Вы писали:

К>LtU сообщает о языке Rust, разрабатываемым Mozilla (среди контрибьюторов небезызвестный Brendan Eich), позиционируемым как системный язык программирования с интересным набором фич.

К>Снова стало модным придумывать новые языки? (в голову почти сразу приходит ещё свежий гугловский Go)

Майнстрим осваивает DSL-строение. Получится, "как всегда" у майнстрима, но майнстриму много чего можно.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[12]: Ржавчина - новый системный язык программирования
От: Воронков Василий Россия  
Дата: 09.07.10 11:40
Оценка:
Здравствуйте, FR, Вы писали:

ВВ>>Это какая-то очень странная совместимость. Реальный проект не соберется — хотя бы потому что в С++ кучу ключевых слов добавили, которые в С вполне могут использовать как идентификаторы. Но писать специально так, чтобы было совместимо, конечно, можно, да.

FR>Это очень хорошая совместимость никакого FFI все прямо и прозрачно, я знаю так как немало совмещал

Ну тебе виднее Однако ж мой опыт был не самым приятным. В случае с Obj C валидный код на С является и валидным кодом на Obj C, в случае с С и С++ это далеко не всегда так, а значит, видимо, уже не совместимость во главу угла ставится. А раз нет — то чего ее винить в том, что язык вышел таким.

ВВ>>Опять же — что есть "гораздо более"? В Obj C код более безопасен хотя бы за счет большего числа статических проверок типов, чем в С. До какой степени нужно еще доводить безопасность? Джава?

FR>Тут я не понял как у ObjC может быть больше статических проверок если он свободно компилирует си?
FR>Гораздо более опять же смотри D.

Ну если ты пишешь "в стиле С", то конечно типизация никак не улучшится. Ну так не пишите на Obj С как на простом С, в чем проблема-то? ООП ж для кого-то прикручивали.

ВВ>>Это каких? Популярные нескриптовые языки — С, C++, Java, C#. У всех — папы.

FR>Скриптовых конечно

А у скриптовых тоже папы есть, куда без них-то. Какой-то там самый-самый популярный? Правильно, ДжаваСкрипт
А какой "папа" РОР развивает? Тот же, что и Obj С, как ни странно.

Да, собственно, и у Obj C изначально "папы" никакого не было, папа уже потом его приютил. А кто, собственно, мешал папе обратить свои взоры на что-то более другое? Так что, видимо, от языка тоже многое зависит.
Re[10]: Ржавчина - новый системный язык программирования
От: Воронков Василий Россия  
Дата: 09.07.10 11:43
Оценка: +3
Здравствуйте, gandjustas, Вы писали:

ВВ>>ИМХО высокоэффективный и высокобезопасный — это оксюморон.

G>Хаскель?

Что Хаскель?

G>На самом деле зависит от компилятора.

G>Раньше было модно писать на asm из-за высокой эффективности, потом внезапно оказалось что компилятор C дает более оптимальный ассемблерный выход, чем может написать человек.

"Внезапно" ничего не оказалось. Просто со временем стали делать хорошие оптимизирующие компиляторы для С. А в то время, когда "модно" было писать на асме, компиляторы были никакие.

G>Сейчас уже некоторые управляемые языки на некоторых задачах рвут C по быстродействию, при этом скорость управляемых языков растет быстрее, чем скорость C.


"Некоторые языки на некоторых задачах"? Боюсь эти языки и задачи по большей части в воображении у .NET-программистов существуют. Да и что-то прогресса в скорости у управляемых языков тоже видно. Скорее наоборот. У нас вот "вычислялка" при перекомпиляции C# 4.0 вместо 3.5 стала стабильно медленнее на 5-7%.
Re[11]: Ржавчина - новый системный язык программирования
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 09.07.10 12:07
Оценка: -1
Здравствуйте, Воронков Василий, Вы писали:

ВВ>Здравствуйте, gandjustas, Вы писали:



G>>На самом деле зависит от компилятора.

G>>Раньше было модно писать на asm из-за высокой эффективности, потом внезапно оказалось что компилятор C дает более оптимальный ассемблерный выход, чем может написать человек.

ВВ>"Внезапно" ничего не оказалось. Просто со временем стали делать хорошие оптимизирующие компиляторы для С. А в то время, когда "модно" было писать на асме, компиляторы были никакие.

Мода закончилась лет 5 назад (а у некоторых до сих пор есть), а компиляторы стали довольно эффективными гораздо раньше.

G>>Сейчас уже некоторые управляемые языки на некоторых задачах рвут C по быстродействию, при этом скорость управляемых языков растет быстрее, чем скорость C.


ВВ>"Некоторые языки на некоторых задачах"? Боюсь эти языки и задачи по большей части в воображении у .NET-программистов существуют.

Лениво искать бенчмарки, но прецеденты есть. А когда дело касается кодогенерации, то управляемые среды на высоте.

ВВ>Да и что-то прогресса в скорости у управляемых языков тоже видно. Скорее наоборот. У нас вот "вычислялка" при перекомпиляции C# 4.0 вместо 3.5 стала стабильно медленнее на 5-7%.

Отличная логика. Ты даже не знаешь в чем причины этих 5-7%, но говоришь об отсутствии прогресса.
Re[12]: Ржавчина - новый системный язык программирования
От: Воронков Василий Россия  
Дата: 09.07.10 12:21
Оценка: +3
Здравствуйте, gandjustas, Вы писали:

ВВ>>"Внезапно" ничего не оказалось. Просто со временем стали делать хорошие оптимизирующие компиляторы для С. А в то время, когда "модно" было писать на асме, компиляторы были никакие.

G>Мода закончилась лет 5 назад (а у некоторых до сих пор есть), а компиляторы стали довольно эффективными гораздо раньше.

Ну вот пытаюясь я посмотреть 1080p рип с каким-то там кодеком по умолчанию — тормозит. Ставлю CoreAVC с "ассемблерными вставками" — елки, и все летает, еще и в студии паралелльно компилировать можно.
И, ты знаешь, я очень рад, что "у некоторых до сих пор" эта мода не закончилась.

G>>>Сейчас уже некоторые управляемые языки на некоторых задачах рвут C по быстродействию, при этом скорость управляемых языков растет быстрее, чем скорость C.


ВВ>>"Некоторые языки на некоторых задачах"? Боюсь эти языки и задачи по большей части в воображении у .NET-программистов существуют.

G>Лениво искать бенчмарки, но прецеденты есть. А когда дело касается кодогенерации, то управляемые среды на высоте.

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

ВВ>>Да и что-то прогресса в скорости у управляемых языков тоже видно. Скорее наоборот. У нас вот "вычислялка" при перекомпиляции C# 4.0 вместо 3.5 стала стабильно медленнее на 5-7%.

G>Отличная логика. Ты даже не знаешь в чем причины этих 5-7%, но говоришь об отсутствии прогресса.

Я знаю, в чем причина — в коде, который генерирует новая версия компилятора. Бинарники, собранные старой версией, работают одинаково что на 3.5, что на 4.0 фреймворке. Мне надо вгрызаться в ИЛ и выяснять, что он там не так соптимизировал? А когда выясню — что делать? Код написан оптимально, дальше уже руки выкручивать не получится. Ассемблерных вставок, как понимаешь, в C# нет.
Мне в принципе пофиг на эти 5% — было бы не пофиг, код был бы написал на чем-то более другом, чем C#. Но как-то неясно, откуда "прогресс" в скорости управляемых языков возьмется, если этим никто не занимается. А фичи вот прикручивают прямо-таки на конвеерной основе.
Re[10]: Ржавчина - новый системный язык программирования
От: Mazay Россия  
Дата: 09.07.10 13:45
Оценка:
Здравствуйте, gandjustas, Вы писали:

G>Здравствуйте, Воронков Василий, Вы писали:


ВВ>>ИМХО высокоэффективный и высокобезопасный — это оксюморон.

G>Хаскель?

Ты модель Изинга уже эффективно на Хаскеле реализовал? Может тот топик поднять?
Главное гармония ...
Re[11]: Ржавчина - новый системный язык программирования
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 09.07.10 13:48
Оценка:
Здравствуйте, Mazay, Вы писали:

M>Здравствуйте, gandjustas, Вы писали:


G>>Здравствуйте, Воронков Василий, Вы писали:


ВВ>>>ИМХО высокоэффективный и высокобезопасный — это оксюморон.

G>>Хаскель?

M>Ты модель Изинга уже эффективно на Хаскеле реализовал? Может тот топик поднять?

Нет, зато несколько раз эффективно парсер-комбинаторы делал, так что никакие С не сравнятся.
Re[11]: Ржавчина - новый системный язык программирования
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 09.07.10 13:51
Оценка:
Здравствуйте, Mazay, Вы писали:

M>Здравствуйте, gandjustas, Вы писали:


G>>Здравствуйте, Воронков Василий, Вы писали:


ВВ>>>ИМХО высокоэффективный и высокобезопасный — это оксюморон.

G>>Хаскель?

M>Ты модель Изинга уже эффективно на Хаскеле реализовал? Может тот топик поднять?


Кстати никто не мешает её сделать эффективно с inplace присваиваниями, только это будет IO.
Re[12]: Ржавчина - новый системный язык программирования
От: Mazay Россия  
Дата: 09.07.10 13:57
Оценка: +1
Здравствуйте, gandjustas, Вы писали:

G>Нет, зато несколько раз эффективно парсер-комбинаторы делал, так что никакие С не сравнятся.


А в Киеве дядька. Никто же не говорит, что C/C++ всегда хорош. Можно сказать (учитывая вечную, хоть и призрачную на плюсах, угрозу расстрела памяти), что он всегда плох. Важно что бывают задачи, где все остальное не просто плохо, а неприемлемо плохо. Например те же видео декодеры. Там либо успеваешь декодировать с требуемой скоростью, либо можешь вообще не писать код. Даже если тебе не хватает каких-то 3%. Приходится из двух зол выбирать меньшее.

Потому и пишут новые языки.
Главное гармония ...
Re[5]: Ржавчина - новый системный язык программирования
От: FR  
Дата: 09.07.10 14:07
Оценка: +1
Здравствуйте, CreatorCray, Вы писали:

FR>>Си не выбирал так как не вижу его преимуществ кроме простоты перед C++.

CC>"Простота" С вылазит боком когда надо делать сколь либо сложные вещи.
CC>Отсутствие RAII и шаблонов (для тех же контейнеров) вынуждает закатывать солнце вручную, что в общем то геморно.

Угу, даже на несложных вещах за счет той же STL и буста C++ зачастую лучше.

FR>>C++, но к сожалению он слишком переусложнен

CC>Чем же? На С++ можно писать как на "C с классами". "Переусложнённые" фичи ж никто не принуждает использовать.

Не получается. Во первых даже на "C с классами" есть немало не очевидных мест, те же виртуальные деструкторы,
конструкторы копирования и т. п. Ну и во вторых я вообще не вижу смысла в "C с классами" при написании библиотек
для других языков, тут гораздо полезнее именно RAII шаблоны и т. п.
Re: Ржавчина - новый системный язык программирования
От: Mazay Россия  
Дата: 09.07.10 14:08
Оценка: +1
Здравствуйте, Курилка, Вы писали:

К>LtU сообщает о языке Rust, разрабатываемым Mozilla (среди контрибьюторов небезызвестный Brendan Eich), позиционируемым как системный язык программирования с интересным набором фич.

К>Снова стало модным придумывать новые языки? (в голову почти сразу приходит ещё свежий гугловский Go)

Интересно, вот это что?
http://github.com/graydon/rust/graphs/languages
Доля кода на соответствующих языках в проекте?
Главное гармония ...
Re[7]: Ржавчина - новый системный язык программирования
От: Lazy Cjow Rhrr Россия lj://_lcr_
Дата: 09.07.10 14:09
Оценка: +2
Воронков Василий,

ВВ>Но, кстати, тут бы определиться — шаблоны и статическая типизация вообще не очень дружат.


Что-то новенькое...
quicksort =: (($:@(<#[),(=#[),$:@(>#[)) ({~ ?@#)) ^: (1<#)
Re[13]: Ржавчина - новый системный язык программирования
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 09.07.10 14:10
Оценка: +1
Здравствуйте, Mazay, Вы писали:

M>Здравствуйте, gandjustas, Вы писали:


G>>Нет, зато несколько раз эффективно парсер-комбинаторы делал, так что никакие С не сравнятся.


M>А в Киеве дядька. Никто же не говорит, что C/C++ всегда хорош. Можно сказать (учитывая вечную, хоть и призрачную на плюсах, угрозу расстрела памяти), что он всегда плох. Важно что бывают задачи, где все остальное не просто плохо, а неприемлемо плохо. Например те же видео декодеры. Там либо успеваешь декодировать с требуемой скоростью, либо можешь вообще не писать код. Даже если тебе не хватает каких-то 3%. Приходится из двух зол выбирать меньшее.


А я разве что-то другое утверждал?

M>Потому и пишут новые языки.


Языки пишут по куче причин. Хотя сейчас больше потребность не в языках, а в качественных компиляторах.
Re[10]: Ржавчина - новый системный язык программирования
От: Mr.Cat  
Дата: 09.07.10 14:11
Оценка:
Здравствуйте, gandjustas, Вы писали:
ВВ>>ИМХО высокоэффективный и высокобезопасный — это оксюморон.
G>Хаскель?
Лев Валкин на margincon, кстати, не очень хорошо о его перфомансе отзывался: http://www.slideshare.net/j2a/ss-4625844. Они там в итоге OCaml предпочли.
Re[2]: Ржавчина - новый системный язык программирования
От: BlackEric http://black-eric.lj.ru
Дата: 09.07.10 14:13
Оценка: 2 (1) +1 :)
Здравствуйте, FR, Вы писали:

FR>Здравствуйте, Курилка, Вы писали:


К>>Снова стало модным придумывать новые языки? (в голову почти сразу приходит ещё свежий гугловский Go)


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

FR>не был так переусложнен как C++. Плюс язык должен быть гораздо более безопасным чем C/C++.
FR>Потребность сейчас стала более острой, так как, развеялись иллюзии что управляемые платформы (java net) смогут
FR>покрыть все потребности прикладного программирования.

Это Pascal (Delphi)?
Если в нем разрешить описывать переменные в любом месте (как в Java) и для любителей разрешить вместо begin/end писать {}, то будет почти идеально
https://github.com/BlackEric001
Re[2]: Ржавчина - новый системный язык программирования
От: Mystic Украина http://mystic2000.newmail.ru
Дата: 09.07.10 14:14
Оценка: +1 :)
Здравствуйте, FR, Вы писали:

FR>Потребность сейчас стала более острой, так как, развеялись иллюзии что управляемые платформы (java net) смогут

FR>покрыть все потребности прикладного программирования.

В этом плане мне нравиться Delphi. Как вариант Ada.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.