Re[2]: C++ vs ???
От: alexeiz  
Дата: 02.12.05 08:34
Оценка:
Здравствуйте, c-smile, Вы писали:

CS>D как язык для UI лучше чем C++ скажем в разы. Это я со всей отвественностью

CS>могу сказать.

А причины не трудно описать? По пунктам и конкретно. А то не очень-то верится.
Re[7]: C++ vs ???
От: reductor  
Дата: 02.12.05 09:52
Оценка: +1
Здравствуйте, Дарней, Вы писали:

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


Pzz>>Рассуждая с практической точки зрения, для SML'я, по-моему, проще найти

Pzz>>компилятор под какой-нибудь не совсем обычный процессор, чем для
Pzz>>Ocaml'а. Если не ошибаюсь, Ocaml поддерживает только x86, ARM, и, может
Pzz>>быть, MIPS.

Д>и еще есть SML.NET

Д>хотя это конечно на любителя

и F# — который на самом деле окамл
впрочем, у самого окамла бэкенд под .NET тоже есть
Re[6]: C++ vs ???
От: reductor  
Дата: 02.12.05 09:54
Оценка: +1 -6 :))) :))) :)
Здравствуйте, alexeiz, Вы писали:

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


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


R>>>И кстати-кстати. по поводу Си и низкого уровня — рекомендую обратить внимание: http://www.research.att.com/projects/cyclone/

R>>>И система типов там похожа на окамловскую. Да и много что (кроме синтаксиса и управления памятью). Правда QNX там официально вроде пока не поддерживается, но попробовать можно. В любом случае, всяко лучше чем просто си.

_>>Интересно. Но сейчас реально нужен язык для высокого уровня. Два языка изучать параллельно — это слишком


A>А чем C++ не язык высокого уровня?


Ничем.
Это ассемблер.
Который к тому же медленный и многословный.
Re[7]: C++ vs ???
От: Mamut Швеция http://dmitriid.com
Дата: 02.12.05 10:33
Оценка:
A>>А чем C++ не язык высокого уровня?

R>Ничем.

R>Это ассемблер.
R>Который к тому же медленный и многословный.

Хм. Я обратил внимание, что многие функциональные языки называют языками очень высокого уровня. Видимо, в противовес "просто" языкам высокого уровня, таким как С++ и прочие
... << RSDN@Home 1.2.0 alpha rev. 619>>


dmitriid.comGitHubLinkedIn
Re[8]: C++ vs ???
От: GlebZ Россия  
Дата: 02.12.05 10:57
Оценка:
Здравствуйте, Mamut, Вы писали:

M>Хм. Я обратил внимание, что многие функциональные языки называют языками очень высокого уровня. Видимо, в противовес "просто" языкам высокого уровня, таким как С++ и прочие

Ага, я тоже встречал термин "гипервысокого" уровня.

С уважением, Gleb.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[7]: C++ vs ???
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 02.12.05 11:48
Оценка: +1 :)
Здравствуйте, reductor, Вы писали:

A>>А чем C++ не язык высокого уровня?


R>Ничем.

R>Это ассемблер.
R>Который к тому же медленный и многословный.

Медленный ассемблер.

Нда. Это сильно сказано. Нужно будет записать, чтобы не забыть.
... << RSDN@Home 1.1.4 stable rev. 510>>


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[6]: C++ vs ???
От: ie Россия http://ziez.blogspot.com/
Дата: 02.12.05 11:49
Оценка:
Здравствуйте, reductor, Вы писали:

R>А еще, если сделать поиск в яндексе по стандартному mlю, то найдется pdf с книжкой по-русски по SML


Вот по этой ссылке русская версия лекций Харпера, о которых уже кто-то упоминал в этой ветке: http://iu9.mstu.ru/5sem/fil/harper.pdf
... << RSDN@Home 1.1.4 beta 7 rev. 447>>
Превратим окружающую нас среду в воскресенье.
Re[7]: C++ vs ???
От: gear nuke  
Дата: 02.12.05 14:13
Оценка:
Здравствуйте, reductor,

A>>А чем C++ не язык высокого уровня?


R>Ничем.


Почему? В dragonbook сказано, что это HLL.

R>Это ассемблер.


Совершенно верно, и даже в некоторых аспектах более низкоуровневый, чем С.

R>Который к тому же медленный


Это распространённое (?) заблуждение. Грамотно написанный код будет в большенстве случаев очень мало отличаться по эффективности от написанного вручную на ассемблере. Особенно, на макроассемблере. Это я могу сказать, поскольку приходится видеть исходники на последнем, для которых хороший С++ компилятор мог бы сгенерировать лучший вариант. А хороший С++ компилятор найти гораздо проще, чем для того же Pascal & Co. Сколько компиляторов других HLL используют С++ как back-end?

R>и многословный.


Да, для ряда задач на нём придётся написать порядком больше, чем на других языках. Это цена универсальности. На C++ можно написать ОС с нуля не используя _других_ языков (как там в Oberon делали bootloader?), можно и компилятор Scheme. И конечно же, будут существовать и языки, более эффективные для специализированных задач.

И даже, компилятор не способен понять некоторые слова:
switch( "string" )
{
case "foo":
case "boo":
}
Почему бы не добавить в него несколько строчек кода
People who are more than casually interested in computers should have at least some idea of what the underlying hardware is like. Otherwise the programs they write will be pretty weird (c) D.Knuth
Re[7]: C++ vs ???
От: Глеб Алексеев  
Дата: 02.12.05 14:29
Оценка:
Здравствуйте, ie, Вы писали:

R>>А еще, если сделать поиск в яндексе по стандартному mlю, то найдется pdf с книжкой по-русски по SML


ie>Вот по этой ссылке русская версия лекций Харпера, о которых уже кто-то упоминал в этой ветке: http://iu9.mstu.ru/5sem/fil/harper.pdf


Да, только стоит предупредить, что там описана устаревшая версия языка (SML'90). Но книжка для начинающих — отличная, особенно если выпонять все упражнения. А на сайте Харпера лежит черновик новой версии (понятно, по-английски), там описан SML'97 (скачивать можно абсолютно легально http://www.cs.cmu.edu/~rwh/smlbook/online.pdf).
... << RSDN@Home 1.2.0 alpha rev. 619>>
Re[8]: C++ vs ???
От: Глеб Алексеев  
Дата: 02.12.05 14:30
Оценка:
Здравствуйте, reductor, Вы писали:

R>и F# — который на самом деле окамл

Скорее, Caml Light.
... << RSDN@Home 1.2.0 alpha rev. 619>>
Re[8]: C++ vs ???
От: Дарней Россия  
Дата: 02.12.05 15:24
Оценка:
Здравствуйте, reductor, Вы писали:

R>и F# — который на самом деле окамл

R>впрочем, у самого окамла бэкенд под .NET тоже есть

кстати, а какой из них ты бы посоветовал для новичка?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Всех излечит, исцелит
добрый Ctrl+Alt+Delete
Re[8]: C++ vs ???
От: Дарней Россия  
Дата: 02.12.05 15:31
Оценка:
Здравствуйте, Mamut, Вы писали:

M>Хм. Я обратил внимание, что многие функциональные языки называют языками очень высокого уровня. Видимо, в противовес "просто" языкам высокого уровня, таким как С++ и прочие


может быть, по аналогии с higher order function?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Всех излечит, исцелит
добрый Ctrl+Alt+Delete
Re[7]: C++ vs ???
От: Pzz Россия https://github.com/alexpevzner
Дата: 02.12.05 17:17
Оценка: 15 (2) +2
reductor wrote:
>
> A>А чем C++ не язык высокого уровня?
>
> Ничем.
> Это ассемблер.
> Который к тому же медленный и многословный.

Не согласен.

C (не C++) это язык, который выражает абстрактным образом архитектуру
современного компутерного железа (современного в смысле повседневного).
В этом плане он исключительно хорош. Прошло уже 20 лет, а на C
по-прежнему можно писать железноориентированные программы, не опускаясь
при этом до уровня особенностей работы ALU на данном конкретном процессоре.

Конечно, C не идеален. Например, для полноценной работы хотелось бы
уметь описывать раскладку данных на биты, не прибегая при этом к
трюкачеству. Хотелось бы так же, чтобы идея endian'а была как-то
отражена в языке. И хоть какие-то примитивы синхронизации, типа
read_and_set, или atomic_increment. В общем, как раз тех вещей, которые
иначе приходится писать на ассемблере безо всякой осмысленной причины.

Мда. Так вот, будучи языком, предназначенным для абстрактного
представления современного компутера, C, безусловно является языком
высокого уровня. Просто он не универсален, а domain-specific, но domain
у него при этом весьма специфический

C++ же, это не язык, а какой-то кошмар. Что он отражает, не очень
понятно. Скорее всего, "все на свете" с весьма переменным успехом...
Posted via RSDN NNTP Server 2.0
Re[8]: C++ vs ???
От: reductor  
Дата: 02.12.05 17:38
Оценка:
Здравствуйте, gear nuke, Вы писали:


R>>Это ассемблер.


GN>Совершенно верно, и даже в некоторых аспектах более низкоуровневый, чем С.


R>>Который к тому же медленный


GN>Это распространённое (?) заблуждение. Грамотно написанный код будет в большенстве случаев очень мало отличаться по эффективности от написанного вручную на ассемблере. Особенно, на макроассемблере. Это я могу сказать, поскольку приходится видеть исходники на последнем, для которых хороший С++ компилятор мог бы сгенерировать лучший вариант. А хороший С++ компилятор найти гораздо проще, чем для того же Pascal & Co. Сколько компиляторов других HLL используют С++ как back-end?


Ха.
Он медленный не по сравнению с ассемблером. Он медленный по сравнению с более высокоуровневыми языками, но у которых лучше дизайн и нет всего этого легаси от Си.


R>>и многословный.


GN>Да, для ряда задач на нём придётся написать порядком больше, чем на других языках. Это цена универсальности. На C++ можно написать ОС с нуля не используя _других_ языков (как там в Oberon делали bootloader?), можно и компилятор Scheme. И конечно же, будут существовать и языки, более эффективные для специализированных задач.


На любом языке можно написать ОС с нуля.
А насчет использования других языков — это исключительно в голове. Поскольку на любом языке можно написать компилятор Scheme, то и операционную систему с нуля тоже можно.
Но вообще странное рассуждение и достоинство. На конкретном ассемблере тоже можно все написать и что?
зачем это делать?
Re[9]: C++ vs ???
От: reductor  
Дата: 02.12.05 17:41
Оценка:
Здравствуйте, Дарней, Вы писали:

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


R>>и F# — который на самом деле окамл

R>>впрочем, у самого окамла бэкенд под .NET тоже есть

Д>кстати, а какой из них ты бы посоветовал для новичка?


обычный окамл с caml.inria.fr
даже без бекенда под .NET
чтобы не создавать путаницу лишную. потом уже конечно что душа пожелает
Re[10]: C++ vs ???
От: EvilChild Ниоткуда  
Дата: 02.12.05 18:46
Оценка:
Здравствуйте, reductor, Вы писали:

Д>>кстати, а какой из них ты бы посоветовал для новичка?


R>обычный окамл с caml.inria.fr

R>даже без бекенда под .NET
R>чтобы не создавать путаницу лишную. потом уже конечно что душа пожелает

А что скажешь о Nemerle?
Re[3]: C++ vs ???
От: c-smile Канада http://terrainformatica.com
Дата: 02.12.05 19:31
Оценка: 1 (1) +1
Здравствуйте, alexeiz, Вы писали:

A>Здравствуйте, c-smile, Вы писали:


CS>>D как язык для UI лучше чем C++ скажем в разы. Это я со всей отвественностью

CS>>могу сказать.

A>А причины не трудно описать? По пунктам и конкретно. А то не очень-то верится.


(this caffe has no russian keyboard installed yet, so msg is in english)

First of all all these is based on my projects:
D — Harmonia framework
Java — J-SMILE and others.
C++ — HTMLayout and other projects.

1) GC. GC helps a lot managing DOM/windows/elements structure. This is huge in fact. Simplifies significantly code. Makes it clean and compact thus more robust.
2) Closures/Delegates. This in fact is not so critical as I am using sinking/bubbling. Let's say it is nice to have feature — allows to simplify code and make it more understandable an regular.
3) Properties (getters/setters). Ideally reduces twice methods you need to remember. Again, it is about simplification.
4) There are more features in D helping UI development e.g. mixins and templates parametrized by character strings, etc., I'll skip them here.

Use of Java for massive UI development has one and big benefit — isolation between logic and system low level and critical functions. This is sort of critical for development in teams.
And again Java has good set of design tools. Intellisense is a real tool increasing productivity.

(I am not speaking here about .NET because of intitial requirement to use C and platforms)
Re[6]: C++ vs ???
От: zip_ Россия  
Дата: 02.12.05 20:19
Оценка:
_>>Haskell мне не кажется практичным и готовым к применению в промышленных проектах. Считаю, что это до сих пор академический язык.

R>Интересно по каким критериям На самом деле уже довольно давно нет. То есть язык сам вообще очень давно, а тот же GHC какое-то время.

R>Его сейчас двигают как раз в массы. Но правда стоит отметить, что по вылизанности GHC от окамла пока отстает.

Нет компилятора для ARM, существующие компиляторы генерируют недостаточно качественный код (нет доверия инструменту). Плюс еще ленивость сильно затрудняет отладку и делает поведение программы недетерминированным.
Re[8]: C++ vs ???
От: zip_ Россия  
Дата: 02.12.05 20:21
Оценка:
За ссылки всем спасибо, буду погружаться
Re[6]: C++ vs ???
От: zip_ Россия  
Дата: 02.12.05 20:25
Оценка:
Здравствуйте, Pzz, Вы писали:

Pzz>zip_ wrote:

>>
>> SML — принципиально ничем от OCaml не отличается (или я ошибаюсь?), но у
>> второго более серьезный компилятор и ОО-расширение (впрочем пока не
>> уверен, что оно вообще нужно).

Pzz>Рассуждая с практической точки зрения, для SML'я, по-моему, проще найти

Pzz>компилятор под какой-нибудь не совсем обычный процессор, чем для
Pzz>Ocaml'а. Если не ошибаюсь, Ocaml поддерживает только x86, ARM, и, может
Pzz>быть, MIPS.

Лично мне кроме как под x86 и ARM ничего больше и не надо. Поэтому OCaml проходит.
Также не забываем про байт-код и VM (которая написана на C и скомпилируется где угодно).
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.