|
|
|
Ужасное подозрение - XSLT - функциональный язык?
|
|||
|---|---|---|---|
|
#18+
Прикиньте, вот изучаю XSLT и возникло у меня ужасное подозрение - XSLT это функциональный язык?! Что-то я нигде не нашел способа как объявить переменную, а потом изменить ее значение. Например: <xsl:variable name="x" select="1"/> <xsl:variable name="x" select="x+1"/> Неужели это действительно так и придется вспоминать старый Lisp? Какой кошмар. Простой код разрастается на несколько экранов из-за такой фигни. Если это действительно так, то можно как-то накопить результат работы в цикле for-each? А то влом описывать функцию под каждый перебор. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.03.2007, 18:47 |
|
||
|
Ужасное подозрение - XSLT - функциональный язык?
|
|||
|---|---|---|---|
|
#18+
действительно, XSLT - язык шаблонов, и изменять переменные НЕЛЬЗЯ. единственный способ - рекурсия, с использованием именованных шаблонов. (а я предлогал добавить этот вопрос в FAQ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2007, 09:17 |
|
||
|
Ужасное подозрение - XSLT - функциональный язык?
|
|||
|---|---|---|---|
|
#18+
Fixin нигде не нашел способа как объявить переменную, А это ? <xsl:variable name="x" select="1"/> вроде как объявил переменную x=1 потом изменить ее значение. Ну.... в явном виде нельзя... можно в другом шаблоне написать тоже самое но с другим значением, будет тебе переопределение Неужели это действительно так и придется вспоминать старый Lisp? Какой кошмар. Простой код разрастается на несколько экранов из-за такой фигни. Не обезатьельно... сдесь мной один раз поднималась тема про счетчик, там приведена ссылка где это можно поискать, там реализовали А чтоб не плодить тот код каждый раз, занеси в отдельный шаблон и либо ссылайся на него, либо запихни в файл, а файл уж импортируй ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2007, 09:20 |
|
||
|
Ужасное подозрение - XSLT - функциональный язык?
|
|||
|---|---|---|---|
|
#18+
andrei77действительно, XSLT - язык шаблонов, и изменять переменные НЕЛЬЗЯ. единственный способ - рекурсия, с использованием именованных шаблонов. (а я предлогал добавить этот вопрос в FAQ) Мда... Ужас... Я изучал в свое время Лисп и я вижу, как простой код выливается в большой набор функций, короче, мрак. ;-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.03.2007, 09:28 |
|
||
|
Ужасное подозрение - XSLT - функциональный язык?
|
|||
|---|---|---|---|
|
#18+
Почему подозрение - действительно функциональный. Вот статья с объяснением: http://www.topxml.com/xsl/articles/fp/ и почему ужасное - XSLT придуман очень умно. По моим наблюдениям, скрипты получаются очень надёжными по сравнению с процедурными языками. Что не значит, что вообще функциональные языки вообще лучше процедурных. Просто XSLT хорошо подходит для того, для чего предназначен. Впрочем, есть альтернатива - XQuery, более процедурный. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.03.2007, 00:36 |
|
||
|
Ужасное подозрение - XSLT - функциональный язык?
|
|||
|---|---|---|---|
|
#18+
Partisan MПочему подозрение - действительно функциональный. Вот статья с объяснением: http://www.topxml.com/xsl/articles/fp/ и почему ужасное - XSLT придуман очень умно. По моим наблюдениям, скрипты получаются очень надёжными по сравнению с процедурными языками. Что не значит, что вообще функциональные языки вообще лучше процедурных. Просто XSLT хорошо подходит для того, для чего предназначен. Впрочем, есть альтернатива - XQuery, более процедурный. Просто отсутствие оператора присваивания Х=Ф(Х) вызывает чрезмерное написание лишнего кода. Такой код приходится выносить в функцию, что влечет избыточное увеличение числа функций. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2007, 20:33 |
|
||
|
Ужасное подозрение - XSLT - функциональный язык?
|
|||
|---|---|---|---|
|
#18+
А зачем тебе присвоение? Как показала практика можно обойтись и без него используя запросы и сравнение. Вывод тоже работает Вот отсутсвие счетчика и различный вывод значений в зависимости переменную выводишь или узел раздражает. Согласен ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2007, 09:46 |
|
||
|
Ужасное подозрение - XSLT - функциональный язык?
|
|||
|---|---|---|---|
|
#18+
SuSaА зачем тебе присвоение? Как показала практика можно обойтись и без него используя запросы и сравнение. Вывод тоже работает Вот отсутсвие счетчика и различный вывод значений в зависимости переменную выводишь или узел раздражает. Согласен Речь идет именно о Х=Ф(Х), т.е. когда Х и в левой и в правой части. Это и счетчики и списки-накопители. Короче, достаточно криво. Ничего не имею против функциональных языков в теори, но попытка пропихнуть функциональный язык в практику раздражает. Я когда начал юзать ХСЛТ не знал, что он функциональный. ;-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2007, 10:29 |
|
||
|
|

start [/forum/topic.php?fid=14&msg=34392085&tid=1334392]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
151ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
43ms |
get tp. blocked users: |
1ms |
| others: | 211ms |
| total: | 446ms |

| 0 / 0 |
