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

__>>1 2 + 2 3 + 3 4 + 4 5 + 5 6 + 6 7 + 7 8 + 9 0 + 1 2 + 2 3 + 4 5 + 5 6 + 7 8 + 9 0 + 1 2 + 3 4 + 5 6


PC_>тю


PC_>A.I.0 += A.I.(J>0?J)


PC_>где А двумерный массив всего того что ты там не поленился печатать вверху


Ну или так

x:=0
y:=0
x+=A.I.0
y+=A.I.1
"Вся страна играть в футбол умеет, лишь мы 11 человек играть не умеем"(с)КВН
Re[58]: Ультракороткий язык программирования RS
От: PC_2 http://code.google.com/p/rsinterpretator/
Дата: 22.12.10 15:46
Оценка:
Здравствуйте, _nn_, Вы писали:

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


__>>>1 2 + 2 3 + 3 4 + 4 5 + 5 6 + 6 7 + 7 8 + 9 0 + 1 2 + 2 3 + 4 5 + 5 6 + 7 8 + 9 0 + 1 2 + 3 4 + 5 6


PC_>>тю


PC_>>A.I.0 += A.I.(J>0?J)


PC_>>где А двумерный массив всего того что ты там не поленился печатать вверху


__>А в явном виде с числами без переменных неужели никак ?

__>Где же здесь экономия символов ?
__>Да еще и переменную заводить нужно.

В твоем примере, учитывая размер харкода массива, экономия символов составит 2,5%
"Вся страна играть в футбол умеет, лишь мы 11 человек играть не умеем"(с)КВН
Re[59]: Ультракороткий язык программирования RS
От: PC_2 http://code.google.com/p/rsinterpretator/
Дата: 22.12.10 15:50
Оценка:
Здравствуйте, PC_2, Вы писали:

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


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


__>>>>1 2 + 2 3 + 3 4 + 4 5 + 5 6 + 6 7 + 7 8 + 9 0 + 1 2 + 2 3 + 4 5 + 5 6 + 7 8 + 9 0 + 1 2 + 3 4 + 5 6


PC_>>>тю


PC_>>>A.I.0 += A.I.(J>0?J)


PC_>>>где А двумерный массив всего того что ты там не поленился печатать вверху


__>>А в явном виде с числами без переменных неужели никак ?

__>>Где же здесь экономия символов ?
__>>Да еще и переменную заводить нужно.

PC_>В твоем примере, учитывая размер харкода массива, экономия символов составит 2,5%


Хотя нуна еще подумать, этот ряд гдето будет сходится, учитывая неоптимальный дубляж символа + в унылом говнокоде Джи,
тоесть на массиве скажем в килобайт, исходник кода будет больше исходника кода на РС
"Вся страна играть в футбол умеет, лишь мы 11 человек играть не умеем"(с)КВН
Re[60]: Ультракороткий язык программирования RS
От: _nn_  
Дата: 22.12.10 15:52
Оценка:
Здравствуйте, PC_2, Вы писали:

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


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


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


__>>>>>1 2 + 2 3 + 3 4 + 4 5 + 5 6 + 6 7 + 7 8 + 9 0 + 1 2 + 2 3 + 4 5 + 5 6 + 7 8 + 9 0 + 1 2 + 3 4 + 5 6


PC_>>>>тю


PC_>>>>A.I.0 += A.I.(J>0?J)


PC_>>>>где А двумерный массив всего того что ты там не поленился печатать вверху


__>>>А в явном виде с числами без переменных неужели никак ?

__>>>Где же здесь экономия символов ?
__>>>Да еще и переменную заводить нужно.

PC_>>В твоем примере, учитывая размер харкода массива, экономия символов составит 2,5%


PC_>Хотя нуна еще подумать, этот ряд гдето будет сходится, учитывая неоптимальный дубляж символа + в унылом говнокоде Джи,

PC_>тоесть на массиве скажем в килобайт, исходник кода будет больше исходника кода на РС

Я в тексте не нашел ответа на мой вопрос.
Ваши аргументы не являтся ответом на вопрос как сделать без переменной.

P.S.
Если вы высказываете точку зрения приводите аргументы по теме.
http://rsdn.nemerleweb.com
http://nemerleweb.com
Re[42]: Ультракороткий язык программирования RS
От: Mamut Швеция http://dmitriid.com
Дата: 22.12.10 15:53
Оценка: +1
M>>Ну и? То, что ты напишешь это в одну строчку, не значит, что for там внезапно исчез. Он там остался, скрытый синтаксичесим сахаром

PC_>Ну да, а когда ты пишешь Фор, это тот же ассемблер, скрытый синтаксическим сахарком ...


Главное, что в случае твоего сахара программист должен четко понимать, что чудес не бывает, и что I/J и прочие !счетчики разворачиваются в банальеный цикл. Чудес не бывает.


dmitriid.comGitHubLinkedIn
Re[61]: Ультракороткий язык программирования RS
От: PC_2 http://code.google.com/p/rsinterpretator/
Дата: 22.12.10 15:56
Оценка:
__>Я в тексте не нашел ответа на мой вопрос.
__>Ваши аргументы не являтся ответом на вопрос как сделать без переменной.

Мы замер длины кода смотрели, не ?
"Вся страна играть в футбол умеет, лишь мы 11 человек играть не умеем"(с)КВН
Re[43]: Ультракороткий язык программирования RS
От: PC_2 http://code.google.com/p/rsinterpretator/
Дата: 22.12.10 15:56
Оценка:
Здравствуйте, Mamut, Вы писали:

M>>>Ну и? То, что ты напишешь это в одну строчку, не значит, что for там внезапно исчез. Он там остался, скрытый синтаксичесим сахаром


PC_>>Ну да, а когда ты пишешь Фор, это тот же ассемблер, скрытый синтаксическим сахарком ...


M>Главное, что в случае твоего сахара программист должен четко понимать, что чудес не бывает, и что I/J и прочие !счетчики разворачиваются в банальеный цикл. Чудес не бывает.


Программисты всех стран четко понимают ...
"Вся страна играть в футбол умеет, лишь мы 11 человек играть не умеем"(с)КВН
Re[48]: Ультракороткий язык программирования RS
От: Mamut Швеция http://dmitriid.com
Дата: 22.12.10 15:57
Оценка:
H>>Здравствуйте, PC_2, Вы писали:
PC_>>>Отлично, включите этот сорц в исходные коды генератора паролей и тогда проведем замер органа ...
H>>Т.е. ты действительно считаешь что можешь в разумные сроки написать на своем языке движок регулярных выражений?

PC_>Нет, я не считаю. Просто мне предложили генерить пароли по регекспу ...

PC_>Я предложил если делать замер, то не на библиотечных функциях, а на каркасе самого языка.

Ты не ответил. Если ты требуешь реализации рег. выражений на Немерле, то мы вправе потребовать реализации рег. выражений на PC_2.

PC_>Иначе както несправедливо, библиотечных функций в языке у меня нет ...


То есть ты будегшь реализовывать движок рег. выражений на PC_2?


dmitriid.comGitHubLinkedIn
Re[44]: Ультракороткий язык программирования RS
От: Mamut Швеция http://dmitriid.com
Дата: 22.12.10 15:59
Оценка:
M>>>>Ну и? То, что ты напишешь это в одну строчку, не значит, что for там внезапно исчез. Он там остался, скрытый синтаксичесим сахаром

PC_>>>Ну да, а когда ты пишешь Фор, это тот же ассемблер, скрытый синтаксическим сахарком ...


M>>Главное, что в случае твоего сахара программист должен четко понимать, что чудес не бывает, и что I/J и прочие !счетчики разворачиваются в банальеный цикл. Чудес не бывает.


PC_>Программисты всех стран четко понимают ...


!N := 1..4
S := 0
S += N


Здесь есть цикл. То, что он у тебя скрыт, не значит, что его там нет. при этом в других языках (том же С++, кстати), компилятор может спокойно от цикла избавиться на этапе компиляции. Вряд ли такое возможно у тебя


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

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

PC_>>>>Отлично, включите этот сорц в исходные коды генератора паролей и тогда проведем замер органа ...
H>>>Т.е. ты действительно считаешь что можешь в разумные сроки написать на своем языке движок регулярных выражений?

PC_>>Нет, я не считаю. Просто мне предложили генерить пароли по регекспу ...

PC_>>Я предложил если делать замер, то не на библиотечных функциях, а на каркасе самого языка.

M>Ты не ответил. Если ты требуешь реализации рег. выражений на Немерле, то мы вправе потребовать реализации рег. выражений на PC_2.


PC_>>Иначе както несправедливо, библиотечных функций в языке у меня нет ...


M>То есть ты будегшь реализовывать движок рег. выражений на PC_2?


Нет, эта идея была сарказмом, кто с юмором тот понял.
Предлагаю выбросить регекспы и просто последовательно по алфавиту генерить код.
На шарпе я уже предоставил, это пять строк кода. Остался ход за РС
"Вся страна играть в футбол умеет, лишь мы 11 человек играть не умеем"(с)КВН
Re[50]: Ультракороткий язык программирования RS
От: Mamut Швеция http://dmitriid.com
Дата: 22.12.10 16:02
Оценка:
H>>>>Здравствуйте, PC_2, Вы писали:
PC_>>>>>Отлично, включите этот сорц в исходные коды генератора паролей и тогда проведем замер органа ...
H>>>>Т.е. ты действительно считаешь что можешь в разумные сроки написать на своем языке движок регулярных выражений?

PC_>>>Нет, я не считаю. Просто мне предложили генерить пароли по регекспу ...

PC_>>>Я предложил если делать замер, то не на библиотечных функциях, а на каркасе самого языка.

M>>Ты не ответил. Если ты требуешь реализации рег. выражений на Немерле, то мы вправе потребовать реализации рег. выражений на PC_2.


PC_>>>Иначе както несправедливо, библиотечных функций в языке у меня нет ...


M>>То есть ты будегшь реализовывать движок рег. выражений на PC_2?


PC_>Нет, эта идея была сарказмом, кто с юмором тот понял.

PC_>Предлагаю выбросить регекспы и просто последовательно по алфавиту генерить код.
PC_>На шарпе я уже предоставил, это пять строк кода. Остался ход за РС

Что ты привязался к Шарпу? Тебе привели код в одну строку на Немерле

Ход за PC


dmitriid.comGitHubLinkedIn
Re[62]: Ультракороткий язык программирования RS
От: _nn_  
Дата: 22.12.10 16:02
Оценка: +1
Здравствуйте, PC_2, Вы писали:

__>>Я в тексте не нашел ответа на мой вопрос.

__>>Ваши аргументы не являтся ответом на вопрос как сделать без переменной.

PC_>Мы замер длины кода смотрели, не ?


Приведите сначала полный код на RS.
А там уже посмотрим.
http://rsdn.nemerleweb.com
http://nemerleweb.com
Re[45]: Ультракороткий язык программирования RS
От: PC_2 http://code.google.com/p/rsinterpretator/
Дата: 22.12.10 16:04
Оценка: :)
M>Здесь есть цикл. То, что он у тебя скрыт, не значит, что его там нет. при этом в других языках (том же С++, кстати), компилятор может спокойно от цикла избавиться на этапе компиляции. Вряд ли такое возможно у тебя

угу, а еще не понятно что будет делать компилятор в таком случае ...


for(int i=0; i<100; i++)
{
   int a = 5+100+1000;
   int b = 12 + 256;
   arr[i] = a + b;
}


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

у меня код будет куда проще для оптимизации, и я бы сказал что он уже соптимизирован в трансляторе на 20 кб

a := 5+100+1000;
b := 12 + 256;
arr.i = a + b;


За сим удаляюсь, от плодотворной ( к сожалению только для противоположной стороны ) дискусии
"Вся страна играть в футбол умеет, лишь мы 11 человек играть не умеем"(с)КВН
Re[44]: Ультракороткий язык программирования RS
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 22.12.10 16:06
Оценка: 3 (1) +2
Здравствуйте, PC_2, Вы писали:

PC_>Без проблем, если сами регулярные выражения тоже будут реализованы в Немерле ( а не заимстованы из библиотек )


Ок, по поводу PEG'а тут уже сказали (а он поставляется с компилятором из коробки, если что), боюсь RS будет порван в клочья, если мы займемся реализацией сколь-нибудь сложной грамматики. Поэтому предлагаю упростить условия и остановиться на упрощенном синтаксисе и, в свою очередь, постараюсь обойтись без PEG, а использую рукопашный парсер:

{X,n} — обозначает n случайных символов, принадлежащих группе X

где X — выражение, объединяющее типы групп:

0 цифры
A большие буквы латинского алфавита
a малые буквы латинского алфавита
? символы

т.е.

asd{0,3}fgh означает в т.ч. asd194fgh, а под asd{0a?,4}fgh вполне подходит asd@#a1fgh или asd)12afgh и т.п. Если необходимо использовать открывающую фигурную скобку в шаблоне, то она должна быть заэкранирована обратным слешем: asd\{fgh{0,3}

код должен корректно обрабатывать возможные синтаксические ошибки в шаблоне (хотя бы сообщать о них) и позволять добавлять новые типы групп без переписывания всего парсера.

Правда, есть одно "но". Что-то я не увидел вашей реализации простой генерации пароля. Я недоглядел или ее действительно нет?
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re[46]: Ультракороткий язык программирования RS
От: Mamut Швеция http://dmitriid.com
Дата: 22.12.10 16:10
Оценка:
Здравствуйте, PC_2, Вы писали:

M>>Здесь есть цикл. То, что он у тебя скрыт, не значит, что его там нет. при этом в других языках (том же С++, кстати), компилятор может спокойно от цикла избавиться на этапе компиляции. Вряд ли такое возможно у тебя


PC_>угу, а еще не понятно что будет делать компилятор в таком случае ...



PC_>
PC_>for(int i=0; i<100; i++)
PC_>{
PC_>   int a = 5+100+1000;
PC_>   int b = 12 + 256;
PC_>   arr[i] = a + b;
PC_>}
PC_>


Вообще-то, понятно.


PC_>Точней я то знаю ...

PC_>но стоит ли говорить что это реализовано через жопу, почему и нормальный Си компилятор это мегабайты в архиве

PC_>у меня код будет куда проще для оптимизации, и я бы сказал что он уже соптимизирован в трансляторе на 20 кб


PC_>
PC_>a := 5+100+1000;
PC_>b := 12 + 256;
PC_>arr.i = a + b;
PC_>


Ты показал код, который надо еще откомпилироваьт/интерпретировать. То, что в нем простой синтаксис, не значит, что понятно, что быдет делать компилятор, и будет ли он что-либо оптимизировать. Потому что ыделенное — это тот же цикл, что и выше.


PC_>За сим удаляюсь, от плодотворной ( к сожалению только для противоположной стороны ) дискусии


А ты в ней, по сути, и не участвовал


dmitriid.comGitHubLinkedIn
Re[24]: Ультракороткий язык программирования RS
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 22.12.10 16:12
Оценка:
Здравствуйте, PC_2, Вы писали:

KV>>Вы с Сергеем Зефиром (thesz) часом не знакомы?


PC_>Нет, не знаком. А почему вы спрашиваете ?


Да просто у меня на днях состоялся с ним короткий, но интересный разговор о низкоуровневости немерла, где он высказывал весьма похожие по духу мысли. Напомнило, так сказать.
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re[45]: Ультракороткий язык программирования RS
От: PC_2 http://code.google.com/p/rsinterpretator/
Дата: 22.12.10 16:31
Оценка:
KV>Ок, по поводу PEG'а тут уже сказали (а он поставляется с компилятором из коробки, если что), боюсь RS будет порван в клочья, если мы займемся

По уровня говнокода, боюсь, вы порвали даже J
Я не знаю кто писал немерлу, но так испоганить бедные 5 строчек кода шарпа (один иф и два фора) это еще нужно крепко постараться
Ничего личного, так сказать. Просто пример попался неудачный тебе. Хотя тут махали флагами, я как понял Немерла флагман в парсерах, от чего такой весь сыр бор затеяли с усложнением задачи.

KV>реализацией сколь-нибудь сложной грамматики. Поэтому предлагаю упростить условия и остановиться на упрощенном синтаксисе и, в свою очередь, KV>постараюсь обойтись без PEG, а использую рукопашный парсер


KV>{X,n} — обозначает n случайных символов, принадлежащих группе X

KV>где X — выражение, объединяющее типы групп:
KV>0 цифры
KV>A большие буквы латинского алфавита
KV>a малые буквы латинского алфавита
KV>? символы
KV>т.е.

Я подумаю на досуге. По замыслу комбинаторикой должни были заниматься Группыны.

KV>asd{0,3}fgh означает в т.ч. asd194fgh, а под asd{0a?,4}fgh вполне подходит asd@#a1fgh или asd)12afgh и т.п. Если необходимо использовать открывающую фигурную скобку в шаблоне, то она должна быть заэкранирована обратным слешем: asd\{fgh{0,3}


KV>код должен корректно обрабатывать возможные синтаксические ошибки в шаблоне (хотя бы сообщать о них) и позволять добавлять новые типы групп без переписывания всего парсера.


не забудьте, прошлый пример както не работал для отрицательных значений факториала ...

KV>Правда, есть одно "но". Что-то я не увидел вашей реализации простой генерации пароля. Я недоглядел или ее действительно нет?


мы еще задачу толком не сформулировали
"Вся страна играть в футбол умеет, лишь мы 11 человек играть не умеем"(с)КВН
Re[47]: Ультракороткий язык программирования RS
От: PC_2 http://code.google.com/p/rsinterpretator/
Дата: 22.12.10 16:34
Оценка: -1
M>Ты показал код, который надо еще откомпилироваьт/интерпретировать. То, что в нем простой синтаксис, не значит, что понятно, что быдет делать компилятор, и будет ли он что-либо оптимизировать. Потому что ыделенное — это тот же цикл, что и выше.

не неси бред,
устаешь от тебя ... честно ....
"Вся страна играть в футбол умеет, лишь мы 11 человек играть не умеем"(с)КВН
Re[46]: Ультракороткий язык программирования RS
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 22.12.10 17:18
Оценка:
Я тут смотался в альтернативную реальность... Честно говоря, адекватных причин по которым вы решили зайти тут на второй круг, я для себя не нашел. Разработчики здесь точно такие же, как и там — странно ожидать иной реакции на одну и ту же вводную. Это при том, что там вы хотя бы в общих чертах описали конструкции языка, в отличии от.

Зачем?
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re[10]: Ультракороткий язык программирования RS
От: elmal  
Дата: 22.12.10 18:00
Оценка: 18 (1) +1
Здравствуйте, PC_2, Вы писали:

PC_>Вот очень приблизительный набросок Шахмат, в 1 кб на РС

PC_>Просьба хорькам не разбирать код, тут еще ничего не работает !
Судя по коду, это язык для написания игр типа шахмат . Заточенный на комбинаторику, перебор всех вариантов. Ну что могу сказать, в принципе имеет право на жизнь. Вот только необходимости в ЯП для таких задач никаких нет. Пишется типовая реализация этой комбинаторики на нормальном высокоуровневом языке, а под конкретную задачу подбирается соответствующая грамматика, чтобы можно было максимально быстро закодировать правила любой игры. И далее на основе этой грамматики можно просто генерить код на нужном языке. Все. Обычный DSL. Вполне можно это реализовать, используя например MPS от JetBrains — будет и отладчик, и приличная IDE — зачем язык то городить под это?
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.