Re[16]: Ой, чо с D деется-то!?
От: Андрей Хропов Россия  
Дата: 17.11.06 18:35
Оценка:
Здравствуйте, WolfHound, Вы писали:

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


WH>>>Это можно достичь только на асме и только очень долго вылизывая код. А порвать С/С++ имея качественную модель ВМ не сложно.

АХ>>Зависит от задач.
WH>Нет. Не зависит.
Ну давай примеры ВМ которые быстрее С/C++ на большинстве типов задач.

АХ>>Для тех где много мелких хаотично связанных объектов создается — да, GC рулит.

АХ>>Для задач где много вычислений (+ грамотно написанных) — вряд ли.
WH>У нас есть два ЯВУ.
WH>Первый переводится в промежуточное представление где все строго определено.
WH>Второй переводится в представление в котором куча скользких мест.
WH>Какой ЯВУ оптимизировать легче?
первый, но
1)строгое определение может быть таким, что само по себе затрудняет эффективные реализации (например отказ от value-типов)
2)не позволять человеку соптимизировать руками определенные случаи трудные для автоматического анализа
(пока ИИ не придумали, человек иногда умнее).

АХ>>Хоть Java с HotSpotом и приближается, но

WH>А причем тут жаба? Я же оже говорил что ее ВМ плохо подходит для системных вещей. Ее вобще проектировали не для тяжелых вычислений, а для интерпритации мелких управляющих программок.
А что лучше?

АХ>>1) Оверхед по памяти велик, а значит меньше размер задач которые вообще влезают в пямять + менее эффективно используется кэш

WH>Для жабы да. Для .НЕТ это уже не совсем верно. А если проектировать систему в расчете на вычисления то там все совсем по другому можно переиграть.
Посмотрим что нам предложат в Fortress.

АХ>>2) Сам HotSpot отъедает ресурсы.

WH>По мне так это вобще тупиковая идея.
А что лучше?

Порвать статический анализ под конкретную архитектуру (типа Intel C++) вроде теоретически можно только чем-то вроде HotSpotа, который в динамике отслеживает что и где можно заинлайнить и т.п.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[4]: D и замыкания.
От: FR  
Дата: 17.11.06 19:14
Оценка:
Здравствуйте, Андрей Хропов, Вы писали:

АХ>UB. попробуй


жаль


АХ>Кое-что писал по этому поводу здесь.

АХ>Вальтер ответил что посмотрим ближе к 2.0. Но в свете последних фич может и раньше увидим.
АХ>Ведь по сути вот эти функции Curry делают те же замыкания руками.

Ну руками и в функтор можно запихать, это не то.
Re[14]: Ой, чо с D деется-то!?
От: FR  
Дата: 17.11.06 19:14
Оценка: :)
Здравствуйте, WolfHound, Вы писали:

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


FR>>Только то что в D это получается не хуже чем в Nemerle, полный аналог твоего кода даже читабельней по моему:

WH>А если взять чуть мение игрушечный пример?

на чуть менее игрушечный нет времени

WH>Re[7]: синтаксический анализатор
Автор: WolfHound
Дата: 23.10.06


Ну судя по тому что там паттерн матчинг использован только как замена switch то не вижу почему на D должно получится не сопоставимо.
Re[4]: Ой, чо с D деется-то!?
От: FR  
Дата: 17.11.06 19:14
Оценка: -1 :)
Здравствуйте, Андрей Хропов, Вы писали:

FR>>А почему именно на Nеmerle?

АХ>Потому что эти языки (D и Nemerle) как мне кажется как раз могут рассматриваться в качестве конкурентов
АХ>(ну по крайней мере мне так кажется), поскольку оба статически типизированы, в них есть вывод типов (хотя у Немерле он и значительно мощнее), обладают средствами метапрограммирования
АХ>и активно развиваются.
АХ>Судя хотя бы вот по этой таблице
Автор: VladD2
Дата: 18.05.06
(хотя там не все верно, см. комментарии) у них много общих фич.


Мне не кажется что это конкуренты, вообще больше похоже на не пересекающиеся вещи

FR>>Почему не на Наскеле или даже Питоне?

АХ>Питон — это динамика. Так что немного из другой оперы.
АХ>Хаскель не знаю

FR>>Тоже будет такой же краткий код.

АХ>Да вот не такой же краткий (это еще к тому же только 2.5 который недавно вышел):

Нет чуть короче и подойдет любой питон > 2.0
def plus(x, y, z): return x + y + z

def minus(x, y, z): return x - y - z

plus_two = lambda y, z: plus(2, y, z)
print plus_two(6, 8)

plus_three = lambda y: plus_two(3, y)
print  plus_three(7)
    
plus_all = lambda: plus(7,8,9)
print plus_all()

minus_all = lambda: minus(7, 8, 9)
print minus_all()
Re[15]: Ой, чо с D деется-то!?
От: WolfHound  
Дата: 17.11.06 19:34
Оценка:
Здравствуйте, FR, Вы писали:

FR>Ну судя по тому что там паттерн матчинг использован только как замена switch то не вижу почему на D должно получится не сопоставимо.

А ты по второй ссылочке ходил?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[16]: Ой, чо с D деется-то!?
От: FR  
Дата: 17.11.06 19:59
Оценка: :)
Здравствуйте, WolfHound, Вы писали:

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


FR>>Ну судя по тому что там паттерн матчинг использован только как замена switch то не вижу почему на D должно получится не сопоставимо.

WH>А ты по второй ссылочке ходил?

Изнутри первой, сейчас сходил. Оно конечно да задача для паттерн матчинга, но думаю на текущем D вполне можно написать (проще чем на C++) аналог boost::spirit.
Re[11]: Ой, чо с D деется-то!?
От: Андрей Хропов Россия  
Дата: 17.11.06 20:18
Оценка:
Здравствуйте, eao197, Вы писали:

E>Не нужно путать известность (что и меряет TIOBE) и восстребованность (что показывает список вакансий).

E>Тем более, что восстребованность определяет популярность на данный момент.
Судя о TIOBE D почти так же популярен как и Ruby и намного популярнее чем хотя бы Lisp, Fortran и Matlab.
Что очевидно не так, да и на D было бы полно программ (хотя бы написанных энтузиастами).

E>Если по ней судить, то не только D, но и хваленый Nemerle находится в полной ж...

Да, они примерно в одинаковой ж... судя по Google.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[12]: Ой, чо с D деется-то!?
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 17.11.06 21:53
Оценка:
Здравствуйте, Андрей Хропов, Вы писали:

E>>Не нужно путать известность (что и меряет TIOBE) и восстребованность (что показывает список вакансий).

E>>Тем более, что восстребованность определяет популярность на данный момент.
АХ>Судя о TIOBE D почти так же популярен как и Ruby и намного популярнее чем хотя бы Lisp, Fortran и Matlab.

Еще раз: не популярен, а известен. Это разные вещи. Вот, например, какой процент из посетителей RSDN знает про Nemerle (это и есть известность), а какой процент использует (это и есть популярность)?



АХ>Что очевидно не так, да и на D было бы полно программ (хотя бы написанных энтузиастами).


Полно, не полно, но хоть что-то да есть и шевелится как-то
http://www.prowiki.org/wiki4d/wiki.cgi?FolderProjects
http://www.digitalmars.com/d/dlinks.html


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[3]: Ой, чо с D деется-то!?
От: VladD2 Российская Империя www.nemerle.org
Дата: 17.11.06 23:53
Оценка:
Здравствуйте, eao197, Вы писали:

E>Nemerle -- это макросы, метапрограммирование + функциональщина. Т.е. то, чего в D пока не видно.


Ну, дык? Все полностью соотвествует твоим словам. Он же сказал "жалким". Так что все в порядке.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[3]: Ой, чо с D деется-то!?
От: VladD2 Российская Империя www.nemerle.org
Дата: 18.11.06 01:05
Оценка: :))
Здравствуйте, FR, Вы писали:

FR>А почему именно на Nеmerle?

FR>Почему не на Наскеле или даже Питоне?
FR>Тоже будет такой же краткий код.

Потому что должен остаться только один бессмертный (с).

Если серьезно, то мне все равно, но код на Ди прсто прекрасен. Воистину автор темы прав. Ди достойный продолжатель дела С++.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[7]: Ой, чо с D деется-то!?
От: VladD2 Российская Империя www.nemerle.org
Дата: 18.11.06 01:05
Оценка:
Здравствуйте, eao197, Вы писали:

E>Опытным путем удалось установить, что достаточно прибавлять 0.1, тогда округляет как нужно. Но вот как сделать реверсию я не догнал


О! Что я вижу?! eao197 осваиват передовые технологии.

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


Нравится императив? Так применяй соотвествующие структуры данных.
#pragma indent
 
using System.Console
using System.Math
 
def makeDistrib(trxCount : int, quantums : int)
    mutable r = Collections.Generic.List()
    mutable remainingTrx = trxCount
    mutable remainingQuantums = quantums
    foreach (_ in [1..quantums])
                def x = Round((remainingTrx :> double) / remainingQuantums + 0.1) :> int
        r.Add(x)
        remainingTrx -= x
        --remainingQuantums
    r
 
WriteLine(makeDistrib(2, 6).ToString(", "))
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re: Ой, чо с D деется-то!?
От: VladD2 Российская Империя www.nemerle.org
Дата: 18.11.06 01:05
Оценка: :)
Здравствуйте, eao197, Вы писали:

Очередная тема превратилась в обсуждение темы "а казалось бы причем тут Nemerle?".

Создается впечатление, что eao197 тайный поклонник этого языка.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[5]: Ой, чо с D деется-то!?
От: VladD2 Российская Империя www.nemerle.org
Дата: 18.11.06 01:05
Оценка:
Здравствуйте, eao197, Вы писали:

E>А с чего ты взял, что это калька с Немерле?


Мне кажется, что Вольфхаунд с тобой полностью солидарен. Он тоже всесто слова "калька" воспользовался более подходящим словосочетанием "жалкое подобие".

E>Имхо, Немерл-овцы сам туплы откуда-то скомуниздили.


Ага. Из клонов ML-я. И сделали это качествнно.

E>Кроме того, имхо, это явно не попытка догнать Немерле


Несомннено! Это попытка украсть лавры у С++... в области удаления гланд через зад.

E> (чо вас на нем так клинт-то, кстати?),


Дык думали заклиниться на Ди, но подумали, что там клиника уже переполнена.

E> а сделать нормально в D то, что в C++ делается с помощью десятиэтажных макросов (памяти Александреску).


Хорошая задача! Остается только сожалеть, что пока, что не ее решить не удалось. Но лиха беда начала. До выхода С++ 0ххх еще время есть.

E>А рантайму, вообще-то говоря, цена не большая. Ты вот на Nemerle сможешь без NET Framework писать?


Да даже без компьютера могу писать. Мне для этого ручки и бумаки хватает!
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[6]: Ой, чо с D деется-то!?
От: VladD2 Российская Империя www.nemerle.org
Дата: 18.11.06 01:05
Оценка:
Здравствуйте, WolfHound, Вы писали:

WH>По себе людей не судят. Стоит только произнести "немерле" как ты сразу начинаешь исходить ядом... к чему бы это?


А мне кажется, что eao197 симпатизирует Немерлу. Что не таема им созданная, так обязательно сводится к вопросу "а почему не Немерле?".

Это как со стихами о вине? Знаешь какое стихотворение посвящено белому вину? "О, белое вино... Почему ты не красное?".
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[7]: Ой, чо с D деется-то!?
От: VladD2 Российская Империя www.nemerle.org
Дата: 18.11.06 01:05
Оценка:
Здравствуйте, FR, Вы писали:

FR>А зачем призносить слово Немерле в топике никакого к нему отношения не имеющего?


Отличное слово! Произносишь его и eao197 с FR впадают в транс четко чувствуя, что над ними цинично глумятся.

А чё бы не поглумиться нед теми кто прославляет убогсть только потому, что она чуть мнее убогая чем старая убогсть?
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[7]: Ой, чо с D деется-то!?
От: VladD2 Российская Империя www.nemerle.org
Дата: 18.11.06 01:05
Оценка:
Здравствуйте, eao197, Вы писали:

E>Тогда зачем было говорить по превращении D в подобие Немерле?


Боже упоси! Какое пдобие?! Вольфхаунд сказал "жалкое подобчие". В русском языке это словосочетание означает, что сходство хотя и есть, но очень незначительное.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[9]: Ой, чо с D деется-то!?
От: VladD2 Российская Империя www.nemerle.org
Дата: 18.11.06 01:05
Оценка: +1 -2
Здравствуйте, FR, Вы писали:

FR>(На возражение что D слизало готовое, Немерле тоже самое сделало с ML языков).


Ага. Причем ML — это язык постоенный на четких научных принципах. Передирание из него тоже делается знающими людьми и на высоком техническом уровне. А вот Ди явно делается на уровне С++. Результат конечно может превзайти С++, но вряд ли очень сильно.

Так что пусть он конечно будет. Это будет как минимум хорошим упреком Страуструпу. Но хватсаться его убогими фичами явно не стоит. Иначе все время будете получать в пример языки в которых тоже самое и намного больше реализовано куда лучше и уже работает. И снова будете злиться и кричать "а причем тут Немерле?".
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[6]: Ой, чо с D деется-то!?
От: Cyberax Марс  
Дата: 18.11.06 01:09
Оценка: -2
VladD2 wrote:
> E>А с чего ты взял, что это калька с Немерле?
> Мне кажется, что Вольфхаунд с тобой полностью солидарен. Он тоже всесто
> слова "калька" воспользовался более подходящим словосочетанием "жалкое
> подобие".
Нет, это Немерль — жалкое подобие D. Поделка студентов. Даже без .NET
Framework/Mono работать не умеет. Фигня, короче.
Posted via RSDN NNTP Server 2.0
Sapienti sat!
Re[10]: Ой, чо с D деется-то!?
От: VladD2 Российская Империя www.nemerle.org
Дата: 18.11.06 01:12
Оценка:
Здравствуйте, WolfHound, Вы писали:

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


FR>>(На возражение что D слизало готовое, Немерле тоже самое сделало с ML языков).

WH>В немерле совершенно иной вывод типов не имеющий ничего общего в ML.

Алгоримт иной. Но:
1. ФР явно не о нем говорит. В этой ветке ведь кортежами хвастались.
2. МЛ был реальным прототипом. И разработчики Немерла не мало оглядывались на него. Насколько я понял первая версия Немерла была написана на ОКамле.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[8]: Ой, чо с D деется-то!?
От: McSeem2 США http://www.antigrain.com
Дата: 18.11.06 01:24
Оценка: 31 (4) +7 :))) :))) :))) :)
Здравствуйте, VladD2, Вы писали:

VD>А чё бы не поглумиться нед теми кто прославляет убогсть только потому, что она чуть мнее убогая чем старая убогсть?


   - Писсант - это такой тип, который воображает, будто он умнее
всех, и потому никогда не промолчит. Чтобы другие  ни  говорили,
писсанту  всегда  надо  спорить.  Вы скажете,  что  вам   что-то
нравится, и, клянусь богом, он тут же начнет вам доказывать, что
вы не правы и это вам нравиться не должно. При таком писсанте вы
чувствуете себя окончательным болваном. Что бы вы ни сказали, он
все знает лучше вас.

(Курт Воннегут, "Колыбель для кошки")
McSeem
Я жертва цепи несчастных случайностей. Как и все мы.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.