Здравствуйте, VladD2, Вы писали:
VD>Здравствуйте, PC_2, Вы писали:
PC_>>Спасибо, но это не Квик сорт. Это его пародия. PC_>>Алгоритм Квик сорт включает перемещение элементов на "одном участке" памяти. PC_>>Тоесть не требует дополнительных ресурсов памяти.
PC_>>Тоесть банально этот код не решает поставленную задачу. Точка.
VD>А этот говнобред решает: PC_>>>>//7. квик сорт PC_>>>>E ( S.I.J<S.I.(S.I.Len/2)? PC_>>>> S.(I*2+1): PC_>>>> S.(I*2+2) PC_>>>> ),=S.I.J
VD>
VD>По твоим же объяснениям мы выяснили, что ,= добавляет элемент к массиву. Значит сортировки по месту мы уже не имеем. Так что дальше уже разбираться не в чем.
я же ответил уже на вопрос на счет квик сорт.
Во-первых мой пример не работает
Во-вторых доводить до ума не имеет смысла, поскольку также как Немерла не решает поставленной задачи
Будут группы напишу как следует и компактно и оптимально
"Вся страна играть в футбол умеет, лишь мы 11 человек играть не умеем"(с)КВН
Здравствуйте, Mamut, Вы писали:
VD>>>Знакомься: VD>>>* АПЛ VD>>>* J VD>>>* K
VD>>>Не знаю насколько быстро на них писать, но читать их кода нельзя.
PC_>>Ну упоминал я уже Влад эти языки, языки эти короткие но не понятные. PC_>>Используют юникод и тд тп. Я к проектированию синтаксиса подошел основательно. Птичести языка обьявлен бой. PC_>>Цель получить и короткий и понятный язык.
M>Угу. И этоговорит человек, который выдумывает
M>
M>E 1..5\*
M>
M>Это, видимо, понятнее, чем в q/j/k, ага
PC_>>Никаких шуток, есть рабочий транслятор и рабочий набор примеров и еще не вспаханое поле аспектного программирования. PC_>>Я хочу это неклюжее ООП заменить исключительно гибкой структурой построеной на распозновании классов.
M>Чего-чего?
Ну ты даешь. Конечно это мегапонятно.
1..5 генерит массив 1,2,3,4,5
А операция \* сворачивает по умножению
А еще можно писать вот так
1..5\<
сворачивает по операции меньше — получаем минимум
или
1..5\>
Получили максимум. И всего то 6 байт !
"Вся страна играть в футбол умеет, лишь мы 11 человек играть не умеем"(с)КВН
Здравствуйте, PC_2, Вы писали:
PC_>1..5\< PC_>сворачивает по операции меньше — получаем минимум PC_>или
Ты мне отвечал что результатом будет True или False. То о чем ты пишешь сейчас называется сворачиванием по операции min.
Здравствуйте, PC_2, Вы писали:
PC_>Ну ты даешь. Конечно это мегапонятно.
PC_>1..5 генерит массив 1,2,3,4,5 PC_>А операция \* сворачивает по умножению PC_>А еще можно писать вот так
PC_>1..5\< PC_>сворачивает по операции меньше — получаем минимум PC_>или PC_>1..5\> PC_>Получили максимум.
А как будет фолд выглядеть по произвольной функции? Язык поддерживает лямбды? Замыкания?
PC_>И всего то 6 байт !
И что? можно создать язык где подобные конструкции будут выражаться одним символом, только что это даст?
ЗЫ. Сдается мне этот топик такой тонкий троллинг Nemerle.
Здравствуйте, samius, Вы писали:
S>Здравствуйте, PC_2, Вы писали:
PC_>>1..5\< PC_>>сворачивает по операции меньше — получаем минимум PC_>>или S>Ты мне отвечал что результатом будет True или False. То о чем ты пишешь сейчас называется сворачиванием по операции min.
Напомни пример, я гляну
"Вся страна играть в футбол умеет, лишь мы 11 человек играть не умеем"(с)КВН
Здравствуйте, PC_2, Вы писали:
PC_>Здравствуйте, samius, Вы писали:
S>>Здравствуйте, PC_2, Вы писали:
PC_>>>1..5\< PC_>>>сворачивает по операции меньше — получаем минимум PC_>>>или S>>Ты мне отвечал что результатом будет True или False. То о чем ты пишешь сейчас называется сворачиванием по операции min.
PC_>Напомни пример, я гляну
уже глянул
E X:=6
E X%2..(X-1)\<
Это ультрапонятный пример, опять же.
Обьявили переменную присвоили 6
E X:=6
Теперь
2..(X-1)
Генерит массив от 2х до Х-1
далее результат делим поэлементно
E X%(2..(X-1))
на выходе массив из 0 и 1.
Ну и сворачиваем по минимуму. Если 0 значит простое число
"Вся страна играть в футбол умеет, лишь мы 11 человек играть не умеем"(с)КВН
Здравствуйте, PC_2, Вы писали:
PC_>Здравствуйте, samius, Вы писали:
S>>Здравствуйте, PC_2, Вы писали:
PC_>>>1..5\< PC_>>>сворачивает по операции меньше — получаем минимум PC_>>>или S>>Ты мне отвечал что результатом будет True или False. То о чем ты пишешь сейчас называется сворачиванием по операции min.
PC_>Напомни пример, я гляну http://www.rsdn.ru/forum/philosophy/4087564.1.aspx
Здравствуйте, samius, Вы писали:
S>Здравствуйте, PC_2, Вы писали:
PC_>>Здравствуйте, samius, Вы писали:
S>>>Здравствуйте, PC_2, Вы писали:
PC_>>>>1..5\< PC_>>>>сворачивает по операции меньше — получаем минимум PC_>>>>или S>>>Ты мне отвечал что результатом будет True или False. То о чем ты пишешь сейчас называется сворачиванием по операции min.
PC_>>Напомни пример, я гляну S>http://www.rsdn.ru/forum/philosophy/4087564.1.aspx
Здравствуйте, PC_2, Вы писали:
PC_>уже глянул
PC_>E X:=6 PC_>E X%2..(X-1)\<
PC_>Это ультрапонятный пример, опять же. PC_>Обьявили переменную присвоили 6 PC_>E X:=6
PC_>Теперь PC_>2..(X-1) PC_>Генерит массив от 2х до Х-1
PC_>далее результат делим поэлементно PC_>E X%(2..(X-1))
Неожиданно оказалось что у ".." приоритет выше чем у "%"?
PC_>на выходе массив из 0 и 1.
PC_>Ну и сворачиваем по минимуму. Если 0 значит простое число
На словах хорошо, а на деле
System.NullReferenceException occurred
Message="Object reference not set to an instance of an object."
Source="RS"
StackTrace:
at RS.DOM.Common.Line.Add(Token token) in D:\_\PC\rsinterpretator-read-only\RS\RS\DOM\Common\Line.cs:line 129
InnerException:
Здравствуйте, gandjustas, Вы писали:
G>А как будет фолд выглядеть по произвольной функции? Язык поддерживает лямбды? Замыкания?
Пока никак, это базовая опперация. Просуммировать, перемножить, минимум, максимум и тд.
Все остальное через группы реализовывается...
PC_>>И всего то 6 байт !
G>И что? можно создать язык где подобные конструкции будут выражаться одним символом, только что это даст?
Удачно подобраный каркас операторов позволяет писать любые программы на качественно новом уровне
"Вся страна играть в футбол умеет, лишь мы 11 человек играть не умеем"(с)КВН
Здравствуйте, samius, Вы писали:
S>Здравствуйте, PC_2, Вы писали:
PC_>>уже глянул
PC_>>E X:=6 PC_>>E X%2..(X-1)\<
PC_>>Это ультрапонятный пример, опять же. PC_>>Обьявили переменную присвоили 6 PC_>>E X:=6
PC_>>Теперь PC_>>2..(X-1) PC_>>Генерит массив от 2х до Х-1
PC_>>далее результат делим поэлементно PC_>>E X%(2..(X-1)) S>Неожиданно оказалось что у ".." приоритет выше чем у "%"?
дык так должно быть
PC_>>на выходе массив из 0 и 1.
PC_>>Ну и сворачиваем по минимуму. Если 0 значит простое число S>На словах хорошо, а на деле S>
S>System.NullReferenceException occurred
S> Message="Object reference not set to an instance of an object."
S> Source="RS"
S> StackTrace:
S> at RS.DOM.Common.Line.Add(Token token) in D:\_\PC\rsinterpretator-read-only\RS\RS\DOM\Common\Line.cs:line 129
S> InnerException:
Хм, баг какой-то. Может не слишком свежая версия на свн, позже гляну
"Вся страна играть в футбол умеет, лишь мы 11 человек играть не умеем"(с)КВН
Здравствуйте, PC_2, Вы писали:
PC_>Да, уже ответил. PC_>Молодец, плюс за внимательность ! PC_>Даже без мануала ты уже почти РС Девелопер
боюсь, что до этого далеко.
Здравствуйте, samius, Вы писали:
S>Здравствуйте, PC_2, Вы писали:
PC_>>Да, уже ответил. PC_>>Молодец, плюс за внимательность ! PC_>>Даже без мануала ты уже почти РС Девелопер S>боюсь, что до этого далеко.
Ну чего, ты уже живенько так разбираешся в программах, баги, резульаты операций.
Я вот с Немерле так не могу, не смотря на 10ти летний опыт программирования от Ассемблера до HTML, Шарп, TSQL и тд
Просто язык действительно простой, каждую деталь я стараюсь продумывать.
Если она выглядит неочевидно, непонятно или еще как, немедленно выбрасывается из синтаксиса
"Вся страна играть в футбол умеет, лишь мы 11 человек играть не умеем"(с)КВН
Здравствуйте, PC_2, Вы писали:
PC_>Здравствуйте, samius, Вы писали:
S>>Здравствуйте, PC_2, Вы писали:
PC_>>>уже глянул
PC_>>>E X:=6 PC_>>>E X%2..(X-1)\<
S>>Неожиданно оказалось что у ".." приоритет выше чем у "%"?
PC_>дык так должно быть
Так и должно быть?
Давай посмотрим варианты.
а) (X%2)..(X-1) — мне понятно что это, это массив 3..5. Исходя из вводной, которую ты дал на первой странице — многие подумают так же.
б) X%(2..(X-1)) — это походу число 6 деленное на массив 2..5. То что в результате будет массив — куда менее очевидно, чем вариант а).
PC_>>>на выходе массив из 0 и 1.
Может быть остатков от деления на соответствующий элемент массива?
PC_>>>Ну и сворачиваем по минимуму. Если 0 значит простое число S>>На словах хорошо, а на деле
Ага, мне тоже спать пора. Если 0 — значит делится на один из элементов массива.
PC_>Хм, баг какой-то. Может не слишком свежая версия на свн, позже гляну
17 ноября вроде бы
Здравствуйте, samius, Вы писали:
S>Здравствуйте, PC_2, Вы писали:
PC_>>Здравствуйте, samius, Вы писали:
S>>>Здравствуйте, PC_2, Вы писали:
PC_>>>>уже глянул
PC_>>>>E X:=6 PC_>>>>E X%2..(X-1)\<
S>>>Неожиданно оказалось что у ".." приоритет выше чем у "%"?
PC_>>дык так должно быть S>Так и должно быть? S>Давай посмотрим варианты. S>а) (X%2)..(X-1) — мне понятно что это, это массив 3..5. Исходя из вводной, которую ты дал на первой странице — многие подумают так же. S>б) X%(2..(X-1)) — это походу число 6 деленное на массив 2..5. То что в результате будет массив — куда менее очевидно, чем вариант а).
PC_>>>>на выходе массив из 0 и 1. S>Может быть остатков от деления на соответствующий элемент массива?
PC_>>>>Ну и сворачиваем по минимуму. Если 0 значит простое число S>>>На словах хорошо, а на деле S>Ага, мне тоже спать пора. Если 0 — значит делится на один из элементов массива.
PC_>>Хм, баг какой-то. Может не слишком свежая версия на свн, позже гляну S>17 ноября вроде бы
Вариант "б" и скобки не обязательны.
Более того, открою секрет. Любая из операций сейчас бинарная.
Тоесть ".." это тоже бинарная операция между двумя целыми числами которая возвращает массив.
Есть другая бинарная операция "." с тем же приоритетом, она выполняется тоже над двумя целыми числами ( левый и правый операнды ) и
возвращает число с плавающей точкой.
Вот так все просто.
"Вся страна играть в футбол умеет, лишь мы 11 человек играть не умеем"(с)КВН
Здравствуйте, Mamut, Вы писали:
PC_>>Никаких шуток, есть рабочий транслятор и рабочий набор примеров и еще не вспаханое поле аспектного программирования. PC_>>Я хочу это неклюжее ООП заменить исключительно гибкой структурой построеной на распозновании классов.
M>Чего-чего?
Это он про свое видение параметрического полиморфизма, похоже
Знаете, товарищ Мамут, у меня складывается странное ощущение, что нас тут сегодня жестоко оттроллили, но обосновать, увы не могу
Здравствуйте, kochetkov.vladimir, Вы писали:
KV>Здравствуйте, Mamut, Вы писали:
PC_>>>Никаких шуток, есть рабочий транслятор и рабочий набор примеров и еще не вспаханое поле аспектного программирования. PC_>>>Я хочу это неклюжее ООП заменить исключительно гибкой структурой построеной на распозновании классов.
M>>Чего-чего?
KV>Это он про свое видение параметрического полиморфизма, похоже
Не просто параметрического. Это инстанцирование классов в зависимости от обстоятельств.
Только у данных обладающих определенными свойствами должни появляться такие понятия как Класс.
Одни блоки данных могут свободно мигрировать по мере работы программы от одних классов к другим.
KV>Знаете, товарищ Мамут, у меня складывается странное ощущение, что нас тут сегодня жестоко оттроллили, но обосновать, увы не могу
Не выдумывайте.
"Вся страна играть в футбол умеет, лишь мы 11 человек играть не умеем"(с)КВН
Здравствуйте, PC_2, Вы писали:
PC_>Здравствуйте, gandjustas, Вы писали:
G>>А как будет фолд выглядеть по произвольной функции? Язык поддерживает лямбды? Замыкания?
PC_>Пока никак, это базовая опперация. Просуммировать, перемножить, минимум, максимум и тд. PC_>Все остальное через группы реализовывается...
Пример в студию.
PC_>>>И всего то 6 байт ! G>>И что? можно создать язык где подобные конструкции будут выражаться одним символом, только что это даст? PC_>Удачно подобраный каркас операторов позволяет писать любые программы на качественно новом уровне
Глупости, нормальные язык позволяют и свои операторы определять.
Здравствуйте, gandjustas, Вы писали:
G>Здравствуйте, PC_2, Вы писали:
PC_>>Здравствуйте, gandjustas, Вы писали:
G>>>А как будет фолд выглядеть по произвольной функции? Язык поддерживает лямбды? Замыкания?
PC_>>Пока никак, это базовая опперация. Просуммировать, перемножить, минимум, максимум и тд. PC_>>Все остальное через группы реализовывается... G>Пример в студию.
Уже приводил примеры.
PC_>>>>И всего то 6 байт ! G>>>И что? можно создать язык где подобные конструкции будут выражаться одним символом, только что это даст? PC_>>Удачно подобраный каркас операторов позволяет писать любые программы на качественно новом уровне G>Глупости, нормальные язык позволяют и свои операторы определять.
Причем здесь "нормальный язык позволяет определять свои операторы".
Свои операторы может определять и С++, но только это не мешает Шарпу или томуже Немерле быть на голову выше С++ в обычных задачах.
Дело не в операторах, дело в другой реализованной идеалогии.
Вы можете сколько угодно штамповать макросы или разные перегрузки операторы, но это только ортогональное упрощение программ.
У меня же черезвычайно гибкий язык с коротким и лаконичным синтаксисом.
"Вся страна играть в футбол умеет, лишь мы 11 человек играть не умеем"(с)КВН