Гость
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Ого! InterSystems joins the open source ObjectScript for VS Code effort / 25 сообщений из 31, страница 1 из 2
08.05.2020, 11:16
    #39955211
alatalo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ого! InterSystems joins the open source ObjectScript for VS Code effort
Похоже тут кое-кого можно поздравить с крупным достижением :)
Круто, поздравляю!
Ателье похоже помер реально не родившись.
...
Рейтинг: 0 / 0
08.05.2020, 11:51
    #39955218
DAiMor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ого! InterSystems joins the open source ObjectScript for VS Code effort
alatalo,

Спасибо
У Atelier действительно не особо было много шансов, но нужно отдать ему должное, благодаря ему работает сейчас VSCode-ObjectScript. Так что не совсем зря, и часть его живет.
...
Рейтинг: 0 / 0
08.05.2020, 12:54
    #39955248
alatalo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ого! InterSystems joins the open source ObjectScript for VS Code effort
Я правда не устаю повторять, что подсветка синтаксиса и прочие помошники, это конечно здорово, но пока в Каше не завезут что-то приличное в дополнение к ObjectScript, для себя существенного прогресса я не вижу. Приличное для меня, это что-то со статической типизацией, для того, чтобы можно было сделать реальный рефакторинг, такой, какой он есть например в c# или java: написать один раз что-то на ObjectScript можно, но попробуй без боли что-то просто переименовать. Не говоря уже о серьезных переделках. Пишу пол дня на c# и пол дня на ObjectScript: это как переход в каменный век и обратно.
...
Рейтинг: 0 / 0
08.05.2020, 13:04
    #39955257
DAiMor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ого! InterSystems joins the open source ObjectScript for VS Code effort
Я конечно понимаю, что статическая типизация может помогать, но не совсем понимаю причем тут рефакторинг.

Так как сделать рефакторинг как таковой есть в планах, хотелось бы получить больше понимания, как это хочется видеть? Поначалу, конечно нужно сделать относительно простой вариант, возможность просто менять имена переменным, методам, свойствам, классам.
...
Рейтинг: 0 / 0
08.05.2020, 17:39
    #39955414
Sheonn
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ого! InterSystems joins the open source ObjectScript for VS Code effort
Дело в том, что при динамической типизации как раз и не получится "просто" поменять имена методам, свойствам и классам, невозможно будет найти все места, где они используются.
А если ещё учесть возможности выполнения произвольной текстовой строки и всякие функции вроде $property, то совсем всё плохо становится.
С именами локальных переменных несколько проще. Но если вспомнить, что переменные могут иметь глобальную область видимости, то опять становится грустно.
Плюс ещё дикая смесь разных надстроек одного над другим. Одни CSP чего стоят, что сама Intersystems от них открещивается, а добавьте туда ещё CSR.

Сколько уж нам обещали отдать грамматики хотя бы, но нет. Сейчас опять что-то пообещали, но что неизвестно.
Во времена разработки Atelier уже существовал протокол для языкового сервера, который можно было использовать и в эклипсе и в VSCode. Могли хотя бы сейчас взять наработки Atelier и сделать языковой сервер, чтобы каждый мог использовать его в своих решениях.
Нормального api для развёртывания через CI тоже нет. Попробуйте большой проект скомпилировать через API Atelier и словите таймаут.
...
Рейтинг: 0 / 0
09.05.2020, 13:47
    #39955543
DAiMor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ого! InterSystems joins the open source ObjectScript for VS Code effort
Sheonn
Дело в том, что при динамической типизации как раз и не получится "просто" поменять имена методам, свойствам и классам, невозможно будет найти все места, где они используются.
А если ещё учесть возможности выполнения произвольной текстовой строки и всякие функции вроде $property, то совсем всё плохо становится.
С именами локальных переменных несколько проще. Но если вспомнить, что переменные могут иметь глобальную область видимости, то опять становится грустно.
Плюс ещё дикая смесь разных надстроек одного над другим. Одни CSP чего стоят, что сама Intersystems от них открещивается, а добавьте туда ещё CSR.
Да, действительно тут набегает довольно много подводных камней в этом плане. Наверно что-то можно будет решить в процессе, хотя сделать совсем хорошо займет много сил и времени. Но тут главное, чтобы эти усилия имели смысл, чтобы этим в дальнейшем пользовались.
Тут вероятно еще может помочь синтаксический анализатор, который уже есть, но его еще надо развивать.

Sheonn
Сколько уж нам обещали отдать грамматики хотя бы, но нет. Сейчас опять что-то пообещали, но что неизвестно.
Грамматику не помню, чтобы кто-то обещал отдать. Про исходники Atelier, было дело, но кому они теперь сейчас нужны, смысла от них теперь мало.

Sheonn
Нормального api для развёртывания через CI тоже нет. Попробуйте большой проект скомпилировать через API Atelier и словите таймаут.
Не совсем понятно, какой API нужен, и зачем тут использовать API Atelier. API Atelier подходит для использования в редакторе. Но сборка проекта это уже другая тема, и например %Installer уже давно был и есть, и им можно собирать проекты. Есть теперь еще ZPM, которым можно собирать и свои проекты, а еще и распространять.
...
Рейтинг: 0 / 0
09.05.2020, 16:12
    #39955566
Sheonn
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ого! InterSystems joins the open source ObjectScript for VS Code effort
В тех же исходниках Atelier, насколько я понимаю, как раз есть парсер ObjectScript. Т.е. можно было бы взять этот парсер и сделать Language Server.
ZPM мало подходит для загрузки кода проекта из git-репозитория. У API Atelier в этом плане есть плюс, в виде единообразного способа загрузки кода, но минус в компиляции больших проектов, т.к. это обычный http запрос и у него есть таймаут.
Больше всего проблем доставляют CSP, очень много нюансов их загрузки и компиляции.
...
Рейтинг: 0 / 0
09.05.2020, 19:02
    #39955584
DAiMor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ого! InterSystems joins the open source ObjectScript for VS Code effort
Sheonn
В тех же исходниках Atelier, насколько я понимаю, как раз есть парсер ObjectScript. Т.е. можно было бы взять этот парсер и сделать Language Server.
Там парсер на Java, да и не завершен он.
Сейчас должна уже начаться работа над LanguageServer. Так что надеюсь скоро VSCode будет еще лучше.

Sheonn
ZPM мало подходит для загрузки кода проекта из git-репозитория.
Все равно не очень понятно, как тут вообще Atelier API может пригодиться, если ZPM не подходит. Если есть пожелания по развитию ZPM, тоже можно и мне писать, а лучше сюда .

Я уже много разных вариантов сборки проектов делал, разными способами, через разные CI, поэтому у меня можно спрашивать советов.
...
Рейтинг: 0 / 0
09.05.2020, 19:47
    #39955586
Sheonn
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ого! InterSystems joins the open source ObjectScript for VS Code effort
Не совсем точно наверное описал ситуацию.
Для разовой и первоначальной загрузки проекта ZPM наверное подойдёт, но вот для постоянных ежедневных, а то и по несколько раз в день, обновлений кодовой базы уже как-то странно выглядит. Тем более обновление всего проекта в продуктовой среде - фактически остановка его на какое-то время, что тоже очень плохо.
API Atelier - как минимум тот инструмент, который работает в системе из коробки, не нужно предварительно ничего устанавливать. Ещё плюс - это одинаковая работа в разных ОС. Те же терминалы работают по-разному и в контейнерах для windows это ограничивает возможности.
...
Рейтинг: 0 / 0
09.05.2020, 21:44
    #39955602
DAiMor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ого! InterSystems joins the open source ObjectScript for VS Code effort
Sheonn,

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

А чем стандартные $system.OBJ.Load/LoadDir/Import не подошли?
...
Рейтинг: 0 / 0
09.05.2020, 23:03
    #39955609
Sheonn
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ого! InterSystems joins the open source ObjectScript for VS Code effort
DAiMor

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

Мы как раз и обновляем только то, что изменилось. Я говорил про то, что ZPM такого функционала не даст.

DAiMor
А чем стандартные $system.OBJ.Load/LoadDir/Import не подошли?

А вот тут как раз и возникают проблемы и в первую очередь с CSP, через эти методы просто нельзя импортировать их как положено. Да, для CSP есть отдельные методы импорта, но сначала их нужно скопировать в каталог приложения, не забыв переконвертировать в CP1251, потому что в этих методах не посчитали нужным добавить параметр кодировки.
В общем основную боль вызывают конечно CSP, с ними всегда не просто, включая веб-приложения для них.

К тому же в Cache мы использовали cache.exe для выполнения COS, в IRIS эту возможность похоже убрали.
...
Рейтинг: 0 / 0
10.05.2020, 01:59
    #39955625
misha_shar
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ого! InterSystems joins the open source ObjectScript for VS Code effort
alatalo
Я правда не устаю повторять, что подсветка синтаксиса и прочие помошники, это конечно здорово, но пока в Каше не завезут что-то приличное в дополнение к ObjectScript, для себя существенного прогресса я не вижу. Приличное для меня, это что-то со статической типизацией, для того, чтобы можно было сделать реальный рефакторинг, такой, какой он есть например в c# или java: написать один раз что-то на ObjectScript можно, но попробуй без боли что-то просто переименовать. Не говоря уже о серьезных переделках. Пишу пол дня на c# и пол дня на ObjectScript: это как переход в каменный век и обратно.

У меня всегда противоположные чувства. Никогда не возникало необходимости переименовывать переменные. Что то у вас не так с проектированием. Писать на MUMPS как на C просто нельзя. В SQL ты же не переименовываешь таблицы.
...
Рейтинг: 0 / 0
10.05.2020, 07:18
    #39955629
Sheonn
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ого! InterSystems joins the open source ObjectScript for VS Code effort
misha_shar
У меня всегда противоположные чувства. Никогда не возникало необходимости переименовывать переменные. Что то у вас не так с проектированием. Писать на MUMPS как на C просто нельзя. В SQL ты же не переименовываешь таблицы.

Но это же не аргумент, если кто-то не использует этот функционал, то это не значит, что он не нужен в принципе.
Невозможно архитектуру продумать на несколько десятков лет вперёд, тем более, что сам ObjectScript менялся и подходы тоже.
...
Рейтинг: 0 / 0
10.05.2020, 09:51
    #39955638
DAiMor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ого! InterSystems joins the open source ObjectScript for VS Code effort
Sheonn
К тому же в Cache мы использовали cache.exe для выполнения COS, в IRIS эту возможность похоже убрали.
Интересно, а можно поподробнее, почему именно cache.exe? В IRIS помоему переименовали в irisdb.exe, и не думаю что это убрали там.

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

Код: sql
1.
set ^%SYS("CSP","DefaultFileCharset")="utf-8"
...
Рейтинг: 0 / 0
10.05.2020, 12:57
    #39955660
alatalo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ого! InterSystems joins the open source ObjectScript for VS Code effort
@misha_shar
С первого раза код написал и все 20 лет код можно не трогать? Круто.

misha_shar
Что то у вас не так с проектированием

И похоже не только у нас. JetBrains стал столь популярен со своим Resharper в первую очередедь из-за крутых возможностей исследования кода и его рефакторинга. Так что-то пока мы, быдло-кодеры, занимаемся ерундой, у вас больше шансов захватить мир.
...
Рейтинг: 0 / 0
10.05.2020, 13:18
    #39955666
alatalo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ого! InterSystems joins the open source ObjectScript for VS Code effort
Sheonn
К тому же в Cache мы использовали cache.exe для выполнения COS, в IRIS эту возможность похоже убрали.


В смысле какую возможность убрали?

Мы тоже на Cache и вяло подумываем а не попробовать ли на IRIS наш проект. Но нам по цене нет пока никакого смысла переезжать.
...
Рейтинг: 0 / 0
10.05.2020, 14:26
    #39955682
misha_shar
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ого! InterSystems joins the open source ObjectScript for VS Code effort
alatalo
@misha_shar
С первого раза код написал и все 20 лет код можно не трогать? Круто.

Один раз спроектировал основные деревья и 20 лет их не переименовываю. И не было такой необходимости. А локальные переменные тоже стараюсь локализовать в программе. Какое переименование?
alatalo
И похоже не только у нас. JetBrains стал столь популярен со своим Resharper в первую очередь из-за крутых возможностей исследования кода и его рефакторинга. Так что-то пока мы, быдло-кодеры, занимаемся ерундой, у вас больше шансов захватить мир.

Да я не против хорошего редактора кода, но такого традиционно в MUMPS системах не было. Может у разработчиков руки не доходили. Но в MUMPS особо отлаживать нечего. Я не помню что бы в форуме особо остро ставился вопрос по хорошему отладчику. Я так понимаю это не особенно актуально.
...
Рейтинг: 0 / 0
10.05.2020, 20:56
    #39955740
Sheonn
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ого! InterSystems joins the open source ObjectScript for VS Code effort
DAiMor
Интересно, а можно поподробнее, почему именно cache.exe? В IRIS помоему переименовали в irisdb.exe, и не думаю что это убрали там.
Да, через irisdb.exe работает.

DAiMor
Код: sql
1.
set ^%SYS("CSP","DefaultFileCharset")="utf-8"


Это тоже работает.
Спасибо за информацию.
Плохо что такую информацию очень сложно найти и опять же нет единообразия в подходах.
...
Рейтинг: 0 / 0
12.05.2020, 08:11
    #39956086
alatalo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ого! InterSystems joins the open source ObjectScript for VS Code effort
misha_shar
Один раз спроектировал основные деревья и 20 лет их не переименовываю

Мы похоже про очень разное. Деревья тут совершенно не при чем. Я про рефакторинг кода, переименования символов лишь самая простая его операция. Если интересно, то тут перечисленны возможности приличной стреды программирования. https://www.jetbrains.com/resharper/features/code_refactoring.html. Отладчик к рефакторингу кода никакого отношения не имеет, про него здесь вообще нет речи.
...
Рейтинг: 0 / 0
12.05.2020, 10:40
    #39956139
DAiMor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ого! InterSystems joins the open source ObjectScript for VS Code effort
alatalo
misha_shar
Один раз спроектировал основные деревья и 20 лет их не переименовываю

Мы похоже про очень разное. Деревья тут совершенно не при чем. Я про рефакторинг кода, переименования символов лишь самая простая его операция. Если интересно, то тут перечисленны возможности приличной стреды программирования. (подозрительная ссылка!) https://www.jetbrains.com/resharper/features/code_refactoring.html. Отладчик к рефакторингу кода никакого отношения не имеет, про него здесь вообще нет речи.
Спасибо за ссылку, там интересные примеры. И думаю когда мы доберемся до IntelliJ, можно будет сделать похожее с упором на особенности ObjectScript. В VSCode так как это не IDE а редактор попроще, с этим думаю чуть сложнее, но что нибудь думаю точно получится, в будущем сделать.
...
Рейтинг: 0 / 0
12.05.2020, 11:25
    #39956171
alatalo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ого! InterSystems joins the open source ObjectScript for VS Code effort
DAiMor,

мы как после С++ стали на С# писать, эпохи реально разделисиь на до-решарпера и после. Микрософт в большой Visual Studio пытается решарпер копировать, но далеко ему еще. А вот тут про робкие попытки решарпинга в Visual Studio Code: https://code.visualstudio.com/docs/editor/refactoring

Мне кажется без грандиозных несовместимых изменений в ObjectScript ничего путного не получится.
...
Рейтинг: 0 / 0
12.05.2020, 11:47
    #39956187
DAiMor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ого! InterSystems joins the open source ObjectScript for VS Code effort
alatalo
несовместимых изменений в ObjectScript
ObjectScriptNext
Но этим кто-то должен заниматься, придумать как его развить.
Насчет несовместимости, не уверен, что это хорошая идея. Может можно сделать через транспайлер.
...
Рейтинг: 0 / 0
12.05.2020, 14:01
    #39956279
Sheonn
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ого! InterSystems joins the open source ObjectScript for VS Code effort
Можно было бы сделать какой-нибудь строгий режим, чтобы внедрить статическую типизацию, убрать лишнее, упростить грамматику и т.д.
Тут бы конечно вместо embedded sql добавить в ObjectScript LINQ как в C#, чтобы всё через объекты делать.
...
Рейтинг: 0 / 0
12.05.2020, 14:50
    #39956317
Блок А.Н.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ого! InterSystems joins the open source ObjectScript for VS Code effort
Sheonn,

Вроде как в последней версии IRIS ESQL выполняется на том же движке, что и динамический, и не требует перекомпиляции программы при изменении структуры.
...
Рейтинг: 0 / 0
12.05.2020, 14:55
    #39956319
alatalo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ого! InterSystems joins the open source ObjectScript for VS Code effort
Sheonn
LINQ как в C#

ох соль на мои раны! Я уже примеривался махнуть рукой на этот ObjectScript и сделать серверную часть на с# с доступом к базе по Callin ( https://cedocs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY=BXCI_callin) но слишком много проблем возникает.
...
Рейтинг: 0 / 0
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Ого! InterSystems joins the open source ObjectScript for VS Code effort / 25 сообщений из 31, страница 1 из 2
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]