|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
Решил выложить свою реализацию языка MSH на github https://github.com/SharMisha/MSH В habr написал небольшую заметку по этому поводу https://habr.com/ru/users/misha_shar53/posts/ Это конечно не готовый продукт, но может быть что то кому то будет интересно. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.11.2019, 09:53 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
То, что на Хабре - слишком общие слова, чтобы за это можно было плюсануть. Зато минусануть есть за что. Хотя бы за "местную публику" и претензии на создание идеального языка опять же (без единого примера). То есть разные корпорации, сообщества и энтузиасты десятками лет развивают языки, и не могут сделать ничего идеального, максимум, что-то лучше другого в какой-то сфере и на чей-то вкус. А вы один, аки Геракл претендуете на то, что не смогла сделать уйма людей. Вы бы привели примеры конструкций (хотя бы здесь, а не на Хабре), чтобы это можно было обсудить. Возможно, вы предложите скачать код с гитхаба, но для этого нужно заинтересовать, а вы, извините, пока даже этого не сделали. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.11.2019, 11:36 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
А, ну впрочем, в комментариях на Хабре все написали. Что-то я их сразу не увидел. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.11.2019, 11:39 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
Блок А.Н., Ладно на habre не в курсе языка, а вам то зачем я должен объяснять преимущества MUMPS. Все что можно написать на MUMPS, все то же ложится на MSH. Каких еще чудес вы от меня ждете? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.11.2019, 12:40 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
Блок А.Н. То, что на Хабре - слишком общие слова, чтобы за это можно было плюсануть. Зато минусануть есть за что. Хотя бы за "местную публику" и претензии на создание идеального языка опять же (без единого примера). То есть разные корпорации, сообщества и энтузиасты десятками лет развивают языки, и не могут сделать ничего идеального, максимум, что-то лучше другого в какой-то сфере и на чей-то вкус. А вы один, аки Геракл претендуете на то, что не смогла сделать уйма людей. Корпорации заинтересованы только в извлечении прибыли. А вот почему сообщество толчется вокруг стандарта 1995 года мне не понятно. Языки развивают не одни Гераклы. Если у вас есть идеи по развитию языка, изложите их, если нет то не пиняйте тем у кого они есть. Почему уйма людей ничего не придумала хорошего я не знаю. Вы бы привели примеры конструкций (хотя бы здесь, а не на Хабре), чтобы это можно было обсудить. Возможно, вы предложите скачать код с гитхаба, но для этого нужно заинтересовать, а вы, извините, пока даже этого не сделали. Не интересно, выбрости из головы. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.11.2019, 12:50 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
Блок А.Н. То, что на Хабре - слишком общие слова, чтобы за это можно было плюсануть. Зато минусануть есть за что. Хотя бы за "местную публику" и претензии на создание идеального языка опять же (без единого примера). То есть разные корпорации, сообщества и энтузиасты десятками лет развивают языки, и не могут сделать ничего идеального, максимум, что-то лучше другого в какой-то сфере и на чей-то вкус. А вы один, аки Геракл претендуете на то, что не смогла сделать уйма людей. Вы бы привели примеры конструкций (хотя бы здесь, а не на Хабре), чтобы это можно было обсудить. Возможно, вы предложите скачать код с гитхаба, но для этого нужно заинтересовать, а вы, извините, пока даже этого не сделали. Корпорации заинтересованы только в извлечении прибыли. А вот почему сообщество толчется вокруг стандарта 1995 года мне не понятно. Языки развивают не одни Гераклы. Если у вас есть идеи по развитию языка, изложите их, если нет то не пиняйте тем у кого они есть. Почему уйма людей ничего не придумала хорошего я не знаю. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.11.2019, 12:54 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
Блок А.Н. А, ну впрочем, в комментариях на Хабре все написали. Что-то я их сразу не увидел. На Хабре не обсуждение, а обыкновенная травля. За комментарий на техническом форуме в стиле <Выглядит весьма ужасно.> плюсуют эмоциональное конечно заявление только только бессмысленное, а на все мои ответы по существу минусуют. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.11.2019, 12:59 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
misha_shar, вы в своем языке что оставили от MUMPS? Зачем вы там добавили точку с запятой в конце команды? У вас в репозитории просто какая то каша из исходников на разных языках, и найти там код на вашем придуманном mumps еще не так то просто. Readme вообще нет, вы можете это запустить и показать что оно работает? Напишите в readme как это сделать. Если ваш код рабочий, его кто-то кроме вас должен уметь запустить. Вы с питона слизали вложенность по отступам? Зачем, кто вам спасибо скажет, вы думаете питонистам нравится такой подход? Код: sql 1.
Эта команда не будет понятна ни MUMPSистам, ни любому кто знает хоть один язык, что это вообще? Ладно, многие понимают что MUMPS, ObjectScript нужно развивать, но превращать его в нечто еще менее читаемое, это плохая идея. Код: sql 1. 2. 3. 4. 5.
что это вообще? что тут происходит? мало того у вас вложенность через отступы, так вы зачем то еще End команды ввели. Которые почему то тоже с отступом. А как вы это редактируете, у вас уже есть редактор который поможет будущим разработчикам. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.11.2019, 13:38 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
И не надо всем писать что у вас есть документация. Если ее нельзя прочитать онлайн, ее у вас нет. Я не буду качать ваши odt файлы, и мало кто будет. Опишите все в markdown в виде файлов в том же репозитории, с ссылками из readme. Или в wiki репозитория, это можно сделать. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.11.2019, 13:43 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
Определитесь, хотя бы для себя, для кого вы пишите этот проект, если только для себя, то нет смысла даже статьи писать, делайте и делайте, если очень уж хочется. Если вы хотите чтобы MUMPS разработчики вас оценили, и перешли на ваш продукт. То скажите зачем им это надо и как они смогут перевести их десятилетиями разрабатываемые проекты на ваш MSH. АИР уже много лет работали на Caché, смогли перейти на GT.M а к вам они смогут? Если ваша целевая аудитория другие, то зачем им это надо, когда у них уже есть Python, NodeJS, и прочие. + PostgreSQL, Mongo и прочие. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.11.2019, 13:49 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
misha_shar Корпорации заинтересованы только в извлечении прибыли. А вот почему сообщество толчется вокруг стандарта 1995 года мне не понятно. Языки развивают не одни Гераклы. Если у вас есть идеи по развитию языка, изложите их, если нет то не пиняйте тем у кого они есть. Почему уйма людей ничего не придумала хорошего я не знаю. Плюс имейте в виду, что язык - это не только синтаксис. Это инфраструктура, библиотеки, компиляторы, документация, поддержка. Сообщество в конце концов. Человек, который захочет писать на вашем языке, тратит на переобучение свои силы. И либо вход должен быть очень легким, либо плюсы должны быть колоссальными. И опыт, полученный в ходе разработки на вашем языке, должен монетизироваться. А вы мало того, что этого ничего не сделали, и, похоже, не понимаете, еще и стали в позицию Д'Артаньяна, вокруг которого одни негодяи. И чего вы хотите? Если этот проект для вашего личного развития - честь вам и хвала, это очень круто. Но выглядит так, как будто вы хотите, чтобы на нем писал кто-то еще. И при этот замечания тех людей, которым вы предлагаете использовать ваш язык, вы воспринимаете как травлю и вопросы не по существу. Ну правда, чего вы хотите? Если быть молодцом в своих глазах, то не нужно даже пытаться что-то кому-то показать, а если все-таки, что-то доказать, то стоит учесть претензии. И еще вопрос: какие языки вы знаете, если считаете M может претендовать на образец? Мне даже интересно, какие языки проиграли в этой неравной схватке. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.11.2019, 17:19 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
DAiMor misha_shar, вы в своем языке что оставили от MUMPS? Зачем вы там добавили точку с запятой в конце команды? У вас в репозитории просто какая то каша из исходников на разных языках, и найти там код на вашем придуманном mumps еще не так то просто. Readme вообще нет, вы можете это запустить и показать что оно работает? Напишите в readme как это сделать. Если ваш код рабочий, его кто-то кроме вас должен уметь запустить. Вы с питона слизали вложенность по отступам? Зачем, кто вам спасибо скажет, вы думаете питонистам нравится такой подход? Код: sql 1.
Эта команда не будет понятна ни MUMPSистам, ни любому кто знает хоть один язык, что это вообще? Ладно, многие понимают что MUMPS, ObjectScript нужно развивать, но превращать его в нечто еще менее читаемое, это плохая идея. Код: sql 1. 2. 3. 4. 5.
что это вообще? что тут происходит? мало того у вас вложенность через отступы, так вы зачем то еще End команды ввели. Которые почему то тоже с отступом. А как вы это редактируете, у вас уже есть редактор который поможет будущим разработчикам. <вы в своем языке что оставили от MUMPS? Зачем вы там добавили точку с запятой в конце команды? > От MUMPS я оставил идеологию. Точку с запятой в конце команды я добавил, чтобы отвязаться от количества пробелов и переводов строки. Пробел обязателен только после команды, а в остальных местах количество пробелов не регламентировано. <У вас в репозитории просто какая то каша из исходников на разных языках, и найти там код на вашем придуманном mumps еще не так то просто. Readme вообще нет, вы можете это запустить и показать что оно работает? Напишите в readme как это сделать. Если ваш код рабочий, его кто-то кроме вас должен уметь запустить. > Попробуйте прочитать всю документацию. Там описано как запустить пример. И он даже запускается. <Вы с питона слизали вложенность по отступам? Зачем, кто вам спасибо скажет, вы думаете питонистам нравится такой подход?> Отступы не регламентированы, как хотите так пишите. К Питону это никакого отношения не имеет. < Код: sql 1.
Эта команда не будет понятна ни MUMPSистам, ни любому кто знает хоть один язык, что это вообще? Ладно, многие понимают что MUMPS, ObjectScript нужно развивать, но превращать его в нечто еще менее читаемое, это плохая идея. Код: sql 1. 2. 3. 4. 5.
что это вообще? что тут происходит? мало того у вас вложенность через отступы, так вы зачем то еще End команды ввели. Которые почему то тоже с отступом. > В MSH в отличии от MUMPS количество команд которые порождают блок выполнения увеличено. Команда End это конец блока. Блочные команды являются началом блока, команда End является его концом. Команда If является блочной командой и все что до End будет выполнено внутри этого блока. Команда Next это итератор по одному уровню он тоже порождает блок. Внутри этого блока будут доступны вершины узла 1го аргумента команды Next во 2м аргументе будет индекс вершины, в 3м данные. Смысл команды Break я думаю пояснять не надо. <А как вы это редактируете, у вас уже есть редактор который поможет будущим разработчикам.> А вот редактора пока у меня к огромному моему сожалению нет. Но вы то должны понимать какого объема эта работа. <Ладно, многие понимают что MUMPS, ObjectScript нужно развивать, но превращать его в нечто еще менее читаемое, это плохая идея.> Читаемость приходит вместе с пониманием. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.11.2019, 06:10 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
DAiMor Определитесь, хотя бы для себя, для кого вы пишите этот проект, если только для себя, то нет смысла даже статьи писать, делайте и делайте, если очень уж хочется. Если вы хотите чтобы MUMPS разработчики вас оценили, и перешли на ваш продукт. То скажите зачем им это надо и как они смогут перевести их десятилетиями разрабатываемые проекты на ваш MSH. АИР уже много лет работали на Caché, смогли перейти на GT.M а к вам они смогут? Если ваша целевая аудитория другие, то зачем им это надо, когда у них уже есть Python, NodeJS, и прочие. + PostgreSQL, Mongo и прочие. Дима жизнь завтра не заканчивается. Работает все на Cache, пусть работает. Переводить совсем не обязательно, тем более совместимость систем довольно условная. Но может быть для новых проектов язык может понадобиться. Моя целевая аудитория и другие, я мечтаю что все выкинут всякие Питоны и начнут писать на MSH. Расширение целевой аудитории и является моей сверх задачей. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.11.2019, 06:18 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
Блок А.Н. misha_shar Корпорации заинтересованы только в извлечении прибыли. А вот почему сообщество толчется вокруг стандарта 1995 года мне не понятно. Языки развивают не одни Гераклы. Если у вас есть идеи по развитию языка, изложите их, если нет то не пиняйте тем у кого они есть. Почему уйма людей ничего не придумала хорошего я не знаю. Плюс имейте в виду, что язык - это не только синтаксис. Это инфраструктура, библиотеки, компиляторы, документация, поддержка. Сообщество в конце концов. Человек, который захочет писать на вашем языке, тратит на переобучение свои силы. И либо вход должен быть очень легким, либо плюсы должны быть колоссальными. И опыт, полученный в ходе разработки на вашем языке, должен монетизироваться. А вы мало того, что этого ничего не сделали, и, похоже, не понимаете, еще и стали в позицию Д'Артаньяна, вокруг которого одни негодяи. И чего вы хотите? Если этот проект для вашего личного развития - честь вам и хвала, это очень круто. Но выглядит так, как будто вы хотите, чтобы на нем писал кто-то еще. И при этот замечания тех людей, которым вы предлагаете использовать ваш язык, вы воспринимаете как травлю и вопросы не по существу. Ну правда, чего вы хотите? Если быть молодцом в своих глазах, то не нужно даже пытаться что-то кому-то показать, а если все-таки, что-то доказать, то стоит учесть претензии. И еще вопрос: какие языки вы знаете, если считаете M может претендовать на образец? Мне даже интересно, какие языки проиграли в этой неравной схватке. Вы абсолютно правы. Все о чем вы пишите обязательно необходимо. Я этим и занимаюсь. Только мои ресурсы ограничены и все для вас выложить на блюдечке с голубой каемочкой я не успеваю. И все для того чтобы вы могли получать прибыль. При таком подходе прощайте. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.11.2019, 06:23 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
misha_shar Читаемость приходит вместе с пониманием. Эта пять! ... |
|||
:
Нравится:
Не нравится:
|
|||
25.11.2019, 07:39 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
misha_shar Только мои ресурсы ограничены и все для вас выложить на блюдечке с голубой каемочкой я не успеваю. И все для того чтобы вы могли получать прибыль. При таком подходе прощайте. У нас есть такие приборы! Но мы вам про них не расскажем... (с) группа "Ноль", из песни "Аквалангисты" Я до верхних фраз ТСа и комментировать ничего не хотел... Ну написал что-то чел и написал... Но это точно не MUMPS уже по определению, т.к. программа со стандартным синтаксисом уже будет не рабочая. misha_shar , тебя спросили вполне конкретно DAiMor Вы с питона слизали вложенность по отступам? Зачем, кто вам спасибо скажет, вы думаете питонистам нравится такой подход? Код: sql 1.
Эта команда не будет понятна ни MUMPSистам, ни любому кто знает хоть один язык, что это вообще? Ладно, многие понимают что MUMPS, ObjectScript нужно развивать, но превращать его в нечто еще менее читаемое, это плохая идея. Код: sql 1. 2. 3. 4. 5.
что это вообще? что тут происходит? мало того у вас вложенность через отступы, так вы зачем то еще End команды ввели. Которые почему то тоже с отступом. В ответ только слова "обиженного гения"... Если пишешь "для себя" - так и пиши тихонечко в уголке... А другим нужно именно все на тарелочке и с голубой каемочкой. Да и то могут не взять по к.л. причинам... Это вроде как аксиома. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.11.2019, 07:51 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
krvsa, <В ответ только слова "обиженного гения"...> Я ж вроде все разъяснения по поводу этого синтаксиса дал. Комментарий не понял. Конкретно приведи слова обиженного гения. <Но это точно не MUMPS уже по определению, т.к. программа со стандартным синтаксисом уже будет не рабочая.> Конечно не MUMPS с его стандартным синтаксисом. Это новый язык на идеях и с возможностями MUMPS. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.11.2019, 08:37 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
krvsa, <Если пишешь "для себя" - так и пиши тихонечко в уголке... > Интернет вроде свободный ресурс. Если ты администратор, то закрой эту тему. Если нет то у тебя такой возможности нет. И по моему ты еще не партийный комитет, что бы других учить жить. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.11.2019, 08:53 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
misha_shar, Про документацию вам я уже написал, никто не будет скачивать ваши файлы odt, предполагая что там что-то есть. Вы решили заявить о себе миру, сделайте это правильно, а не так как сами считаете нужным, вы выложили свой продукт, считая что он готов к публикации, но это не так. На все вопросы вы только огрызаетесь, обвиняя всех, что они вас не правильно понимают. На хабре сообщество профессиональное работающее на разных языках. Вам по существу задают вопросы а вы на них не отвечаете. Вы хотите заменить своим языком, язык который стремительно набирает популярность в мире и на котором пишут намного больше разработчиков чем людей знающих что такое MUMPS. При этом вы напрочь игнорируете все вопросы и советы. Далеко ли вы уйдете с таким вашим подходом непризнанного гения? Здесь вам задают вопросы люди знакомые с MUMPS откуда как вы утверждаете черпаете идеологию. И опять вы огрызаетесь. PS. А тему я могу и закрыть, но пока надеюсь на ваше благоразумие. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.11.2019, 09:23 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
misha_shar Я ж вроде все разъяснения по поводу этого синтаксиса дал. Разве, что про точку с запятой... misha_shar Конечно не MUMPS с его стандартным синтаксисом. Просто не MUMPS и все. Т.е. даже не для этого раздела совсем. Если только для этого https://www.sql.ru/forum/nosql-bigdata ... |
|||
:
Нравится:
Не нравится:
|
|||
25.11.2019, 09:55 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
misha_shar Конкретно приведи слова обиженного гения. Просто перечитай свои ответы другим форумчанам... ;) ... |
|||
:
Нравится:
Не нравится:
|
|||
25.11.2019, 09:56 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
misha_shar Интернет вроде свободный ресурс. Бумага все стерпит... (с) Это - да. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.11.2019, 09:57 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
Из интересного сразу заметно: Команда Constant при трансляции объявляет наличие имен как констант и отводит им значения. Такой легкий аналог препроцессора без самого препроцессора (решает проблему отсутствия препроцессора и единого поля согласованных констант). По адресу https://github.com/SharMisha/MSH/blob/master/src/mshClnt/msh/byxUsr/byxUsrUI есть код Код: plaintext 1. 2.
Код: plaintext 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
25.11.2019, 13:14 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
misha_shar А вот почему сообщество толчется вокруг стандарта 1995 года мне не понятно. Языки развивают не одни Гераклы. Если у вас есть идеи по развитию языка, изложите их, если нет то не пиняйте тем у кого они есть. Почему уйма людей ничего не придумала хорошего я не знаю. Ну так уж уйма людей и не придумала ничего с 95-го... Те же $list, $increment, $bit придумали, ввели и используют, и не только в Cache. А объекты в Cache или тот же фигурный синтаксис? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.11.2019, 13:23 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
ну я, < Из интересного сразу заметно: Команда Constant при трансляции объявляет наличие имен как констант и отводит им значения. Такой легкий аналог препроцессора без самого препроцессора (решает проблему отсутствия препроцессора и единого поля согласованных констант). > Это не все. Введены объекты. Массив данных $ позволяет осуществлять очень быстрый доступ к промежуточным переменным. Команда CASE, Итераторы Next, Back, Query. Убрана команда Quit, Вместо нее добавлены 2 команды Break и Return. Добавлена обработка событий Event. Заменена библиотека системных переменных, функций и методов. Ну в основном все. Остальное по мелочам. < По адресу https://github.com/SharMisha/MSH/blob/master/src/mshClnt/msh/byxUsr/byxUsrUI есть код //получить с сервера список документов заданного типа Set B$1=CnetcomGet_dkL_CsysfrInd_byxSrvDkList; Этот код сам исполняется не на сервере, а еще где-то? > Весь кон находящийся в каталоге src/mshClnt исполняется на клиенте. Код находящийся в каталоге src/msh/Srv исполняется на сервере. < //-Главное окно приложения Do %winNew(CwinTypeWinMain,mn); Вот эти вот %winNew, %winSetAtr, %winSetAtr - это про графические окна или консольные, и где код исполняется? > Это графические окна. Эти команды вызывают API функции GTK3. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.11.2019, 15:25 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
ну я, < Ну так уж уйма людей и не придумала ничего с 95-го... Те же $list, $increment, $bit придумали, ввели и используют, и не только в Cache. > Это не принципиальные изменения. < А объекты в Cache или тот же фигурный синтаксис? > Лучше бы они этого не делали. Сломали всю идеологию MUMPS. Видимость переменных в procedure вообще выполнена не корректно. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.11.2019, 15:29 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
ну я, и где код исполняется? Код исполняется на клиенте. На клиенте стоит полнофункциональная система MSH. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.11.2019, 15:39 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
misha_shar Сломали всю идеологию MUMPS. Ну в этом и тебя упрекаем... misha_shar Видимость переменных в procedure вообще выполнена не корректно. Пример привести можешь? Поскольку та видимость кагбэ расширена... Можно использовать классический вариант... А можно "новомодний"... Т.ч. в чем именно "не корректно"? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.11.2019, 15:48 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
krvsa, В процедуре в команде Xecute видимы ли локальные переменные? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.11.2019, 16:28 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
misha_shar krvsa, В процедуре в команде Xecute видимы ли локальные переменные? Код: sql 1. 2. 3. 4. 5.
Код: plaintext 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
25.11.2019, 17:15 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
DAiMor, Кто бы мог подумать, что var надо объявлять внешней переменной. В стандарте Xececute видит все локальные переменные. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.11.2019, 17:24 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
misha_shar Код: sql 1.
Эта команда не будет понятна ни MUMPSистам, ни любому кто знает хоть один язык, что это вообще? If - это условие. И ? - это условие. Зачем If и ? идут рядом? В этом какой-то тайный смысл? $ - это какой-то оператор или часть имени переменной? Если часть переменной, то зачем? Не хватило букв и цифр? Если оператор, то какой? misha_shar Это не принципиальные изменения. misha_shar Сломали всю идеологию MUMPS. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.11.2019, 23:12 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
Блок А.Н., < Нет, не понятна. If - это условие. И ? - это условие. Зачем If и ? идут рядом? В этом какой-то тайный смысл? > команда If это начало блока if , а то что следует за знаком ? это условие выполнения данного блока. У этой команды нет аргументов. Кстати условие выполнения этого блока может отсутствовать, как и в любой другой команде. Тогда это просто блок выполнения, который будет выполняться всегда. < $ - это какой-то оператор или часть имени переменной? Если часть переменной, то зачем? Не хватило букв и цифр? Если оператор, то какой? > Это префикс массива. за ним идет индекс массива. Так как массив одномерный ему не обязательна закрывающаяся скобка, достаточно открывающейся, в качестве нее и используется $. Например классический вид обращения к массиву A(10) в нотации MSH выглядит как A$10. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.11.2019, 05:23 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
Блок А.Н., < А в чем ваши принципиальные изменения? Мне так и непонятно. Ну другой синтаксис, менее читаемый. В парадигме вы все-таки придерживаетесь М, так что новых возможностей я не жду. Что даст нам ваш язык? COS дал нам интегрированный SQL и объекты, а что предлагаете вы? > По этому поводу специально написал статью на habr Особенности и отличия языка программирования MSH от MUMPS https://habr.com/ru/post/280938/ ... |
|||
:
Нравится:
Не нравится:
|
|||
26.11.2019, 06:19 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
misha_shar Кто бы мог подумать, что var надо объявлять внешней переменной. В стандарте Xececute видит все локальные переменные. Это т.с. в новом "расширенном" варианте... Мы используем "стандартный" М-синтаксис - у нас все работает стандартно. Т.о. вся эта "новомодняя" видимость является неким расширением возможностей. Но не обязательна к применению. И никакой не корректности тут нет. Как написано в доке - так и работает. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.11.2019, 07:23 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
misha_shar команда If это начало блока if , а то что следует за знаком ? это условие выполнения данного блока. ... Это префикс массива. за ним идет индекс массива. Так как массив одномерный ему не обязательна закрывающаяся скобка, достаточно открывающейся, в качестве нее и используется $. Например классический вид обращения к массиву A(10) в нотации MSH выглядит как A$10. Неее... Я все... ... |
|||
:
Нравится:
Не нравится:
|
|||
26.11.2019, 07:31 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
misha_shar По этому поводу специально написал статью на habr Особенности и отличия языка программирования MSH от MUMPS https://habr.com/ru/post/280938/ Там у вас сплошной текст, вообще никак не отформатированный, код прям в тексте, читать это совершенно невозможно. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.11.2019, 09:58 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
DAiMor PS. А тему я могу и закрыть, но пока надеюсь на ваше благоразумие. Во-первых, человек имеет право высказать свое мнение и тематика этой ветки не противоречит тематике раздела (если совсем уж не придираться, конечно). Во-вторых, нас тут так мало, что лишняя тема как-то поднимет активность форума. В-третьих, и самое главное, где как не здесь человек может получить критику своих идей? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.11.2019, 14:14 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
misha_shar Блок А.Н., < Нет, не понятна. If - это условие. И ? - это условие. Зачем If и ? идут рядом? В этом какой-то тайный смысл? > команда If это начало блока if , а то что следует за знаком ? это условие выполнения данного блока. У этой команды нет аргументов. Кстати условие выполнения этого блока может отсутствовать, как и в любой другой команде. Тогда это просто блок выполнения, который будет выполняться всегда. < $ - это какой-то оператор или часть имени переменной? Если часть переменной, то зачем? Не хватило букв и цифр? Если оператор, то какой? > Это префикс массива. за ним идет индекс массива. Так как массив одномерный ему не обязательна закрывающаяся скобка, достаточно открывающейся, в качестве нее и используется $. Например классический вид обращения к массиву A(10) в нотации MSH выглядит как A$10. if - это начало любого блока? А если блок, допустим, for? зачем использовать сбивающий с толку синтаксис, если повсеместно с ним ассоциирована другая семантика? Ну ок, if - блок, а ? - условие. А почему условие внутри блока? Зачем вы придумали другой синтаксис обращения к массиву? Чем вас не устраивали общепринятые () или []? Почему тогда для сравнения используете общепринятые ==? Ну используйте # или !, еще оригинальней будет. Из статьи на хабре все еще не понял, чем ваш язык лучше. Поймите, что язык силен заложенными в него возможностями и использованными парадигмами, а не тем, что вы [] заменили на $. Сделайте пример кода на своем языке, потом это же на M и на COS. И попробуйте показать, чем ваш язык лучше. И еще отдельная просьба - можете вы цитировать общепринятым способом, с помощью quote или >>. Или у вас навязчивая идея придумывать свой синтаксис везде, где только можно? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.11.2019, 14:27 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
Блок А.Н. где как не здесь человек может получить критику своих идей? Если она ему нужна... ... |
|||
:
Нравится:
Не нравится:
|
|||
26.11.2019, 15:10 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
Блок А.Н. А почему условие внутри блока? Да еще и в скобках... Автор, вроде как, "уходил" от пробелов... Но наделал кучу лишних символов. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.11.2019, 15:12 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
[quot Блок А.Н.#22025672] misha_shar Блок А.Н., Честно говоря, не особо то яснее стало. if - это начало любого блока? А если блок, допустим, for? зачем использовать сбивающий с толку синтаксис, если повсеместно с ним ассоциирована другая семантика? Ну ок, if - блок, а ? - условие. А почему условие внутри блока? В MSH есть команда, и есть условие ее выполнения. Сама команда никакое условие выполнения не содержит. В MUMPS принята такая идеология. Но команда if в MUMPS в качестве аргумента имеет условие выполнения команд находящихся за ней. Поэтому в MUMPS команда if не содержит условие выполнения этой команды. В этом есть логическое противоречие. Если отказаться от аргументов в команде if, то ее можно привести к стандартному для остальных команд виду. Условие выполнения команды if выполняет роль аргумента, сама команда аргументов не содержит. В MSH ряд команд образуют блоки. Любой блок заканчивается командой End; Все , что внутри относится к данному блоку. Блоки разные. В команде if в случае если условие выполнено то выполняется дальше весь блок, иначе блок не выполняется. Это же касается команды Else. Команда While также образует блок. Выполнение блока продолжается до тех пор пока условие в команде истинно. Итераторы Next , Back и Query выполняются пока их условие верно и не закончится обход заданного узла. Команда Case почти классика из Паскаля. Зачем вы придумали другой синтаксис обращения к массиву? Чем вас не устраивали общепринятые () или []? Почему тогда для сравнения используете общепринятые ==? Ну используйте # или !, еще оригинальней будет. Дело вообще не в оригинальности. У меня просто тупо кончились скобки. Все они оказались задействованы в других конструкциях. Все это от бедности клавиатуры. Из статьи на хабре все еще не понял, чем ваш язык лучше. Поймите, что язык силен заложенными в него возможностями и использованными парадигмами, а не тем, что вы [] заменили на $. Сделайте пример кода на своем языке, потом это же на M и на COS. И попробуйте показать, чем ваш язык лучше. Я только этим и занимаюсь. Замена [] на $ не принципиальна, но это вынужденная мера. Новые возможности Это команды Итераторы, команда Case это объекты, это обработка событий. Сравнить языки может любой, для этого надо иметь только спецификацию языка. В трудозатратную рекламную компанию я ввязываться не готов. Слишком много еще надо сделать. Приходится сосредоточиться на первостепенных задачах. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.11.2019, 15:51 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
Вы решили распространить предусловие команды на предусловие блока. Ок, хорошо. Тогда if вам, получается, вообще не нужен. Делайте begin?(условия) ... end; А то в вашем синтаксисе if без условия означает просто блок. И это, мягко говоря, странно. Ну ладно, пусть каждая команда образует блок, который нужно завершать end. if ... end, for ... end, или for begin ...end? У вас end завершает блок, начатый begin? или вот вообще любой? В коде будет море end-ов непонятно от чего. А как у вас будет строиться команды if else if else? end будет только в конце? Я ни при каких раскладах не нахожу это привлекательным. Извините. Я даже попытался хоть в каком-то варианте найти что-то интересное, но у меня не получилось. >Дело вообще не в оригинальности. У меня просто тупо кончились скобки Может быть, скобки все-таки оставить массивам, а всякие другие знаки дать новым операциям? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.11.2019, 22:57 |
|
Реализация интерпретатора MSH.
|
|||
---|---|---|---|
#18+
Блок А.Н. Вы решили распространить предусловие команды на предусловие блока. Ок, хорошо. Тогда if вам, получается, вообще не нужен. Делайте begin?(условия) ... end; А то в вашем синтаксисе if без условия означает просто блок. И это, мягко говоря, странно. Ну ладно, пусть каждая команда образует блок, который нужно завершать end. if ... end, for ... end, или for begin ...end? У вас end завершает блок, начатый begin? или вот вообще любой? В коде будет море end-ов непонятно от чего. А как у вас будет строиться команды if else if else? end будет только в конце? Конечно if это не просто блок. Это блок if внутри у этого блока могут быть команды else как с условиями выполнения, так и без. else без условия естественно должно быть последней. Если условие команды if верно то выполняются команды либо до следующей команды else, либо до команды end, это же справедливо для других команд else. Команды begin нет, она не нужна. Блочные команды и являются началом блока. Блок образуют только некоторые команды они в документации описаны ка блочные. Например: if, case, while, next, query... Я ни при каких раскладах не нахожу это привлекательным. Извините. Я даже попытался хоть в каком-то варианте найти что-то интересное, но у меня не получилось. Привлекательность комментировать не могу. В качестве блочных команд выбраны те которые чаще всего и используются вместе с блоком. Только блок потерял заголовок begin как не нужный, зато пришлось сделать эти команды блочными всегда. >Дело вообще не в оригинальности. У меня просто тупо кончились скобки Может быть, скобки все-таки оставить массивам, а всякие другие знаки дать новым операциям? Скобки закончились в традиционных применениях, в индексах, аргументах функциях и списках, где без них не обойтись. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.11.2019, 06:40 |
|
|
start [/forum/topic.php?all=1&fid=39&tid=1556161]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
52ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
65ms |
get tp. blocked users: |
1ms |
others: | 278ms |
total: | 440ms |
0 / 0 |