Re[62]: Ультракороткий язык программирования RS
От: PC_2 http://code.google.com/p/rsinterpretator/
Дата: 30.12.10 15:33
Оценка: -1 :))) :)
Вообще, может быть для FAQ на сайте сделаю нотатку.
Чем функциональные языки хуже РС, на примере тогоже Немерле

1. Код длинее в среднем 2-5 раз
2. В Немерле множество шифтовых символов. В РС шифтовые символы доведены до минимума и используются для редких операций (обмен местами, евал и др.)
3. Чтобы разобраться в Немерле нужно прочитать несколько функциональных талмудов.
Для РС достаточно одной статьи из Вики на моем сайте. Порог вхождения для языка крайне низок
4. Код Немерле уступает по гибкости РС, это можно проследить анализируя то, как меняется код при новый требованиях
5. Немерле разрабатывают западные студенты из Польши, РС разрабатывается только отечествеными силами. Я например из Украины.
6. Немерле привязан к Майкрософт, поэтому ему постоянно приходится ждать там погоды. РС ограничивает только фантазия разработчика. И кстате половина задумок находится как раз в области Фреймворка для РС.
7. Немерле не кроссфплаторменен, компактный РС интерпретатор можно переписать на Java и запустить например на смартфонах Android. Дело двух трех недель, если будет желание.
8. Немерле ограничен по быстродействию, поскольку декларативная структура отображается макросами. В РС оптимизатор выражений может быть ограничен только фантазиями и находчивостью разработчиков.

может что и забыл, так меня поправят.

Конечно в РС есть и недостатки, связанные с тем что язык еще молод и довольно игрушечный, но всему
свое время.

"Вся страна играть в футбол умеет, лишь мы 11 человек играть не умеем"(с)КВН
Re[75]: Ультракороткий язык программирования RS
От: Mamut Швеция http://dmitriid.com
Дата: 30.12.10 15:49
Оценка:
M>>внезапно появились функции, внезапно появился доступ по индексу, а вони-то было!

PC_>индексы в РС со времен Царя Гороха ...

PC_>читай мануал, как именно на сайте проекта

имел в виду range, s.(1..2) и т.п.


dmitriid.comGitHubLinkedIn
Re[76]: Ультракороткий язык программирования RS
От: PC_2 http://code.google.com/p/rsinterpretator/
Дата: 30.12.10 15:56
Оценка:
Здравствуйте, Mamut, Вы писали:

M>>>внезапно появились функции, внезапно появился доступ по индексу, а вони-то было!


PC_>>индексы в РС со времен Царя Гороха ...

PC_>>читай мануал, как именно на сайте проекта

M>имел в виду range, s.(1..2) и т.п.


Ты плохо понимаешь архитектуру.
Раньше была следующая конструкция
Массив.Число — это всятие по индексу

Операция точка для
Массив.МассивЧисел — была не определена

Хотя логично, что если приходит правым операндом вместо числа массив чисел, то можно вернуть
тоже массив чисел взятые по этим индексам.

s.(1..2) получили массив, в котором 1 и 2 элемент

а вот так
s.(1,2,5) получили 1,2,5 элементы из массива

Там было на 2 минуты кодинга и эту конструкцию не я ввел по сути. Это Егор предположил в одном
из своих примеров, что так должно работать в трансляторе согласно и я его полностью поддержал.

Так в чем же суть претензий ко мне ?
"Вся страна играть в футбол умеет, лишь мы 11 человек играть не умеем"(с)КВН
Re[77]: Ультракороткий язык программирования RS
От: PC_2 http://code.google.com/p/rsinterpretator/
Дата: 30.12.10 16:02
Оценка: :)
Так что Мамут это не рейндж. Это в говноязыках Range,
а в прогрессивных языках вроде РС это ультрапростая и ультрапонятная конструкция,
определенная для массив.массивчисел

Можно например даже так

s = 'a','b','c'

s.(1,1,2,2,3,3) и получим массив 'a','a','b','b','c','c'

Учи РС !
"Вся страна играть в футбол умеет, лишь мы 11 человек играть не умеем"(с)КВН
Re[62]: Ультракороткий язык программирования RS
От: samius Япония http://sams-tricks.blogspot.com
Дата: 30.12.10 16:25
Оценка: 4 (2) :)
Здравствуйте, PC_2, Вы писали:

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


PC_>Ты не видишь разницу между этим


PC_>
PC_>l.Fold([], (e, a) => if (n==1) [e]::a else p(l.Filter(x => x != e), n-1).Fold(a, (s, b) => (e::s)::b))
PC_>


PC_>и этим


PC_>
PC_>i<3?a+='+x'+i
PC_>^a
PC_>


PC_>?

На всякий случай приподниму завесу тумана
Первая строчка генератора РС генерит строку '+x0+x1+x2'. Втарая пытается это строку выполнить.
В результате генерируется следующий набор паролей

Operators: ^a
Object reference not set to an instance of an object.


PC_>Но вообще генерацию паролей мне уже надоело обсуждать.

PC_>Мы увивидили штук пять разных генераторов паролей с самыми экзотическими условиями на РС.
Не помню что бы хоть один из них генерировал что-либо кроме сообщений об ошибках.

Только не надо про маленькие детские баги... В тех генераторах проблема не баги интерпретатора, а то что в них нет даже намека ни на описание результата, ни на описание алгоритма.
Re[63]: Ультракороткий язык программирования RS
От: PC_2 http://code.google.com/p/rsinterpretator/
Дата: 30.12.10 16:27
Оценка: :)
Здравствуйте, samius, Вы писали:

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


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


PC_>>Ты не видишь разницу между этим


PC_>>
PC_>>l.Fold([], (e, a) => if (n==1) [e]::a else p(l.Filter(x => x != e), n-1).Fold(a, (s, b) => (e::s)::b))
PC_>>


PC_>>и этим


PC_>>
PC_>>i<3?a+='+x'+i
PC_>>^a
PC_>>


Нет, это не мой детский баг это твой детский баг.
Там нужно определить переборщик
!x = a..z

В своем примере я его убрал, потому что в примере немерле тоже алфавит не задан.
"Вся страна играть в футбол умеет, лишь мы 11 человек играть не умеем"(с)КВН
Re[64]: Ультракороткий язык программирования RS
От: PC_2 http://code.google.com/p/rsinterpretator/
Дата: 30.12.10 16:30
Оценка:
вот пишу по памяти пример, полностью

!x = 'a'..'z'
i<3?s+='+x' + i
^('r,='+s)
"Вся страна играть в футбол умеет, лишь мы 11 человек играть не умеем"(с)КВН
Re[63]: Ультракороткий язык программирования RS
От: PC_2 http://code.google.com/p/rsinterpretator/
Дата: 30.12.10 16:32
Оценка:
Здравствуйте, samius, Вы писали:

S>Только не надо про маленькие детские баги... В тех генераторах проблема не баги интерпретатора, а то что в них нет даже намека ни на описание результата, ни на описание алгоритма.


все там работает, еслиб мне за каждый работающий пример на РС добрые люди бутылку пива выставляли
я бы уже наверное спился
"Вся страна играть в футбол умеет, лишь мы 11 человек играть не умеем"(с)КВН
Re[65]: Ультракороткий язык программирования RS
От: PC_2 http://code.google.com/p/rsinterpretator/
Дата: 30.12.10 16:33
Оценка:
причем как выложить версию лично запустил каждую программу
которая у меня на заглавное странице сайта проекта и убедился что пример
корректно работает.

Так что не надо ляля ...
"Вся страна играть в футбол умеет, лишь мы 11 человек играть не умеем"(с)КВН
Re[65]: Ультракороткий язык программирования RS
От: samius Япония http://sams-tricks.blogspot.com
Дата: 30.12.10 16:43
Оценка:
Здравствуйте, PC_2, Вы писали:

PC_>вот пишу по памяти пример, полностью


PC_>!x = 'a'..'z'

PC_>i<3?s+='+x' + i
PC_>^('r,='+s)

Давай уже сам приписывай к своим примерам выхлоп интерпретатора, а то я задолбался
Re[66]: Ультракороткий язык программирования RS
От: PC_2 http://code.google.com/p/rsinterpretator/
Дата: 30.12.10 16:49
Оценка:
Здравствуйте, samius, Вы писали:

Сколько можно одно и тоже пережевывать, было уже сто раз

От: PC_2 http://code.google.com/p/rsinterpretator/
Дата: 27.12.10 15:12
Оценка:
S>Хорошо. Продолжи генерацию с пароля xyjabdf

Короче, вот написал за 2 минуты.
Не думаю что я решил эту задачу на Шарпе. На шарпе просто не решается эта задача за 2 минуты, а за 15 минут это минимум

код

!y = 'x'..'z'
!x='a'..'z'
i<3?a+='+x'+i
^('s,=y' + a)
m,=s.i>'xaac'?s.i
m


и результат

xaad,xaae,xaaf,xaag,xaah,xaai,xaaj,xaak,xaal,xaam,xaan,xaao,xaap,xaaq,xaar,xaas,xaat,xaau ...


Третий день одно и тоже жуем, давайте уже регекспы пилить ...
"Вся страна играть в футбол умеет, лишь мы 11 человек играть не умеем"(с)КВН
Re[67]: Ультракороткий язык программирования RS
От: samius Япония http://sams-tricks.blogspot.com
Дата: 30.12.10 17:50
Оценка: +1
Здравствуйте, PC_2, Вы писали:

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


PC_>Сколько можно одно и тоже пережевывать, было уже сто раз

И ни один раз из ста вопрос ты так и не закрыл.

PC_>

PC_>код

PC_>!y = 'x'..'z'
PC_>!x='a'..'z'
PC_>i<3?a+='+x'+i
PC_>^('s,=y' + a)
PC_>m,=s.i>'xaac'?s.i
PC_>m


PC_>и результат

PC_>xaad,xaae,xaaf,xaag,xaah,xaai,xaaj,xaak,xaal,xaam,xaan,xaao,xaap,xaaq,xaar,xaas,xaat,xaau ...

Нет уж изволь, ты сравнивал код на Немерле, генерящий пароли из уникальных букв с кодом на РС, который не генерит нифига.
Теперь предъявляешь генератор, который якобы генерит пароли с повторами. Допили уж тогда его до того что бы он генерил пароли без повторов, а там и сравним.

Отдельный вопрос, почему якобы... В нем опять-таки генерится строка '+x0+x1+x2', которая для eval-а бессмысленна.

PC_>Третий день одно и тоже жуем, давайте уже регекспы пилить ...

Ты же сам опять начал предъявлять свои нерабочие примеры. Меня ты можешь упрекнуть только в том что я приоткрываю интересующимся механизмы их "работы".

И с регекспами будет так же, если мне не надоест роль разоблачителя
Re[78]: Ультракороткий язык программирования RS
От: Пацак Россия  
Дата: 30.12.10 17:53
Оценка: +1
Здравствуйте, PC_2, Вы писали:

PC_>А вот так тоже, но строковой массив

PC_>
PC_>m = 'A'**100
PC_>


И зачем оно может понадобиться?
Ку...
Re[63]: Ультракороткий язык программирования RS
От: Пацак Россия  
Дата: 30.12.10 18:18
Оценка:
Здравствуйте, samius, Вы писали:

PC_>>
PC_>>i<3?a+='+x'+i
PC_>>^a
PC_>>


Вопрос к тебе, как к человеку, имеющему под руками транслятор. Я правильно понял, что '^' у него — это eval()? Если да — то всё ещё более печально, чем я думал...
Ку...
Re[64]: Ультракороткий язык программирования RS
От: samius Япония http://sams-tricks.blogspot.com
Дата: 30.12.10 18:34
Оценка:
Здравствуйте, Пацак, Вы писали:

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


PC_>>>
PC_>>>i<3?a+='+x'+i
PC_>>>^a
PC_>>>


П>Вопрос к тебе, как к человеку, имеющему под руками транслятор. Я правильно понял, что '^' у него — это eval()? Если да — то всё ещё более печально, чем я думал...

Да, ^ это именно eval. И он работает:
x='a'..'z'
^'+x.0+x.1+x.2'

вполне справедливо выдает
'abc'

Но результат строки
i<3?a+='+x'+i
есть
'+x0+x1+x2'.
А такой код
x='a'..'z'
^'+x0+x1+x2'

выдает
Operators: ^+x0+x1+x2
Object reference not set to an instance of an object.

Претензии собственно не к eval, а к тому, что выдается за рабочий генератор.
Re[78]: Ультракороткий язык программирования RS
От: ambel-vlad Беларусь  
Дата: 30.12.10 18:37
Оценка:
Здравствуйте, PC_2, Вы писали:

PC_>Добавил конструкцию для генерации массивов


PC_>Вот так можно инициализировать массив на 100 элеменов заполненный 0


PC_>
PC_>m = 0**100
PC_>


PC_>А вот так тоже, но строковой массив


PC_>
PC_>m = 'A'**100
PC_>



А как будет инициализироваться трехмерный массив чисел? А строк?

Кстати, а динамические массивы в том или ином виде предполагаются?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[63]: Ультракороткий язык программирования RS
От: ambel-vlad Беларусь  
Дата: 30.12.10 18:37
Оценка: -1
Здравствуйте, PC_2, Вы писали:

PC_>5. Немерле разрабатывают западные студенты из Польши, РС разрабатывается только отечествеными силами. Я например из Украины.


И?..

PC_>6. Немерле привязан к Майкрософт, поэтому ему постоянно приходится ждать там погоды. РС ограничивает только фантазия разработчика. И кстате половина задумок находится как раз в области Фреймворка для РС.


Я не фанат Немерле и смотрел краем глаза, но вроде там нет ничего такого, чтобы могло помешать транлировать Немерле во что-то другое нежели .NET.

PC_>7. Немерле не кроссфплаторменен, компактный РС интерпретатор можно переписать на Java и запустить например на смартфонах Android. Дело двух трех недель, если будет желание.


См. выше.

PC_>8. Немерле ограничен по быстродействию, поскольку декларативная структура отображается макросами. В РС оптимизатор выражений может быть ограничен только фантазиями и находчивостью разработчиков.


Возможно я и ошибаюсь, но если эти фантазии не закладывались на этапе проектирования, то потом уже будет поздно фантазировать.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[15]: Ультракороткий язык программирования RS
От: blackhearted Украина  
Дата: 30.12.10 18:43
Оценка:
Здравствуйте, PC_2, Вы писали:

PC_>Причем тут математики.

PC_>Короткий и мощный синтаксис это же очень классно.
PC_>Вот когда у меня рождается в голове микро программа, я просто сажусь и набираю ее за минуту-две.
PC_>Ну где еще такое возможно ? Программы настолько лаконичны, что я их держу в памяти, и их набирать могу на клавиатуре мобильного.

Губанов вернулся?
Re[79]: Ультракороткий язык программирования RS
От: Пацак Россия  
Дата: 30.12.10 18:51
Оценка:
Здравствуйте, ambel-vlad, Вы писали:

AV>А как будет инициализироваться трехмерный массив чисел? А строк?

AV>Кстати, а динамические массивы в том или ином виде предполагаются?

... и контрольный в голову: как будет выглядеть ассоциативный массив?
Ку...
Re[65]: Ультракороткий язык программирования RS
От: Пацак Россия  
Дата: 30.12.10 19:05
Оценка: +1
Здравствуйте, samius, Вы писали:

S>Да, ^ это именно eval. И он работает:

...
S>Претензии собственно не к eval, а к тому, что выдается за рабочий генератор.

Ну нет, претензии в первую голову именно к eval. Потому что как только дело перейдет от наколеночных примеров к реальным программам с реальными входными данными — мы в полный рост получим проблему, уже не раз прочувствованную в виде различных XSS, register_globals и SQL-injections. Что имхо совершенно не тянет на приемлимую цену за синтаксическую лаконичность.
Ку...
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.