Здравствуйте, Константин Л., Вы писали:
КЛ>Кхм... А почему не завести метод Match(type -> type) и писать в лямбде сам match? Нельзя?
В принципе конечно можно но если в match'е написать что-то большое вывод типов почемуто начинает сильно глючить.
... << RSDN@Home 1.2.0 alpha rev. 745>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Здравствуйте, _pk_sly, Вы писали:
__>очень смахивает на Filter, в который запихнута лямбда с match'ем внутри.
На Filter точно не похоже.
Если уж на что и похоже то на Map.
... << RSDN@Home 1.2.0 alpha rev. 745>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Здравствуйте, WolfHound, Вы писали:
WH>Здравствуйте, Константин Л., Вы писали:
КЛ>>Кхм... А почему не завести метод Match(type -> type) и писать в лямбде сам match? Нельзя? WH>В принципе конечно можно но если в match'е написать что-то большое вывод типов почемуто начинает сильно глючить.
Здравствуйте, Константин Л., Вы писали:
КЛ>Забавно. Это только для лямбд?
Это когда ты выписываешь десяток Map, Filter и им подобных подряд.
Чтобы этого небыло приходится переодически типы уточнять.
... << RSDN@Home 1.2.0 alpha rev. 745>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Здравствуйте, WolfHound, Вы писали:
КЛ>>Забавно. Это только для лямбд? WH>Это когда ты выписываешь десяток Map, Filter и им подобных подряд. WH>Чтобы этого небыло приходится переодически типы уточнять.
А потом аннотации убираешь и оно работает, да?
Так это не компилятор виноват, а то, что у челоеека мозги не кремниевые.
А по сути — да, бывает такое, оказывается тип, которого не ожидаешь. В моем случае это обычно означает, что я не до конца представляю процесс. А иногда бывает и так:
def x = filenames.Filter(...)
.Map(...)
.Group(...) // здесь на выходе получается, стало быть list[list[string]]
. // тут жму Ctrl+Space и безуспешно пытаюсь в списке найти Flatten.
// Как же так? У списка списков такой метод должен быть.
Оказывается, что неймспейс Nemerle.Collections забыл подключить, а грешу на вывод типов.
Здравствуйте, WolfHound, Вы писали:
WH>В принципе конечно можно но если в match'е написать что-то большое вывод типов почемуто начинает сильно глючить.
Это отдельный вопрос. Приводи примеры, будет разбираться. Может просто баги.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, VladD2, Вы писали:
VD>Пример можно? Может это баг, все же?
Может позже.
В любом случае match через точку банально удобно.
Мотвация примерно такая же как у extension methods.
... << RSDN@Home 1.2.0 alpha rev. 745>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Здравствуйте, VladD2, Вы писали:
VD>Это уже другой вопрос. Вопрос декомпозиции.
Да я вобщем про ее и говорю.
Очень удобно когда можно взять некоторые данные и просто выписать последовательность трансформаций.
VD>Он принципиальной возможности обрабатывать возрващаемое значение match не отменяет.
А я спорил?
А же говорю про сахарок.
... << RSDN@Home 1.2.0 alpha rev. 745>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Здравствуйте, WolfHound, Вы писали:
VD>>Это уже другой вопрос. Вопрос декомпозиции. WH>Да я вобщем про ее и говорю. WH>Очень удобно когда можно взять некоторые данные и просто выписать последовательность трансформаций.
Ну, так, а что мешает? Переменные есть. Можешь их вводить, а можешь все в строчку записать.
VD>>Он принципиальной возможности обрабатывать возрващаемое значение match не отменяет. WH>А я спорил? WH>А же говорю про сахарок.
Тольо о том, чтобы к нему точку применять? Это ты можешь и сам сделать. match ключевое слово. Так что распознать конструкцию ".match" труда составить не должно.
... << RSDN@Home 1.2.0 alpha rev. 672>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, VladD2, Вы писали:
VD>Ну, так, а что мешает? Переменные есть. Можешь их вводить, а можешь все в строчку записать.
Так и приходится и это мне и не нравится.
VD>Тольо о том, чтобы к нему точку применять? Это ты можешь и сам сделать. match ключевое слово. Так что распознать конструкцию ".match" труда составить не должно.
Вопрос не в том могу я или нет (кстати где разрешение на коммит брать?), а в том нужно это или нет?
Те вопрос не технический, а политический.
... << RSDN@Home 1.2.0 alpha rev. 745>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Здравствуйте, WolfHound, Вы писали:
WH>Вопрос не в том могу я или нет (кстати где разрешение на коммит брать?), а в том нужно это или нет? WH>Те вопрос не технический, а политический.
Я думаю, что фича относительно легка для понимания (не вызывает неоднозначностей). Только надо проследить, чтобы она дружила с отладкой.