Лаконичный Lazarus/Pascal без многословия begin...end
От: gyraboo  
Дата: 11.08.20 14:57
Оценка:
Интересно, были ли попытки сделать Паскаль или Lazarus более лаконичным языком, убрав из него многословные операторы типа then, begin, end, interface, implementation, uses?
Lazarus — замечательный инструмент, но эта многословность языка иногда подбешивает.
Re: Лаконичный Lazarus/Pascal без многословия begin...end
От: AlexRK  
Дата: 11.08.20 15:51
Оценка: +1
Здравствуйте, gyraboo, Вы писали:

G>Интересно, были ли попытки сделать Паскаль или Lazarus более лаконичным языком, убрав из него многословные операторы типа then, begin, end, interface, implementation, uses?

G>Lazarus — замечательный инструмент, но эта многословность языка иногда подбешивает.

А зачем? Есть же другие языки, APL, например.
Re[2]: Лаконичный Lazarus/Pascal без многословия begin...end
От: gyraboo  
Дата: 11.08.20 16:10
Оценка:
Здравствуйте, AlexRK, Вы писали:

G>>Интересно, были ли попытки сделать Паскаль или Lazarus более лаконичным языком, убрав из него многословные операторы типа then, begin, end, interface, implementation, uses?

G>>Lazarus — замечательный инструмент, но эта многословность языка иногда подбешивает.

ARK>А зачем? Есть же другие языки, APL, например.


APL тоже имеет развитую IDE и UI API?
Re: Лаконичный Lazarus/Pascal без многословия begin...end
От: Jack128  
Дата: 11.08.20 16:36
Оценка: +7 :))
Здравствуйте, gyraboo, Вы писали:

G>Интересно, были ли попытки сделать Паскаль или Lazarus более лаконичным языком, убрав из него многословные операторы типа then, begin, end, interface, implementation, uses?

G>Lazarus — замечательный инструмент, но эта многословность языка иногда подбешивает.

Были. Заменили begin/end на фигурные скобки, еще кой какие улучшения, в результате получился C#
Re: Лаконичный Lazarus/Pascal без многословия begin...end
От: T4r4sB Россия  
Дата: 11.08.20 16:44
Оценка: +5 -3
Здравствуйте, gyraboo, Вы писали:

G>Интересно, были ли попытки сделать Паскаль или Lazarus более лаконичным языком, убрав из него многословные операторы типа then, begin, end, interface, implementation, uses?

G>Lazarus — замечательный инструмент, но эта многословность языка иногда подбешивает.

Буковки набирать долго плак-плак.
Это уровень даже не джуна Т_Т
Re[2]: Лаконичный Lazarus/Pascal без многословия begin...end
От: gyraboo  
Дата: 11.08.20 20:36
Оценка:
Здравствуйте, T4r4sB, Вы писали:

G>>Интересно, были ли попытки сделать Паскаль или Lazarus более лаконичным языком, убрав из него многословные операторы типа then, begin, end, interface, implementation, uses?

G>>Lazarus — замечательный инструмент, но эта многословность языка иногда подбешивает.

TB>Буковки набирать долго плак-плак.

TB>Это уровень даже не джуна Т_Т

Категоризация джун-мидл-сеньор — это вообще не про Паскаль, язык создавался, чтобы на нем и школьники могли писать. Но мысль у меня другая — раз Lazarus и его Паскаль — это опенсорс, причем с поддержкой ряда диалектов через директивы компилятора, почему не возник какой-нибудь диалект, также переключаемый директивой, где все эти слова заменены на более короткие аналоги, типа фигурных скобок вместо begin и end. Было бы очень интересно попробовать на таком языке писать.
Re[2]: Лаконичный Lazarus/Pascal без многословия begin...end
От: gyraboo  
Дата: 11.08.20 20:50
Оценка:
Здравствуйте, Jack128, Вы писали:

G>>Интересно, были ли попытки сделать Паскаль или Lazarus более лаконичным языком, убрав из него многословные операторы типа then, begin, end, interface, implementation, uses?

G>>Lazarus — замечательный инструмент, но эта многословность языка иногда подбешивает.

J>Были. Заменили begin/end на фигурные скобки, еще кой какие улучшения, в результате получился C#


Его беда, лично для меня, что нельзя компилировать в машинный код, поэтому нормальной защиты не навесишь на шаровару.
Re[3]: Лаконичный Lazarus/Pascal без многословия begin...end
От: Osaka  
Дата: 11.08.20 21:52
Оценка:
TB>>Буковки набирать долго плак-плак.
TB>>Это уровень даже не джуна Т_Т
G>почему не возник какой-нибудь диалект, также переключаемый директивой, где все эти слова заменены на более короткие аналоги, типа фигурных скобок вместо begin и end.
Почему-то в среде дельфистов все идеи повышения удобства разработчика принято подвергать осмеянию и отвержению не вникая.
Этакое сообщество суровых экстремалов, исповедующих принцип "в настоящей жизни всё должно быть трудно, а кто не хочет чтобы ему было трудно, тот сачок".
Re[3]: Лаконичный Lazarus/Pascal без многословия begin...end
От: AlexRK  
Дата: 12.08.20 08:31
Оценка:
Здравствуйте, gyraboo, Вы писали:

G>почему не возник какой-нибудь диалект, также переключаемый директивой, где все эти слова заменены на более короткие аналоги, типа фигурных скобок вместо begin и end.


Очевидно, потому, что такой диалект никому не нужен.
Кому нужны фигурные скобки — просто используют Ц.
Re[2]: Лаконичный Lazarus/Pascal без многословия begin...end
От: fmiracle  
Дата: 12.08.20 08:37
Оценка: +2
Здравствуйте, T4r4sB, Вы писали:

G>>Интересно, были ли попытки сделать Паскаль или Lazarus более лаконичным языком, убрав из него многословные операторы типа then, begin, end, interface, implementation, uses?

G>>Lazarus — замечательный инструмент, но эта многословность языка иногда подбешивает.
TB>Буковки набирать долго плак-плак.

Синтаксический оверхед
Автор: boomsic
Дата: 17.06.05
2.0
Re[4]: Лаконичный Lazarus/Pascal без многословия begin...end
От: rudzuk  
Дата: 12.08.20 09:14
Оценка: +1
Здравствуйте, Osaka, Вы писали:

O> Почему-то в среде дельфистов все идеи повышения удобства разработчика принято подвергать осмеянию и отвержению не вникая.


Только дурацкие идеи.

O> Этакое сообщество суровых экстремалов, исповедующих принцип "в настоящей жизни всё должно быть трудно, а кто не хочет чтобы ему было трудно, тот сачок".


Кому влом буковки печатать, для тех есть более лаконичные языки. Взять тот же C++Builder — и язык лаконичный, и среда развитая, со всеми прелестями Delphi RAD. Для не осиливших плюсы есть шарпы-жабы. Оставьте, блин, в покое Паскаль.
avalon/3.0.0
Re: Лаконичный Lazarus/Pascal без многословия begin...end
От: Pzz Россия https://github.com/alexpevzner
Дата: 12.08.20 20:35
Оценка:
Здравствуйте, gyraboo, Вы писали:

G>Интересно, были ли попытки сделать Паскаль или Lazarus более лаконичным языком, убрав из него многословные операторы типа then, begin, end, interface, implementation, uses?


Были. Сколько ни пробовали, все Си получался.
Re: Лаконичный Lazarus/Pascal без многословия begin...end
От: SergeyIT Россия  
Дата: 16.08.20 11:55
Оценка:
Здравствуйте, gyraboo, Вы писали:

G>Интересно, были ли попытки сделать Паскаль или Lazarus более лаконичным языком, убрав из него многословные операторы типа then, begin, end, interface, implementation, uses?

G>Lazarus — замечательный инструмент, но эта многословность языка иногда подбешивает.

Может проблема не в языке, а в вас? Может к психотерапевту надо?
Одно время (6 лет в одной фирме) программировал одновременно в Делфи и С++. Никаких проблем и неудобств не ощущал, при одновременном программировании в друх окнах на разных ЯП.
И сейчас также — периодически использую Лазарус (Pascal), QtCreator (C++) и просто текстовый редактор (обычно Си) — никаких эмоций не испытываю... ЧЯДНТ?
Мой путь по ЯП — Алгол, Фортран, Macro-11, C, C++, Pascal (немного Basic, objectPAL, SQL, php, java, некие скрипты — но уже все забыл)
Да, и я, вообще-то, не программист .
Извините, я все еще учусь
Re[2]: Лаконичный Lazarus/Pascal без многословия begin...end
От: gyraboo  
Дата: 16.08.20 12:35
Оценка:
Здравствуйте, SergeyIT, Вы писали:

G>>Интересно, были ли попытки сделать Паскаль или Lazarus более лаконичным языком, убрав из него многословные операторы типа then, begin, end, interface, implementation, uses?

G>>Lazarus — замечательный инструмент, но эта многословность языка иногда подбешивает.

SIT>Может проблема не в языке, а в вас? Может к психотерапевту надо?

SIT>Одно время (6 лет в одной фирме) программировал одновременно в Делфи и С++. Никаких проблем и неудобств не ощущал, при одновременном программировании в друх окнах на разных ЯП.
SIT>И сейчас также — периодически использую Лазарус (Pascal), QtCreator (C++) и просто текстовый редактор (обычно Си) — никаких эмоций не испытываю... ЧЯДНТ?
SIT>Мой путь по ЯП — Алгол, Фортран, Macro-11, C, C++, Pascal (немного Basic, objectPAL, SQL, php, java, некие скрипты — но уже все забыл)

SIT>Да, и я, вообще-то, не программист .

Может в этом всё и дело? Ведь когда целый день, неделя за неделей, пишешь begin/end, и понимаешь, что это в 4.5 раза многословнее, чем фигурные скобки {}, это уже объективный оверхед, а не психиатрическая проблема.
Re[3]: Лаконичный Lazarus/Pascal без многословия begin...end
От: T4r4sB Россия  
Дата: 16.08.20 12:44
Оценка:
Здравствуйте, gyraboo, Вы писали:

G>Может в этом всё и дело? Ведь когда целый день, неделя за неделей, пишешь begin/end, и понимаешь, что это в 4.5 раза многословнее, чем фигурные скобки {},


Божечки, как же ты живёшь. Поди по минуте каждую буковку на клаве ищешь.
Re[4]: Лаконичный Lazarus/Pascal без многословия begin...end
От: gyraboo  
Дата: 16.08.20 12:54
Оценка:
Здравствуйте, T4r4sB, Вы писали:

G>>Может в этом всё и дело? Ведь когда целый день, неделя за неделей, пишешь begin/end, и понимаешь, что это в 4.5 раза многословнее, чем фигурные скобки {},


TB>Божечки, как же ты живёшь. Поди по минуте каждую буковку на клаве ищешь.


Ужаснись ещё больше: прежде чем кодировать на Паскале, я сначала на русском языке пошагово расписываю алгоритмы.
Re[3]: Лаконичный Lazarus/Pascal без многословия begin...end
От: SergeyIT Россия  
Дата: 16.08.20 13:36
Оценка: 5 (1)
Здравствуйте, gyraboo, Вы писали:

SIT>>Да, и я, вообще-то, не программист .

G>Может в этом всё и дело? Ведь когда целый день, неделя за неделей, пишешь begin/end, и понимаешь, что это в 4.5 раза многословнее, чем фигурные скобки {}, это уже объективный оверхед, а не психиатрическая проблема.

А в чем проблема? Программы что, пишут только профессиональные программисты? А инженерам, ученым это не дано?
Кстати, программирую уже 42 года. Сейчас другую проблему вижу — профессиональные программисты пишут программы для различных предметных областей, в которых часто не разбираются — и после этого появляются всякие монстры, в которых разобраться и работать пользователю-специалисту бывает не очень-то просто.

Кстати, а почему не как в Питон — скобок вообще не надо?
Извините, я все еще учусь
Отредактировано 16.08.2020 13:47 SergeyIT . Предыдущая версия .
Re[4]: Лаконичный Lazarus/Pascal без многословия begin...end
От: gyraboo  
Дата: 17.08.20 12:16
Оценка:
Здравствуйте, SergeyIT, Вы писали:

SIT>>>Да, и я, вообще-то, не программист .

G>>Может в этом всё и дело? Ведь когда целый день, неделя за неделей, пишешь begin/end, и понимаешь, что это в 4.5 раза многословнее, чем фигурные скобки {}, это уже объективный оверхед, а не психиатрическая проблема.

SIT>А в чем проблема? Программы что, пишут только профессиональные программисты? А инженерам, ученым это не дано?


Дано, знаю несколько ученых, которые пишут код.

SIT>Кстати, программирую уже 42 года.

Интересно, раз вы пишете и на Lazarus и на Qt, то как решаете, какой именно из этих двух языков-платформ выбрать для задачи? Они же по сути про одно и то же — сделать скомпилированное GUI-приложение.

SIT>Сейчас другую проблему вижу — профессиональные программисты пишут программы для различных предметных областей, в которых часто не разбираются — и после этого появляются всякие монстры, в которых разобраться и работать пользователю-специалисту бывает не очень-то просто.


Бесспорно. Неспроста же Греф нам-программистам пуканы подогрел фразой "Нам не нужны программисты", как потом выяснилось, он имел ввиду как раз то, что "чистые программисты" не разбираются в проблемах продукта и никому не нужны.

SIT>Кстати, а почему не как в Питон — скобок вообще не надо?


Наверно потому что на Питоновские программы трудно навесить лицензионную защиту из-за его интерпретируемой природы, а сам язык вполне норм.
Re[5]: Лаконичный Lazarus/Pascal без многословия begin...end
От: SergeyIT Россия  
Дата: 17.08.20 13:13
Оценка:
Здравствуйте, gyraboo, Вы писали:

G>Интересно, раз вы пишете и на Lazarus и на Qt, то как решаете, какой именно из этих двух языков-платформ выбрать для задачи? Они же по сути про одно и то же — сделать скомпилированное GUI-приложение.

Интересный вопрос — а на собеседованиях разве не спрашивают — какой инструментарий вы будете использовать вот для такой-то задачи? Я всего один раз собеседование проходил — и этот вопрос был решающим...
А так, пишу один свои программы. Где надо что простое в гуи показать, можно и в Лазарусе быстро сделать (с гуи там проще). Где надо что-то сложное посчитать, да еще с использованием старого кода на С, С++ и всяких научных библиотек — на Qt.
Кстати, когда переходил с Вин на линукс, некоторые Дельфи программы на Qt перевел. А вот свой интранет сайт на паскале оставил (cgi из дельфи в лазарус переделан был за час), так его и модифицирую, когда надо.
За время карантина все что надо на 64 бита перевел.
Извините, я все еще учусь
Re[6]: Лаконичный Lazarus/Pascal без многословия begin...end
От: gyraboo  
Дата: 17.08.20 13:29
Оценка:
Здравствуйте, SergeyIT, Вы писали:

G>>Интересно, раз вы пишете и на Lazarus и на Qt, то как решаете, какой именно из этих двух языков-платформ выбрать для задачи? Они же по сути про одно и то же — сделать скомпилированное GUI-приложение.

SIT>Интересный вопрос — а на собеседованиях разве не спрашивают — какой инструментарий вы будете использовать вот для такой-то задачи?

В коммерческом корпоративном программировании Java, где я варюсь, инструментарий обычно уже дан свыше и ограничен языком, платформой и конкретными библиотеками, на которые собеседуют кандидата. И Java-собес обычно вертится вокруг владения этим ограниченным кругом инструментов, т.к. заказчику обычно важнее, чтобы джавист был мастером в текущем стеке технологий (ну и алгоритмы, БД и прочее тоже конечно спрашивают, но это не касается выбора инструментария). Вопросы о выборе инструментов или языков, поиск "кандидата-полиглота" — такое редко встречал, только на стартапах. Собственно поэтому и интересуюсь. Ведь Qt и Lazarus совершенно разные платформы. У меня есть желание перейти с Lazarus на Qt для своих хобби-проектов, я делал пару попыток, но пока безуспешно. Вот и интересно, насколько Qt удобен так же как Delphi/Lazarus для хобби и шароваро-варения.
Re[7]: Лаконичный Lazarus/Pascal без многословия begin...end
От: SergeyIT Россия  
Дата: 17.08.20 15:22
Оценка:
Здравствуйте, gyraboo, Вы писали:

G>У меня есть желание перейти с Lazarus на Qt для своих хобби-проектов, я делал пару попыток, но пока безуспешно. Вот и интересно, насколько Qt удобен так же как Delphi/Lazarus для хобби и шароваро-варения.

Так пробуй, в чем проблема? За тебя никто не решит. Я тут не помощник, давно уже для других не пишу, все для себя. А если для других, там много проблем возникнет с поддержкой, локализацией, с разными платформами и т.д. и т.п.
Насчет попыток, я переводил с Дельфи на QT, особых проблем не было, с учетом вышесказанного...
Единственно — в Лазарусе багов несколько больше, чем в Qt, видимо меньше используется и поэтому тестируется не так активно.
Извините, я все еще учусь
Re[2]: Лаконичный Lazarus/Pascal без многословия begin...end
От: ylem  
Дата: 19.08.20 08:45
Оценка:
ARK>А зачем?

У него объявление классов и реализация его методов отдельно
И, кажается, это очень 'чисто', читаемо и удобно?
Re[3]: Лаконичный Lazarus/Pascal без многословия begin...end
От: AlexRK  
Дата: 21.08.20 09:13
Оценка:
Здравствуйте, ylem, Вы писали:

Y>У него объявление классов и реализация его методов отдельно

Y>И, кажается, это очень 'чисто', читаемо и удобно?

Так и в Ц++ то же самое.
Re[3]: Лаконичный Lazarus/Pascal без многословия begin...end
От: Tai Казахстан  
Дата: 16.09.20 15:08
Оценка:
Здравствуйте, gyraboo, Вы писали:


J>>Были. Заменили begin/end на фигурные скобки, еще кой какие улучшения, в результате получился C#


G>Его беда, лично для меня, что нельзя компилировать в машинный код, поэтому нормальной защиты не навесишь на шаровару.



И как вы выкручиваетесь из этой ситуации?
Re[4]: Лаконичный Lazarus/Pascal без многословия begin...end
От: gyraboo  
Дата: 16.09.20 16:00
Оценка:
Здравствуйте, Tai, Вы писали:

J>>>Были. Заменили begin/end на фигурные скобки, еще кой какие улучшения, в результате получился C#


G>>Его беда, лично для меня, что нельзя компилировать в машинный код, поэтому нормальной защиты не навесишь на шаровару.


Tai>И как вы выкручиваетесь из этой ситуации?


Одну шаровару написал на C#, наткнулся на слабость защиты и все остальные продукты стал снова на Delphi/Lazarus делать.
Re: БРЕД - Pascal без многословия begin...end
От: AWSVladimir  
Дата: 18.01.21 05:50
Оценка: +1
Здравствуйте, gyraboo, Вы писали:

G>Интересно, были ли попытки сделать Паскаль или Lazarus более лаконичным языком, убрав из него многословные операторы типа then, begin, end, interface, implementation, uses?

G>Lazarus — замечательный инструмент, но эта многословность языка иногда подбешивает.

Сразу видно начинающего прогера.
<Ctrl>+<J>+<Enter> -> конструкция:
begin
end;

<Ctrl>+<J>+<Стрелка вниз>+<Enter> -> конструкция:
begin
end else begin
end;

<Ctrl>+<J> — нажимаются одновременно.
Поэтому begin end; — пишется в 3 нажатия на клаву
а begin end else begin end; — в 4 нажатия
Это быстрее чем скобки рисовать

Изучай среду разработки и пользуйся ее возможностями!

Понятно что по дефаулту в среде этого нет, но на то ты и профессиональный разработчик, что бы настроить все для себя любимого.
Re[2]: Лаконичный Lazarus/Pascal без многословия begin...end
От: Nuzhny Россия https://github.com/Nuzhny007
Дата: 18.01.21 07:19
Оценка:
Здравствуйте, T4r4sB, Вы писали:

TB>Буковки набирать долго плак-плак.

TB>Это уровень даже не джуна Т_Т

Сначала набирать, потом читать. Оптимально, когда ЯП не тормозит и не обгоняет скорость твоего мышления.
Re[3]: Лаконичный Lazarus/Pascal без многословия begin...end
От: AlexRK  
Дата: 18.01.21 07:27
Оценка: +2
Здравствуйте, Nuzhny, Вы писали:

N>Сначала набирать, потом читать. Оптимально, когда ЯП не тормозит и не обгоняет скорость твоего мышления.


Никто все эти begin и then не читает. Это символы, такие же, как скобки. Пропускаются мозгом на автомате. Читают сложные выражения, а не это.
Re[4]: Лаконичный Lazarus/Pascal без многословия begin...end
От: Nuzhny Россия https://github.com/Nuzhny007
Дата: 18.01.21 07:29
Оценка: -1
Здравствуйте, AlexRK, Вы писали:

N>>Сначала набирать, потом читать. Оптимально, когда ЯП не тормозит и не обгоняет скорость твоего мышления.

ARK>Никто все эти begin и then не читает. Это символы, такие же, как скобки. Пропускаются мозгом на автомате. Читают сложные выражения, а не это.

Да банально меньше строк на экране помещается.
Re[5]: Лаконичный Lazarus/Pascal без многословия begin...end
От: AlexRK  
Дата: 18.01.21 10:43
Оценка: 1 (1)
Здравствуйте, Nuzhny, Вы писали:

N>>>Сначала набирать, потом читать. Оптимально, когда ЯП не тормозит и не обгоняет скорость твоего мышления.

ARK>>Никто все эти begin и then не читает. Это символы, такие же, как скобки. Пропускаются мозгом на автомате. Читают сложные выражения, а не это.

N>Да банально меньше строк на экране помещается.


Смотря с каким стилем сравнивать. Если, скажем, с GNU, то не просто не меньше, а как бы не больше. Да и с другими стилями разницы особой нет.
Re[6]: Лаконичный Lazarus/Pascal без многословия begin...end
От: Nuzhny Россия https://github.com/Nuzhny007
Дата: 18.01.21 10:50
Оценка:
Здравствуйте, AlexRK, Вы писали:

N>>Да банально меньше строк на экране помещается.

ARK>Смотря с каким стилем сравнивать. Если, скажем, с GNU, то не просто не меньше, а как бы не больше. Да и с другими стилями разницы особой нет.

Сейчас самый популярный формат ClangFormatStyleOptions
Re[7]: Лаконичный Lazarus/Pascal без многословия begin...end
От: vladislav_somov Россия  
Дата: 19.02.21 20:32
Оценка:
Здравствуйте, Nuzhny, Вы писали:

N>Сейчас самый популярный формат ClangFormatStyleOptions


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

Лайфхак для перфекционистов: если по вертикали ничего вообще не выравнивать, то получается одинаково невыровненный текст. Если после этого добавить отступы для групп конструкций, получается удобочитаемый код. Перфекционист должен быть доволен, ибо все одинаково невыровнено и одинаково отступлено.

1. Бытует мнение, что современные процессоры настолько быстрые, что код, написанный так:

(Листинг 1)
012345670123456701234567
foo     :=      foo1;
bar     :=      bar2;

компилируется одинаково быстро с кодом написанным так:

(Листинг 2)
012345670123456701234567
foo := foo1;
bar := bar2;

2. Но выравнивание вновь добавленного вот такого кода:

(Листинг 3)
0123456701234567012345670123456701234567
foofoofoofoofoo := foo1foo1foo1foo1;
barbarbarbarbar := bar2bar2bar2bar2;

к листингу 1 приводит к мигреням, бессоннице и одинаково быстрой компиляции.

3. Лайфхак для перфекционистов, в коде:

(Листинг 4)
0123456701234567012345670123456701234567
foo := foo1;
bar := bar2;
foofoofoofoofoo := foo1foo1foo1foo1;
barbarbarbarbar := bar2bar2bar2bar2;

между операторами и операндами одинаковое количество пробелов, а между строками одинаковое количество переносов строк.

4. Впрочем, существует способ для непримиримых выравнителей:

(Листинг 4)
01234567012345670123456701234567012345670123456701234567012345670123456701234567012345670123456701234567012345670123456701234567012345670123456701234567012345670123456701234567012345670123456701234567
foo                                                                             :=                                                                              foo1;
bar                                                                             :=                                                                              bar2;
foofoofoofoofoo                                                                 :=                                                                              foo1foo1foo1foo1;
barbarbarbarbar                                                                 :=                                                                              bar2bar2bar2bar2;

Это просто набросок, пробелами можно победить любого изобретателя длинных идентификаторов.

5. Лучше, если в команде используется ограничение на количество символов в идентификаторе, тогда выравнивание не остановить:

0123456701234567012345670123456701234567
foo := foo1;
fo1 := fo11;
f1_ := f11_;
f_1 := f_11;
_f1 := _f11;

Это пример, дальше по аналогии.


Ставьте лайки, подписывайтесь на канал.
Если креатив наберет больше 10 комментариев, продолжим публиковать статьи о выравнивании.
Может даже создадим ВЯЕФ (выровненный язык единого форматирования).
Re: Лаконичный Lazarus/Pascal без многословия begin...end
От: Dimonka Верблюд  
Дата: 26.05.21 13:04
Оценка:
Здравствуйте, gyraboo, Вы писали:

G>Интересно, были ли попытки сделать Паскаль или Lazarus более лаконичным языком, убрав из него многословные операторы типа then, begin, end, interface, implementation, uses?

G>Lazarus — замечательный инструмент, но эта многословность языка иногда подбешивает.

С этим всем можно жить легко и припеваючи.

Что реально подбешивает, что дельфи сам по себе вроде ничего, но реально он компилятор и иде прилагающаяся к DevEx-овским компонентам. Все остальные родные и сторонние компоненты настолько убоги, что упоминать их нет смысла. Исключения конечно есть, но они лишь подтверждают правило.

И вторая неприятность (на мой взгляд) — это то, что великие делфеведы так и не разродились нормальным репозитарием с менеджером компонентов (для авто-апдейта и сборки нужных компонентов). Когда ты думаешь, что надо наладить новую машину с нужным набором компонентов — это поседеешь от одной инсталляции дельфи, об компонентах вообще молчу. Приходится всё держать на виртуальной машине.
А если посмотреть на тех, кто "впереди планеты всей" (JS, PHP итд), так этот процесс занимает если не один запуск батника, то может три строчки в командной строке.
Re[2]: Лаконичный Lazarus/Pascal без многословия begin...end
От: gyraboo  
Дата: 26.05.21 13:08
Оценка:
Здравствуйте, Dimonka, Вы писали:

G>>Интересно, были ли попытки сделать Паскаль или Lazarus более лаконичным языком, убрав из него многословные операторы типа then, begin, end, interface, implementation, uses?

G>>Lazarus — замечательный инструмент, но эта многословность языка иногда подбешивает.

D>С этим всем можно жить легко и припеваючи.


D>Что реально подбешивает, что дельфи сам по себе вроде ничего, но реально он компилятор и иде прилагающаяся к DevEx-овским компонентам. Все остальные родные и сторонние компоненты настолько убоги, что упоминать их нет смысла. Исключения конечно есть, но они лишь подтверждают правило.


D>И вторая неприятность (на мой взгляд) — это то, что великие делфеведы так и не разродились нормальным репозитарием с менеджером компонентов (для авто-апдейта и сборки нужных компонентов). Когда ты думаешь, что надо наладить новую машину с нужным набором компонентов — это поседеешь от одной инсталляции дельфи, об компонентах вообще молчу. Приходится всё держать на виртуальной машине.

D>А если посмотреть на тех, кто "впереди планеты всей" (JS, PHP итд), так этот процесс занимает если не один запуск батника, то может три строчки в командной строке.

В Лазаре менеджер компонентов есть, и он имеет достаточно много хороших и нужных модулей, умеет устанавливать компоненты прямо из сетевого репозитория, что очень удобно.
В общем-то когда я год назад пересел с Дельфи на Лазаря, то проблем в Лазаре практически не встречал, в чем-то даже он мне больше нравится чем Дельфи.
Re[3]: Лаконичный Lazarus/Pascal без многословия begin...end
От: Dimonka Верблюд  
Дата: 26.05.21 13:14
Оценка:
Здравствуйте, gyraboo, Вы писали:

G>В Лазаре менеджер компонентов есть, и он имеет достаточно много хороших и нужных модулей, умеет устанавливать компоненты прямо из сетевого репозитория, что очень удобно.

G>В общем-то когда я год назад пересел с Дельфи на Лазаря, то проблем в Лазаре практически не встречал, в чем-то даже он мне больше нравится чем Дельфи.

лазарь сам по себе мне показался ужасно неудобным. Даже если у него чего-то и есть — это скорее для любителей самоистязания.
Ну и внешний вид всех компонентов хорошо если на уровне Widnows XP, а зачастую где-то ещё и раньше..
Re[4]: Лаконичный Lazarus/Pascal без многословия begin...end
От: gyraboo  
Дата: 26.05.21 13:19
Оценка:
Здравствуйте, Dimonka, Вы писали:

G>>В Лазаре менеджер компонентов есть, и он имеет достаточно много хороших и нужных модулей, умеет устанавливать компоненты прямо из сетевого репозитория, что очень удобно.

G>>В общем-то когда я год назад пересел с Дельфи на Лазаря, то проблем в Лазаре практически не встречал, в чем-то даже он мне больше нравится чем Дельфи.

D>лазарь сам по себе мне показался ужасно неудобным. Даже если у него чего-то и есть — это скорее для любителей самоистязания.

D>Ну и внешний вид всех компонентов хорошо если на уровне Widnows XP, а зачастую где-то ещё и раньше..

Внешний вид компонентов Лазаря стандартный для Винды, в том числе и для Windows 10. И поэтому проги на Лазаре выглядят вполне нормально, если только ты манифест не перекроил, тогда действительно компоненты могут визуально рисоваться убого и на уровне XP. Но по дефолту у гуишной проги в Лазаре имхо все тип топ с внешним видом компонентов.
Re[2]: Лаконичный Lazarus/Pascal без многословия begin...end
От: rudzuk  
Дата: 26.05.21 15:17
Оценка:
Здравствуйте, Dimonka, Вы писали:

D> И вторая неприятность (на мой взгляд) — это то, что великие делфеведы так и не разродились нормальным репозитарием с менеджером компонентов (для авто-апдейта и сборки нужных компонентов).


getit давно есть и работает.
avalon/3.0.0
Re[5]: Лаконичный Lazarus/Pascal без многословия begin...end
От: Dimonka Верблюд  
Дата: 26.05.21 15:51
Оценка:
Здравствуйте, gyraboo, Вы писали:

G>Внешний вид компонентов Лазаря стандартный для Винды, в том числе и для Windows 10. И поэтому проги на Лазаре выглядят вполне нормально, если только ты манифест не перекроил, тогда действительно компоненты могут визуально рисоваться убого и на уровне XP. Но по дефолту у гуишной проги в Лазаре имхо все тип топ с внешним видом компонентов.


Лазарус за отсутствием DevEx, я вообще не рассматриваю как инструмент. Просто сама мысль, что надо добавить какую-то таблицу, риббон или чего ещё, там заканчивается чем-то этаким, где за что не возьмёшься — ответ будет "а это ещё немножко не доделали".
Да и лазаровский "тип топ" тоже могу себе представить. Уж если в Дельфе он

Не, ну можно сказать конечно "ты же программист", доработаешь напильником. Да вот как-то поднадоело.
Re[3]: Лаконичный Lazarus/Pascal без многословия begin...end
От: Dimonka Верблюд  
Дата: 26.05.21 15:53
Оценка:
Здравствуйте, rudzuk, Вы писали:

D>> И вторая неприятность (на мой взгляд) — это то, что великие делфеведы так и не разродились нормальным репозитарием с менеджером компонентов (для авто-апдейта и сборки нужных компонентов).


R>getit давно есть и работает.


Это видно какой-то суперсекретный проект. Гугл о нём ничего не знает.
Re[4]: Лаконичный Lazarus/Pascal без многословия begin...end
От: rudzuk  
Дата: 26.05.21 18:29
Оценка:
Здравствуйте, Dimonka, Вы писали:

D> R>getit давно есть и работает.


D> Это видно какой-то суперсекретный проект. Гугл о нём ничего не знает.


Гуглу нужно правильно задавать вопросы.
avalon/3.0.0
Re[3]: Лаконичный Lazarus/Pascal без многословия begin...end
От: Dimonka Верблюд  
Дата: 27.05.21 12:25
Оценка:
Здравствуйте, gyraboo, Вы писали:

SIT>>Да, и я, вообще-то, не программист .

G>Может в этом всё и дело? Ведь когда целый день, неделя за неделей, пишешь begin/end, и понимаешь, что это в 4.5 раза многословнее, чем фигурные скобки {}, это уже объективный оверхед, а не психиатрическая проблема.

Если не ошибаюсь, в дельфе можно было нажать "b", ctrl+j, enter и у тебя уже есть BEGIN END. Конечно это чуть медленнее чем автозакрывающиеся скобки, но психиатрическая проблема считать, что это как-то влияет на скорость программирования или на скорость чтения исходников. Там полно других проблем, но уж точно не синтаксических
Re[6]: Лаконичный Lazarus/Pascal без многословия begin...end
От: LuciferNovoros Россия  
Дата: 30.05.21 13:28
Оценка:
Здравствуйте, Dimonka, Вы писали:

D>Лазарус за отсутствием DevEx, я вообще не рассматриваю как инструмент. Просто сама мысль, что надо добавить какую-то таблицу, риббон или чего ещё, там заканчивается чем-то этаким, где за что не возьмёшься — ответ будет "а это ещё немножко не доделали".

D>Да и лазаровский "тип топ" тоже могу себе представить. Уж если в Дельфе он
D>Не, ну можно сказать конечно "ты же программист", доработаешь напильником. Да вот как-то поднадоело.

Ну, мне вот за все время работы на Лазаре DevEx не потребовался ни разу. Равно как и разновсякие риббоны и прочие свистоперделки. Что в них есть такое, что — помимо красявостей — добавляет функционал? А вот что реально бесит, так отсутствие нормальных компонентов доступа к БД. Вот их реально приходится допиливать напильником. Тот же ZeosDB — редкостное ублюдство. Все остальное там вполне себе на высоте. Ну а чего не хватает, то реализуется буквально за считанные часы. Мне не хватало как-то маски в TEdit в произвольном месте. Сделал за час работы. Не хватало хинта в комбобоксе — легко. Часа три потратил.

Впрочем, если ты просто формоклепатель, тогда понятно. Но тебя тогда никакая IDE не удовлетворит.
Re[7]: Лаконичный Lazarus/Pascal без многословия begin...end
От: Dimonka Верблюд  
Дата: 31.05.21 10:36
Оценка:
Здравствуйте, LuciferNovoros, Вы писали:


LN>Ну, мне вот за все время работы на Лазаре DevEx не потребовался ни разу. Равно как и разновсякие риббоны и прочие свистоперделки. Что в них есть такое, что — помимо красявостей — добавляет функционал?

Могу себе представить любой твой грид из стандартных компонентов.
Как бы сложно представить дельфёвое приложение для BD без нормального грида.

LN>А вот что реально бесит, так отсутствие нормальных компонентов доступа к БД. Вот их реально приходится допиливать напильником. Тот же ZeosDB — редкостное ублюдство. Все остальное там вполне себе на высоте. Ну а чего не хватает, то реализуется буквально за считанные часы. Мне не хватало как-то маски в TEdit в произвольном месте. Сделал за час работы. Не хватало хинта в комбобоксе — легко. Часа три потратил.

Ну если тебе реально только что-то в комбобокс надо было добавить, то конечно вопросов нет.
А вот если надо сделать дропдаун , чтобы из другой таблицы выбирать, например, клиента и чтоб с сортировкой, фильтрами, раскраской и поиском — это тебе не хинт присобачить. А на девексе — это несколько кликов мышкой и почти никакого кода. И притом от этого всего не будет отдавать колхозом из 90-х

LN>Впрочем, если ты просто формоклепатель, тогда понятно. Но тебя тогда никакая IDE не удовлетворит.


Если приложение — это не виндовый гуй, то вообще непонятно нафига делфи? Но это скорее политический вопрос
Re: Лаконичный Lazarus/Pascal без многословия begin...end
От: Слава  
Дата: 01.10.21 18:06
Оценка:
Здравствуйте, gyraboo, Вы писали:

G>Интересно, были ли попытки сделать Паскаль или Lazarus более лаконичным языком, убрав из него многословные операторы типа then, begin, end, interface, implementation, uses?

G>Lazarus — замечательный инструмент, но эта многословность языка иногда подбешивает.

Полагаю, что на Nemerle этот вопрос можно решить примерно за месяц, сделав транслятор из вашего гипотетического диалекта в Lazarus.

И отдалённо относящееся к теме: мне ваш вопрос напомнил язык ParaSail https://en.wikipedia.org/wiki/ParaSail_(programming_language) , созданный S. Tucker Taft, одним из ведущих разработчиков Ады. Он более лаконичен чем Ада или Паскаль, видимо автору тоже поднадоели begin/end.
Re[2]: Лаконичный Lazarus/Pascal без многословия begin...end
От: rudzuk  
Дата: 01.10.21 18:27
Оценка:
Здравствуйте, Слава, Вы писали:

С> ... видимо автору тоже поднадоели begin/end.


И именно поэтому после каждого end нужно еще приписку блока делать
avalon/3.0.0
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.