Re[5]: Фобии
От: Ka3a4oK  
Дата: 13.05.11 12:36
Оценка:
А>Но var еще лучше. Основной программирующий контингент перешагнет через эту несообразность и не споткнется.
Var — сокращение от variable — переменная. А def преднасзначен для создания иммутабельных объектов. Mutable специально сделано таким длинным, чтобы штрафовать за использование переменных и поощрять функциональный стиль.
Re[4]: Фобии
От: Mckey Россия  
Дата: 13.05.11 12:40
Оценка:
Здравствуйте, xvost, Вы писали:

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


M>>Кстати, да. Не совсем понятно, в чём преимущество перестановки?


X>Возможность Name Completion


И это тоже, но насколько я помню Одерски говорил так:
Что для вас важнее как называется переменная или ее тип, с типом можно определиться потом, если он сам не будет выведен.
Назвали переменную, используете, если назвали переменную и знаете ее тип, пожалуйста — уточните, если вам это действительно нужно.
Делай добро и бросай его в воду...
Re[2]: Фобии
От: artelk  
Дата: 13.05.11 12:52
Оценка: +3
Здравствуйте, Аноним, Вы писали:

А>1. Переименуйте Nemerle в C#+. Или C&&. Или AltSharp. Или CNext. Или C.Net.

Голосую: N#
Re[3]: Фобии
От: Ka3a4oK  
Дата: 13.05.11 12:56
Оценка:
Здравствуйте, artelk, Вы писали:

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


А>>1. Переименуйте Nemerle в C#+. Или C&&. Или AltSharp. Или CNext. Или C.Net.

A>Голосую: N#

Мне нравится, если честно. Только интересно, не зарегистрировалал ли Майкрософт все названия типа буква-решетка для языков программирования?
Re[2]: Фобии
От: IT Россия linq2db.com
Дата: 13.05.11 14:36
Оценка: +2
Здравствуйте, Аноним, Вы писали:

А>Я как-то уже писал на эту тему: люди консервативны, а Немерль на устроителя революции не тянет (объективно, хотя бы потому, что это yet another .net language). Здравый маркетинговый смысл подсказывает:

А>1. Переименуйте Nemerle в C#+. Или C&&. Или AltSharp. Или CNext. Или C.Net.

Я Владу предлагал Next# или N# в крайнем случае. Ему не нравится.

А>2. Верните синтаксис обратно к корням:

А> а. Поддержите синтаксис объявления Type instance вместо instance : Type.

Тут ничего менять не надо. С этим как раз всё в порядке.

А> б. Замените def на var.


Тогда уже mutable на var. По этому поводу в своё время было много баталий в гугл группе. Главный аргумент — mutable использовать вообще плохо, лучше использовать def. А т.к. mutable режет глаз, то это как бы вынуждает как можно чаще пытаться использовать def. Если поменять mutable на var, то def использовать никто не будет. В общем, такой как бы воспитательный момент.

А> в. Расширение поменяйте с .n на .csp. Иконку сделайте один в один шарповскую, только слегка отличающуюся цветом.


.ns

А> г. whatever


Вернуть обратно синтаксис дженериков, заменить [] на <>. Убрать точку в конструкторе.

А>3. Спозиционируйте C#+ относительно C#, как C# спозиционирован относительно VB: язык для более продвинутых. Лохи боятся макросов? Сишарп! Крутые пацаны умеют обращаться с макросами, не простреливая ногу? Сишарпплюс! В результате, часть людей с шарпа захочет посмотреть на новый язык. Среди девелуперов, слава богу, пока еще многие не хотят казаться тупыми (особенно, если на самом деле слишком тупы, чтобы переварить сразу все фишки и плюшки). Но еще лучше, что для многих приплюсников этот язык мог бы стать первым из управляемых.


Если нам не помогут, то мы тоже никого не пощадим.
Re[2]: Фобии
От: nikov США http://www.linkedin.com/in/nikov
Дата: 13.05.11 15:57
Оценка: +5
Здравствуйте, Аноним, Вы писали:

А> а. Поддержите синтаксис объявления Type instance вместо instance : Type.


Не надо.
Re[2]: Фобии
От: VladD2 Российская Империя www.nemerle.org
Дата: 14.05.11 00:32
Оценка:
Здравствуйте, Аноним, Вы писали:

А>1. Переименуйте Nemerle в C#+. Или C&&. Или AltSharp. Или CNext. Или C.Net...

А>2. Верните синтаксис обратно к корням:
А> а. Поддержите синтаксис объявления Type instance вместо instance : Type.
А> б. Замените def на var.
А> в. Расширение поменяйте с .n на .csp. Иконку сделайте один в один шарповскую, только слегка отличающуюся цветом.
А> г. whatever
А>3. Спозиционируйте C#+ относительно C#, как C# спозиционирован относительно VB: язык для более продвинутых...

В общем и целом — согласен. С маркетинговой точки зрения было бы разумно сделать язык почти супер-сетом от C#. Это сразу сняло бы много страхов и психологических проблем.

Что касается конкретных предложений, то не все они разумны. Например, менять def на var — это ошибка. Можно было бы оставить var и ввести def для неизменяемых переменных и локальных функций.

Но все это разумно только для нового языка. Немерл уже есть. И он таков каков есть. В общем-то его дизайн разумен и продуман. Синтаксис не взят с потолка, а является следствием выбора более качественных решений или проблем которые поляки (как авторы изначальной версии) не смогли преодолеть (как, например, с квадратными скобками для описания параметров типов).

По сему сейчас менять что синтаксис и название не разумно.

Но, на мой взгляд, в следующей версии (или вместо следующей) стоит сделать альтернативный вариант языка который был бы почти полным суперсетом C#. Скажем так суперсет (C# — неудачные решения из C#). К таким неудачным решениям я бы отнес (в первую очередь) оператор приведения типов (сишный), тернарный оператор "с ? a : b", явное деление на стэйтменты и выражения и кое что еще. Все это мешает расширяемости — основной фишке языка.

Вот этому языку можно было бы дать и другое имя.

Учитывая технологии которые мы закладываем на новую версию можно было бы просто реализовать два диалекта — современный немерл и этот новый суперсет шарпа.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[3]: Фобии
От: Don Reba Канада https://stackoverflow.com/users/49329/don-reba
Дата: 14.05.11 01:30
Оценка:
Здравствуйте, Ka3a4oK, Вы писали:

KK>Я вообще не понимаю зачем цепляться к синтакисису. Я одновременно пишу на Native C++, Nemerle и СиШарпом-ом затыкаю функционал которого нет в Nemerle(unsafe).


Интересно, а чем обоснован выбор C# вместо C++/CLI, который специально предназначен для затычки этого функционала? Пришлось бы писать на двух (с половиной) языках вместо трёх.
Ce n'est que pour vous dire ce que je vous dis.
Re[2]: Фобии
От: Don Reba Канада https://stackoverflow.com/users/49329/don-reba
Дата: 14.05.11 01:39
Оценка: +1
А какой другой язык стал популярным за счёт копирования мейнстримового? Может, Питон, Руби, F# или Скала об этом очень беспокоились?
Ce n'est que pour vous dire ce que je vous dis.
Re[3]: Фобии
От: Andy77 Ниоткуда  
Дата: 14.05.11 04:03
Оценка:
Здравствуйте, Don Reba, Вы писали:

DR>А какой другой язык стал популярным за счёт копирования мейнстримового? Может, Питон, Руби, F# или Скала об этом очень беспокоились?


Ну так они и не такие мейнстримовые, как C# и Java.
Re: Фобии
От: Аноним  
Дата: 14.05.11 05:37
Оценка:
а что мешает сделать так. Исходник при чтении преобразуется в зависимости от шаблона у одного в синтаксис со скобками у другого с табами и т д. У кого то вместо мутабле будет вар появляться. Причем файл на диске у всех будет иметь идентичный вид
Re[2]: Фобии
От: Don Reba Канада https://stackoverflow.com/users/49329/don-reba
Дата: 14.05.11 06:01
Оценка:
Здравствуйте, Аноним, Вы писали:

А>а что мешает сделать так. Исходник при чтении преобразуется в зависимости от шаблона у одного в синтаксис со скобками у другого с табами и т д. У кого то вместо мутабле будет вар появляться. Причем файл на диске у всех будет иметь идентичный вид


1. Не все пользуются Студией.
2. Преобразователь на знает о соглашениях по форматированию.
Ce n'est que pour vous dire ce que je vous dis.
Re[4]: Фобии
От: Don Reba Канада https://stackoverflow.com/users/49329/don-reba
Дата: 14.05.11 06:05
Оценка:
Здравствуйте, Andy77, Вы писали:

A>Ну так они и не такие мейнстримовые, как C# и Java.


Сравнивать с языками за которыми стоят крупные корпорации как-то некорректно. Да и копировал из этих двоих только C# — Ява от предыдущих мейнстримовых языков отличается довольно радикально.
Ce n'est que pour vous dire ce que je vous dis.
Re[2]: Фобии
От: VladD2 Российская Империя www.nemerle.org
Дата: 14.05.11 08:19
Оценка:
Здравствуйте, Аноним, Вы писали:

А>а что мешает сделать так. Исходник при чтении преобразуется в зависимости от шаблона у одного в синтаксис со скобками у другого с табами и т д. У кого то вместо мутабле будет вар появляться. Причем файл на диске у всех будет иметь идентичный вид


Исходник не всегда содержит корректную программу. Кроме того в нем есть комментарии расположение которых при столь радикальном переформатировании будет сложно соблюсти.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[3]: Фобии
От: VladD2 Российская Империя www.nemerle.org
Дата: 14.05.11 08:25
Оценка:
Здравствуйте, Don Reba, Вы писали:

DR>А какой другой язык стал популярным за счёт копирования мейнстримового?


С++, Java (в меньшей степени), C# (почти полная копия Явы и очень похоже на С++).

DR>Может, Питон, Руби, F# или Скала об этом очень беспокоились?


F# и Скала к мэйнстриму я бы не решился причислять. А Питон и Руби шли к популярности многие года. И они прошли "черным ходом", в том смысле, что они не пытались влезть в вотчину Майкрософт, где народ очень консервативен, сильно зомбирован брэндом и маркетингом.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[5]: Фобии
От: VladD2 Российская Империя www.nemerle.org
Дата: 14.05.11 08:27
Оценка:
Здравствуйте, Don Reba, Вы писали:

DR>Сравнивать с языками за которыми стоят крупные корпорации как-то некорректно. Да и копировал из этих двоих только C# — Ява от предыдущих мейнстримовых языков отличается довольно радикально.


Дык и результат. Ява шла к популярности более десяти лет. И это с много мегабаксной конторой то за плечами.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[4]: Фобии
От: Ka3a4oK  
Дата: 14.05.11 08:33
Оценка: 3 (1)
Здравствуйте, Don Reba, Вы писали:

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


KK>>Я вообще не понимаю зачем цепляться к синтакисису. Я одновременно пишу на Native C++, Nemerle и СиШарпом-ом затыкаю функционал которого нет в Nemerle(unsafe).


DR>Интересно, а чем обоснован выбор C# вместо C++/CLI, который специально предназначен для затычки этого функционала? Пришлось бы писать на двух (с половиной) языках вместо трёх.


Меня убивает скорость C++ компилятора.
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>
Re: Фобии
От: robin_of_the_wood Россия  
Дата: 14.05.11 10:20
Оценка: +1
Здравствуйте, VladD2, Вы писали:

VD>В последнее время частенько стали возникать вопросы связанные с тем что (и почему) останавливает людей от перехода на новый язык (в нашем случае — Nemerle).


Отсутствие Nemerle-мании еще не является Nemerle-фобией.

Вопросы стали возникать. Да согласен.
Частенько. Да заметно.
А у кого они стали возникать? Из контекста непонятно. Может быть у всех? У всей прогрессивной общественности? Не похоже.

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

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

А теперь по поводу перехода. На моем текущем рабочем месте например этот переход невозможен чисто технически.
То есть перейти в буквальном смысле не рассматриваем. Вакансий для этого не видно пока.
Тогда как? После работы в качестве хобби? С нашей работой нужны активные хобби и желательно на свежем воздухе.
Вот и выходит что в моем конкретном случае отсутствие желания переходить вполне логичное.
И прошу заметить что не совсем корректно спрашивать что меня останавливает.
Вот если бы заказчик сменил платформу и выбрал новый курс и мне бы предложили или переходи на новый язык или до свиданья.
Именно тогда меня можно было спросить о том что меня останавливало. Но это в воображаемой ситуации.
Или например вдруг стало много вакансий на новом языке и зарплаты вдвое больше моей. Вот тогда бы то-же логично бы было у меня спросить чего же меня балбеса останавливает. Вдруг фобия. Щас полечим. Но в реальности ведь такого нет.
А в реальности(говорю конечно же только за себя) есть много вакансий со старыми языками.
И есть много интересных и не очень, но хорошо оплачиваемых задач.
И вариантов расти в рамках текущего языка — просто огромное количество.
А есть еще архитектурные проблемы они вообще часто ортогональны языку.
И там диапазон от очень плохо до очень хорошо просто бесконечен. А фобий нет.
Проектирование велосипедов для слепых жирафов
Re: Фобии
От: dsorokin Россия  
Дата: 14.05.11 10:41
Оценка: 5 (2) +4
Я думаю, что нужно правильно позиционировать язык. По-моему не нужно стремиться быть мейнстримом, перетащив за шкирку N-ое количество сомнительного уровня программистов на C#. Зачем? Мне кажется, что нужно пытаться найти свою индивидуальность, и у Nemerle она безусловно есть. Ну и что, что не так популярно. Ну, и хрен с ним.

Посмотрите на лиспарей и штангистов. Один из лозунгов лиспа: "made with alien technology", а хаскеллисты им вторят: "avoid success at all costs!". И ничего, живут.

Главное — это найти себя.

К тому же, палка о двух концах. Быть мейнстримом может быть плохо. Язык закостенеет и станет вам скучным. Радоваться надо, что язык не так популярен. Его можно развивать и улучшать дальше. Это же так здорово!
Re[2]: Фобии
От: artelk  
Дата: 14.05.11 23:47
Оценка: 40 (2)
Здравствуйте, Аноним, Вы писали:

А>2. Верните синтаксис обратно к корням:

А> а. Поддержите синтаксис объявления Type instance вместо instance : Type.

Тут корни как раз другие. "Type instance" — это определение переменной типа Type. В Nemerle ":Type" — это указание типа, которое может применяться как к переменным, так и к выражениям и может встречатся внутри других выражений.
Например:
F(_ : List[bool]) : int { 42 }
F(_ : Array) : string { "2011" }

WriteLine( F(null) : int );
WriteLine( F(null) : string );

Тут, вместо указания типа параметра, мы указали тип значений, возвращаемых из F. Тип параметра компилятор выводит сам.

Еще пример:
class C[T]
{
  public Value : T { get { default(T) } }
}
  
Method[T]() : C[T]
{
  C.[T]()
}
  
WriteLine( Method().Value : int );

Параметр генерик-типа тоже выводится.

Думаю, причину, по которой был выбран именно такой синтаксис, нужно явно описать и разместить это прямо на главной странице в разделе Type inference. А то первое впечатление, которое он вызывает и с которым я сталкивался, показывая код знакомым, варьирует от "фуу... Паскаль" до "нафига так выпендриваться? сделали бы как везде в нормальных языках (aka распространенных)".
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.