|
11.09.2014, 15:33 | #1 |
Участник
|
|
|
11.09.2014, 17:24 | #2 |
Участник
|
Цитата:
Сообщение от belugin
1. Там нет никакой "настройки фильтра"
2. Да, без изменений в языке оно хреноватое Цитата:
Сообщение от perestoronin
Один простой пример ФП, которое хотелось бы видеть и в X++ :
Код: scala> val numbers = List(1, 2, 3, 4) numbers: List[Int] = List(1, 2, 3, 4) scala> numbers.filter((i: Int) => i % 2 == 0) res0: List[Int] = List(2, 4) X++: List numbers = List::create([3, 1, 4, 1, 2, 3, 4]); List res = new List(Types::Integer); ListEnumerator le = numbers.getEnumerator(); ; while(le.moveNext()) { if(le.current() mod 2 == 0) { res.addEnd(le.current()); } } info(res.toString()); Код: scala> numbers.filter((i: Int) => i % 2 == 0)
__________________
- Может, я как-то неправильно живу?! - Отчего же? Правильно. Только зря... |
|
11.09.2014, 17:27 | #3 |
Участник
|
Цитата:
вот в X++ код X++: CustTable x; ... select custTable where recID >=31459; .... select custTable where recID<=31459; Последний раз редактировалось belugin; 11.09.2014 в 17:32. |
|
11.09.2014, 17:44 | #4 |
Участник
|
Понятно. Я не корректно построил фразу. Под термином "наложение фильтра" я подразумевал "критерии отбора" для создания нового списка. Только сути это не меняет. Ведь очевидно же, что указание условия и собственно факт создания отфильтрованной коллекции - это две разные команды. Никак не связанные между собой. Что и может порождать проблемы. Или в F# их нельзя разделить?
__________________
- Может, я как-то неправильно живу?! - Отчего же? Правильно. Только зря... |
|
11.09.2014, 18:12 | #5 |
Участник
|
|
|
11.09.2014, 18:31 | #6 |
Участник
|
Цитата:
Код: scala> val numbers = List(1, 2, 3, 4) numbers: List[Int] = List(1, 2, 3, 4) scala> numbers.filter((i: Int) => i % 2 == 0) Вот здесь могут быть другие команды? Синтаксис допускает? res0: List[Int] = List(2, 4)
__________________
- Может, я как-то неправильно живу?! - Отчего же? Правильно. Только зря... |
|
11.09.2014, 18:45 | #7 |
Участник
|
Цитата:
в C# можно сделать как-то. X++: var isEven = (Int x) => x % 2 == 0; ... ... new []{1, 2,3,4,5}.Where(isEven); В каком-то смысле не может (этот параметр обязательный и надо что-то туда передать) Аналогично X++: bool isEven(int x) { return x % 2 == 0; } ... ... new []{1, 2,3,4,5}.Where(isEven); |
|
Теги |
.net, aot, cil, layer, morphx, x++, компилятор, слои |
|
Похожие темы | ||||
Тема | Ответов | |||
Прощай, CITP-AT / Software-Vertriebsfirma Columbus IT Partner programmiert Pleite | 3 |
|