Добро пожаловать в форум, Guest >> Войти | Регистрация | Поиск | Правила | | В избранное | Подписаться | ||
Все форумы / Delphi |
![]() ![]() |
Топик располагается на нескольких страницах: 1 2 3 4 5 [все] |
Mikhail Tchervonenko Member Откуда: Münster, Germany Сообщений: 1557 |
Всем доброго времени суток! сегодня в очередной раз наткнулся тут на упоминание о omniPascal, кто то его уже пробовал? Какие впечатления? Чем это лучше/хуже родной среды от delphi или lazarus и в чём смысл сего творения? Спасибо. |
11 июн 18, 12:46 [21484514] Ответить | Цитировать Сообщить модератору |
DarkMaster Member Откуда: Donetsk,Ukraine Сообщений: 6153 |
Mikhail Tchervonenko, А тебе назачем он нужен? |
11 июн 18, 13:13 [21484537] Ответить | Цитировать Сообщить модератору |
Mikhail Tchervonenko Member Откуда: Münster, Germany Сообщений: 1557 |
Долгое время работал в Visual Studio, интересно насколько авторы далеко зашли. Какие преимущества даёт использование OmniPascal в студии, особенно в сравнении с родной средой. |
||
11 июн 18, 13:34 [21484543] Ответить | Цитировать Сообщить модератору |
ВасЁкПупкин
Guest |
действительно! на официальной сайте же нет никакой информации. почему бы не начать пустой треп на форуме |
11 июн 18, 13:39 [21484544] Ответить | Цитировать Сообщить модератору |
JaDi Member Откуда: Сызрань, Россия Сообщений: 3983 |
Ради прикола пробовал несколько лет назад, когда он только вышел. Не понравилось -- глючно, тормозно и малоиспользуемо для проекта. Хотя удобные фичи в редакторе от визуал студии там есть, которые не помешали бы и родной делфи. |
11 июн 18, 14:31 [21484596] Ответить | Цитировать Сообщить модератору |
_Vasilisk_ Member Откуда: Украина, Харьков Сообщений: 10719 |
|
||
11 июн 18, 16:04 [21484687] Ответить | Цитировать Сообщить модератору |
Leonid Member Откуда: From nowhere Сообщений: 702 |
И все бы хорошо, но только корявость самой Жабы никто не отменял. Сама жаба-машина от Оракл с 8-ой версии и выше - да, это вещь! Рвет все "эти ваши" прадедовские Дельфи и богомерзко-тормозные ДотНЕТ-ы как тузик грелку, и по скорости работы кода идет ноздря в ноздрю с хорошими С++ оптимизированными приложениями при этом еще и имея реальную, а не декларативную или притянутую за уши кроссплатформенность! А вот саму Жабу со всеми ее многочисленными, как бы помягче, странными-особенностями нафиг-нафиг. Котлин ( Kotlin ) - вот реальная альтернатива Жабы от тех же JetBrains. Создан ребятами из Питера ( точнее из Кронштадта ). Официально поддержан Google как новый основной язык для Андройд. Испытал благотворное влияние Паскаля!!! ;) (сказалась предыдущая работа создателей на Borland ) Язык простой и лаконичный. Подходит и для Десктопа в связке с Жабой-FX и для мобилок и для Веба. Совместим с жабными библиотеками и пакетами и работает на тех же скоростных жаба-машинах. Короче, у Kotlin есть все шансы существенно потеснить эти ваши покрытые столетним мхом былинные Дельфи, богомерзко-тормозные и прожорливые ДотНЕТ-ы и сомнительно-корявые в своей "стройной" архаичности Жабы. |
||
12 июн 18, 01:33 [21485340] Ответить | Цитировать Сообщить модератору |
defecator Member Откуда: Сообщений: 39112 |
поглядел на котлин - прикольно. дохнуло паскалем. вот бы еще был бы он нечувствительным к регистру, вообще было бы здорово. а так опять херня(((( |
12 июн 18, 04:56 [21485376] Ответить | Цитировать Сообщить модератору |
Дегтярев Евгений Member Откуда: Барнаул Сообщений: 1466 |
JetBrains молодцы, хорошую платформу для IDE сделали
а чем это плохо? |
||
12 июн 18, 08:57 [21485451] Ответить | Цитировать Сообщить модератору |
Leonid Member Откуда: From nowhere Сообщений: 702 |
Иногда даже хорошо когда PascalCase с lowerCamelCase сочетаешь для разделения полей и параметров или имен свойств. Но defecator просто дедушка старый уже. Глаза видят плохо. Ему таких тонкостей уже не разглядеть. Да и begin end ему в этим вопросе сподручнее чем фигурные скобки. |
||||
12 июн 18, 09:25 [21485475] Ответить | Цитировать Сообщить модератору |
defecator Member Откуда: Сообщений: 39112 |
регистронезависимость - это очень крутая штука. Без неё весь текст программы превращается в месиво |
||||
12 июн 18, 09:32 [21485478] Ответить | Цитировать Сообщить модератору |
Leonid Member Откуда: From nowhere Сообщений: 702 |
defecator, а если серьезно, то тебе не пофиг со всякими современными средствами типа intellisense и прочее? Или тебя эстетически возбуждает смотреть на всякие изыски типа первой заглавной Begin, Function, или внешний BEGIN END а внутренние begin end. И каких только еще извращений с регистром не приходилось видеть на "этих ваших" Паскалях. Чувствительность к регистру как раз позволяет перевести эстетство этих извращенцев в более конструктивное русло. |
||||
12 июн 18, 10:05 [21485492] Ответить | Цитировать Сообщить модератору |
defecator Member Откуда: Сообщений: 39112 |
одно дело ключевые слова, а другое - наименование процедур/переменных и т.д. в регистроЗАвисимой народ не парится и всё хреначит нижним регистром, а на выходе - визуальная каша. Особенно, testVar и TestVar - пишутся одинаково, но вдруг оказываются разными переменными. Тьфу И не надо про интеллисенсе - это костыль |
||||
12 июн 18, 10:13 [21485497] Ответить | Цитировать Сообщить модератору |
Leonid Member Откуда: From nowhere Сообщений: 702 |
А если, например, про Жабу, где методы должны начинаться с нижнего регистра и глагола - то это как раз хороший стиль, который визуально очень помогает и по смыслу сродни венгерской нотации. Регистрозависимость - это есть хорошо. Просто ты не умеешь это правильно готовить. |
||
12 июн 18, 10:19 [21485507] Ответить | Цитировать Сообщить модератору |
L_argo Member Откуда: Сообщений: 594 |
|
||||
12 июн 18, 12:27 [21485731] Ответить | Цитировать Сообщить модератору |
YuRock Member Откуда: Донецк Сообщений: 3760 |
Фигурные скобки намного хуже и НЕнагляднее, чем begin-end. Были придуманы для экономии места на кассете. Снижают наглядность вообще, а наглядность плохо форматированного кода - снижают на 99%. РегистроНЕзависимость - попытка сделать процесс очень долгой компиляции с-подобных языков хоть чуточку быстрее. Порождает ужасные ошибки с "похожими" названиями идентификаторов. "Так повелось". Это как в паскале String с 1.
Мне раньше часто приходилось и сейчас иногда приходится некоторые куски своего кода переводить на C. Поэтому даже в делфе пишу всегда sizeof и страдаю от этого :). |
||||
12 июн 18, 13:32 [21485834] Ответить | Цитировать Сообщить модератору |
YuRock Member Откуда: Донецк Сообщений: 3760 |
Вот блин. РегистроЗАвисимость. |
||
12 июн 18, 13:32 [21485835] Ответить | Цитировать Сообщить модератору |
DarkMaster Member Откуда: Donetsk,Ukraine Сообщений: 6153 |
Если приходится писать на бумаге - я еще и 0 перечеркиваю. Автоматически. P.S. Народ, вы вообще о чем сейчас? О регистрах символов, JVM, C vs Pascal, C#? Тред все дальше и дальше от темы уходит ![]() |
12 июн 18, 13:46 [21485880] Ответить | Цитировать Сообщить модератору |
SOFT FOR YOU Member [заблокирован] Откуда: Сообщений: 2761 |
Я не знаю как кому, а лично мне интересно про Паскаль под Студию послушать. А не детсадовские разговоры про регистронезависимость. Может делом займёмся? |
12 июн 18, 14:13 [21485944] Ответить | Цитировать Сообщить модератору |
ВасЁкПупкин
Guest |
Плохому танцору и ноги мешают, завидно смотря на другого Delphi компилятор все исходы (RTL, VCL, FMX, DexExpres, LMD, .... ) Может собрать за минуту. Жертвуя хорошей оптимизацией. За то, быстро, и не регистрирозависимо |
12 июн 18, 14:50 [21486022] Ответить | Цитировать Сообщить модератору |
YuRock Member Откуда: Донецк Сообщений: 3760 |
Скорость компиляции паскаля высока не из-за того, что ради неё пожертвовали оптимизациями. Ни разу. А из-а отсутствия макросов и модульной структуры проекта. |
||
12 июн 18, 14:53 [21486032] Ответить | Цитировать Сообщить модератору |
defecator Member Откуда: Сообщений: 39112 |
что ? ![]() ![]() нет, из-за того, что паскаль-компилятор однопроходный, и не компилит лишнего |
||||
12 июн 18, 14:55 [21486037] Ответить | Цитировать Сообщить модератору |
SOFT FOR YOU Member [заблокирован] Откуда: Сообщений: 2761 |
C++ компилятор тоже может быть быстрый Если над ним будет работать человек с головой, а не сообщество теоретиков Собственно, насколько мне известно, ребята из Clang смогли выжать скорости за счёт итеративной разработки |
12 июн 18, 15:04 [21486061] Ответить | Цитировать Сообщить модератору |
alekcvp Member Откуда: Сообщений: 1269 |
|
||
12 июн 18, 15:07 [21486070] Ответить | Цитировать Сообщить модератору |
defecator Member Откуда: Сообщений: 39112 |
именно так. скатилось в УГ |
||||
12 июн 18, 15:09 [21486074] Ответить | Цитировать Сообщить модератору |
defecator Member Откуда: Сообщений: 39112 |
Clang - одно из тормознутых творений. Си в принципе заточен на долгую компиляцию ради меньшего исполняемого модуля. Но ты можешь родить свой собственный самый быстрый в мире компилятор Си ! ты же величайший оптимизатор нашего времени ! ![]() ![]() ![]() |
||
12 июн 18, 15:11 [21486079] Ответить | Цитировать Сообщить модератору |
SOFT FOR YOU Member [заблокирован] Откуда: Сообщений: 2761 |
alekcvp, Зависит от опций компилятора Можно выставить режим, чтобы всё это не компилилось |
12 июн 18, 15:12 [21486084] Ответить | Цитировать Сообщить модератору |
_Vasilisk_ Member Откуда: Украина, Харьков Сообщений: 10719 |
1. Автоматическое добавление import при упоминании класса в коде или при вставке фрагмента кода из буфера обмена 2. Автоматическое формирование отступов, в том числе при вставке фрагмента кода из буфера обмена 3. Подсказка имени объявляемой переменной на основании имени типа 4. Создание геттеров/сеттеров и инициализация поля класса в конструкторе просто по клику на это поле. Это только то, что вспомнилось сходу. Я не работал в Вижуал Студии, но после Идеи Делфя выглядит убого. Это я сейчас только об IDE. Про сами языки я молчу. Хотя те же лямбды в джаве сделаны на порядок проще |
||
12 июн 18, 15:17 [21486100] Ответить | Цитировать Сообщить модератору |
defecator Member Откуда: Сообщений: 39112 |
в то время, когда создавался Delphi, всего этого не требовалось. зато сделали интерфейс для сторонних плагинов. |
||||
12 июн 18, 15:21 [21486104] Ответить | Цитировать Сообщить модератору |
YuRock Member Откуда: Донецк Сообщений: 3760 |
Это - следствие отсутствия макросов и модульной структуры проекта :) |
||
12 июн 18, 15:27 [21486127] Ответить | Цитировать Сообщить модератору |
defecator Member Откуда: Сообщений: 39112 |
макросы вещь очень удобная, я категорически согласен на эту фичу в Дельфи ! |
||||
12 июн 18, 15:31 [21486138] Ответить | Цитировать Сообщить модератору |
YuRock Member Откуда: Донецк Сообщений: 3760 |
|
||
12 июн 18, 15:33 [21486145] Ответить | Цитировать Сообщить модератору |
SOFT FOR YOU Member [заблокирован] Откуда: Сообщений: 2761 |
Че вам инлайны не угодили вместо макросов? |
12 июн 18, 15:38 [21486158] Ответить | Цитировать Сообщить модератору |
YuRock Member Откуда: Донецк Сообщений: 3760 |
|
||
12 июн 18, 15:42 [21486168] Ответить | Цитировать Сообщить модератору |
defecator Member Откуда: Сообщений: 39112 |
+100 великий оптимизатор не понимает разницу между макросами и инлайнами |
||||
12 июн 18, 15:45 [21486181] Ответить | Цитировать Сообщить модератору |
SOFT FOR YOU Member [заблокирован] Откуда: Сообщений: 2761 |
YuRock, Спорный момент ) Праздный вопрос. Приведи пример, когда одно хорошо, а инлайном или константами не решается |
12 июн 18, 15:47 [21486186] Ответить | Цитировать Сообщить модератору |
SOFT FOR YOU Member [заблокирован] Откуда: Сообщений: 2761 |
defecator, Ну так ты ни инлайнов, ни дженериков не знаешь. О чем с тобой говорить )) |
12 июн 18, 15:48 [21486190] Ответить | Цитировать Сообщить модератору |
MaratIsk Member Откуда: Astana, Kazakhstan Сообщений: 2453 |
после Delphi я понял как убога IDEA :)) |
||||
12 июн 18, 15:49 [21486193] Ответить | Цитировать Сообщить модератору |
defecator Member Откуда: Сообщений: 39112 |
моё неприятие генериков не исключает того, что я их знаю. |
||
12 июн 18, 15:49 [21486198] Ответить | Цитировать Сообщить модератору |
ВасЁкПупкин
Guest |
Запретить и расстрелять! Он не может и 1 строку заинлайнить, без оверхеда Вот инлайн
Вот без
|
||||
12 июн 18, 16:12 [21486268] Ответить | Цитировать Сообщить модератору |
SOFT FOR YOU Member [заблокирован] Откуда: Сообщений: 2761 |
ВасЁкПупкин, Ну если бездумно, Delphi не самый оптимальный компилятор. Почему ты думаешь, что с чисто гипотетическими макросами будет быстрее ) |
12 июн 18, 16:17 [21486284] Ответить | Цитировать Сообщить модератору |
YuRock Member Откуда: Донецк Сообщений: 3760 |
Миллиард примеров. Когда надо - тогда и не решается. Вот, например (может и не самый лучший и наглядный, но лучше - лень искать): https://github.com/FirebirdSQL/firebird/blob/master/src/include/firebird/UdrCppEngine.h использование: https://github.com/FirebirdSQL/firebird/blob/master/examples/udr/Functions.cpp |
||
12 июн 18, 16:17 [21486286] Ответить | Цитировать Сообщить модератору |
ВасЁкПупкин
Guest |
Потому что надо знать как работают макросы. Макросы, это str-replace на нужное значение С ними ты получишь 100% код, который бы мог написать руками Пример развёртывания макросов cpp -P code2.h |
||
12 июн 18, 16:22 [21486303] Ответить | Цитировать Сообщить модератору |
SOFT FOR YOU Member [заблокирован] Откуда: Сообщений: 2761 |
YuRock, Я ничо не понял Но справедливости ради признаю твою правоту :) |
12 июн 18, 16:24 [21486308] Ответить | Цитировать Сообщить модератору |
YuRock Member Откуда: Донецк Сообщений: 3760 |
Потому я и говорю, что делфи уже ни макросы не спасут, ни объекты в стеке, ничего. Язык убит (оригинальный делфи который (копирайт Borland и post-Borland), а у других паскалей есть шансы). |
||
12 июн 18, 16:41 [21486354] Ответить | Цитировать Сообщить модератору |
alekcvp Member Откуда: Сообщений: 1269 |
А что вы понимаете под лямбдами в дельфи?.. |
12 июн 18, 16:50 [21486373] Ответить | Цитировать Сообщить модератору |
YuRock Member Откуда: Донецк Сообщений: 3760 |
Лично я - всё, что связано с этим https://ru.wikipedia.org/wiki/Лямбда-выражение |
||
12 июн 18, 16:57 [21486388] Ответить | Цитировать Сообщить модератору |
SOFT FOR YOU Member [заблокирован] Откуда: Сообщений: 2761 |
YuRock, Нет знаю. Мне всё нравится. И дженерики, и лямбды |
12 июн 18, 17:07 [21486407] Ответить | Цитировать Сообщить модератору |
YuRock Member Откуда: Донецк Сообщений: 3760 |
|
||
12 июн 18, 17:10 [21486413] Ответить | Цитировать Сообщить модератору |
alekcvp Member Откуда: Сообщений: 1269 |
Т.е. в контексте дельфей - только анонимные функции? Или там в 10ке ещё что-то новое ввели на эту тему? |
||||
12 июн 18, 17:28 [21486440] Ответить | Цитировать Сообщить модератору |
YuRock Member Откуда: Донецк Сообщений: 3760 |
|
||
12 июн 18, 17:28 [21486442] Ответить | Цитировать Сообщить модератору |
AWSVladimir Member Откуда: Сообщений: 860 |
Меня здорово бесит if a = b if a == b постоянно нужно всматриваться, а зрение уже не то... |
||
12 июн 18, 19:15 [21486576] Ответить | Цитировать Сообщить модератору |
YuRock Member Откуда: Донецк Сообщений: 3760 |
|
||
12 июн 18, 22:59 [21487010] Ответить | Цитировать Сообщить модератору |
SOFT FOR YOU Member [заблокирован] Откуда: Сообщений: 2761 |
Leonid, Я не уверен на счёт обобщённых хелперов, но что не нравится в лямбдах? Просто и со вкусом В Delphi вообще всё просто и со вкусом |
13 июн 18, 00:17 [21487093] Ответить | Цитировать Сообщить модератору |
Leonid Member Откуда: From nowhere Сообщений: 702 |
В Дельфях пока только анонимные методы есть - этакий "лямбда зародыш". До полноценных лямбд там как раком до Китая. Полноценная лямда это что-то типа: c => c.City == "Moscow" При том, что компилятор сам знает к какому типу привести "c" в данном примере, поскольку и в ДотНЕТ и в последних Жабах есть так называемый var - автовывод компилятором типа переменной. В Дельфях такого пока нет. |
||
13 июн 18, 00:38 [21487114] Ответить | Цитировать Сообщить модератору |
Siemargl Member Откуда: 010100 Сообщений: 6041 |
Так только кажется со стороны. Ни разу не встречался с ошибками из-за этого.
А тема про то, что к текстовому редактору прикрутили 51й язык (подсветка и интеллисенс)? Надо будет посмотреть, хотя говорят, что Электрон весьма прожорливое ч**о. |
||||||||
13 июн 18, 00:43 [21487116] Ответить | Цитировать Сообщить модератору |
Siemargl Member Откуда: 010100 Сообщений: 6041 |
Leonid, Если ты не заметил, то Ява на десктопе загнулась. По вполне объективным причинам. Так что Дельфи тут в выигрыше. Ява в Вебе тоже дышит на ладан. Я еще с интересом посмотрю, как она переживет Го в последней своей среде обитания. |
13 июн 18, 00:47 [21487118] Ответить | Цитировать Сообщить модератору |
YuRock Member Откуда: Донецк Сообщений: 3760 |
|
||
13 июн 18, 01:02 [21487128] Ответить | Цитировать Сообщить модератору |
Leonid Member Откуда: From nowhere Сообщений: 702 |
Я не адепт Жабы, но Дельфи за пределами бывшего Совка И Латинской Америки и почему-то Австралии вообще крайне редко где использовали, а теперь так и вообще позабыли. Даже на родине Андерса Хейлсберга, где тусуются одни из наших клиентов, и то уже дельфистов днем с огнем искать нужно. |
||
13 июн 18, 01:06 [21487129] Ответить | Цитировать Сообщить модератору |
SOFT FOR YOU Member [заблокирован] Откуда: Сообщений: 2761 |
Leonid, Видимо, я не знаю, что такое лямбда Приведи пример того, как лямбда на "крутых языках" не воспроизводима на дельфях |
13 июн 18, 01:18 [21487130] Ответить | Цитировать Сообщить модератору |
YuRock Member Откуда: Донецк Сообщений: 3760 |
Хотя я - не показатель, конечно, откуда я десктопы видел. |
||
13 июн 18, 01:21 [21487131] Ответить | Цитировать Сообщить модератору |
Leonid Member Откуда: From nowhere Сообщений: 702 |
По большому счету - это просто синтаксический сахар. Но он крайне удобен и куда более проще читаем, благодаря своей лаконичности в сравнении с анонимными методами, на которых и основан. Короче говоря - это просто красивее, быстрее и удобнее в написании. В Дельфях пока это невозможно как минимум по причине отсутствия поддержки компилятором автовывода типа переменной на момент компиляции ( чего-то типа var ). Рано или поздно Быдлокодеро и это своруют. Но IMHO лучше бы они сначала хелперы и дженерики до ума довели, т.е. уже полноценно своровали из, пользуясь твоей терминологией, "крутых языков". |
||
13 июн 18, 01:32 [21487139] Ответить | Цитировать Сообщить модератору |
SOFT FOR YOU Member [заблокирован] Откуда: Сообщений: 2761 |
Leonid, Давай ты меня не будешь посылать что-то читать. Я и сам тебя послать могу Я тебя попросил привести пример Нормально же общались ) |
13 июн 18, 01:40 [21487141] Ответить | Цитировать Сообщить модератору |
Siemargl Member Откуда: 010100 Сообщений: 6041 |
SOFT FOR YOU, Забей. Лямбы пришли не из "крутых" языков, а из хипстерских. В Яве, Шарпе, С++ это упрощения парадигмы. В реальности имеют весьма ограниченную удобную область применения, собственно почему в мейнстримные языки попали упрощенные варианты (может в JS достаточно сохранена идея, но зуб не дам). Для энтерпрайзного быдлокодинга просто вредно. Хочешь, посмотри примеры кода здесь, это упрощения, но все равно весьма непросто http://en.cppreference.com/w/cpp/language/lambda |
13 июн 18, 02:01 [21487151] Ответить | Цитировать Сообщить модератору |
Leonid Member Откуда: From nowhere Сообщений: 702 |
SOFT FOR YOU, я тебя никуда не посылал дальше чтения документации. И нормально с тобой и общаюсь. Я тебе простую конструкцию даже написал и конкретно объяснил глубинную причину, почему этот лямбда синтаксис не может быть пока реализована на Дельфи. Поэтому, извини, я не знаю чего тебе еще сказать. Вот тебе еще пример на вскидку: Без лямбды: IEnumerable<Order> query = orders.Where(delegate (Order o) { return o.Manager == "John"; });C лямбдой: var query = orders.Where(o => o.Manager == "John"); А на Дельфях ( если бы там были лямбды ) вместо анонимного метода для функции Where ты бы тоже теоретически писал что-то типа:
query := orders.Where(o -> o.Manager = 'John');
Компилятор зная тип переменной o: TOrder сам бы вывел нужную анонимную функцию-предикат для ф-ции Where |
||
13 июн 18, 02:15 [21487157] Ответить | Цитировать Сообщить модератору |
Leonid Member Откуда: From nowhere Сообщений: 702 |
На территориях обитания постсовков Дельфи даже и сейчас еще популярен не смотря ни на что и вопреки :) А с Жабой на дестопе я впервые столкнулся лет пятнадцать тому назад, когда на одном геолого-разведовательном судне за бугром побывал. Там Sun-ы стояли c Java Desktop System и почти все десктопное управленческое ПО на Жабе намалевано было. А позже похожее на предприятиях видел. В банках одно время так вообще почти поголовно не только серверная часть но дестоп на этом крутился. Но опять же очевидно, что не в Постсовке. А лично сам сейчас жабно-десктопные SmartSVN и SmartGIT на Винде и Линухе использую. |
||
13 июн 18, 04:09 [21487169] Ответить | Цитировать Сообщить модератору |
SOFT FOR YOU Member [заблокирован] Откуда: Сообщений: 2761 |
Leonid, Разве это не реализуется дельфовыми лямбдами? Да и читабельнее будет |
13 июн 18, 08:06 [21487248] Ответить | Цитировать Сообщить модератору |
Exteris Member Откуда: Новосибирск Сообщений: 968 |
Читал как-то про PascalABC.NET. Там есть реализация лямбда-выражений. |
13 июн 18, 08:53 [21487305] Ответить | Цитировать Сообщить модератору |
Siemargl Member Откуда: 010100 Сообщений: 6041 |
Смешались вместе кони, лямбды =) В обоих случаях тут используется лямбда, она же Closure == Замыкание. Только во втором случае она является анонимной ф-цией.
Автоматический же вывод типа (var, auto, etc) это отдельное, ортогональное понятие. Хотя конечно, краткости при использовании анонимных лямбд добавляет. Как я и говорил, тема чуть сложнее среднестатистического быдлокодера =) |
||||||
13 июн 18, 09:19 [21487352] Ответить | Цитировать Сообщить модератору |
Leonid Member Откуда: From nowhere Сообщений: 702 |
Ты сам попутал похоже понятия абстрактных лямбда исчислений с конкретными лямбда-выражениями.
Лямбда же выражение в СиПошарпаных и теперь в Жабнутых понятиях — это альтернативный и более удобный способ в данном случае определения анонимной функции (или анонимного класса в случае с Жабой). К слову сказать в С# это выражение может быть не только переведено в анонимную функцию, но и в дерево выражений. Но это уже отдельная тема по LINQ, поэтому и не будем здесь ею перегружать старчески-маразматические Дельфи-мозги.
Поэтому, нет никаких лямбда-выражений в Дельфях. Есть анонимные функции. Хочешь их формально притянуть за уши к лямбде лишь по принципу замыкания? |
||||||
13 июн 18, 10:37 [21487577] Ответить | Цитировать Сообщить модератору |
Siemargl Member Откуда: 010100 Сообщений: 6041 |
Leonid, Не надо изобретать терминов. Они уже давно устоялись. То что в С№ и в Д замыкания сделаны через делегаты, не делает их каким то отдельным классом функций -"выражений". Про Дельфи я как раз ничего не говорю - не нужна здесь такая функциональность, толком не к чему ее применять. Потому попрекать ее отсутствием - довольно бесполезно, как собаку 5й ногой. ЗЫ. Предлагаю отффтопик вынести в "Программирование". |
13 июн 18, 11:35 [21487778] Ответить | Цитировать Сообщить модератору |
Leonid Member Откуда: From nowhere Сообщений: 702 |
Ты явно путаешься в анонимных функциях/делегатах и выражениях ( судя еще по предыдущему посту ).
Дельфи итак ворует уже практически абсолютно все с СиШарп. Даже имена классов и методов. Своих идей чуть меньше чем 0 (ноль с перечеркнутой палочкой ;) ) Но только ворует иногда криво и не доводит до логического конца. Примеры уже приводил. Например, скоро в 10.3 Nullable типы данных появятся. И это своровали. Но вангую, что очередное кривое вживление имплантов старому деду - т.е. и лябда-выражения и автовывывод типа переменных не за горами. |
||||
13 июн 18, 12:08 [21487868] Ответить | Цитировать Сообщить модератору |
Dimonka Member Откуда: Сообщений: 1132 |
На дельфях уже почти так и пишут: OrderList := Manager.Find<TOrder>.Where(Linq['Manager'] = 'John').List; Не лямбды конечно, но по синтаксису почти тоже самое. |
||
13 июн 18, 12:13 [21487881] Ответить | Цитировать Сообщить модератору |
Leonid Member Откуда: From nowhere Сообщений: 702 |
Новых на этом уже не пишу. Но все "гениально стыренные" и "ловко прикрученные" нововедения в Дельфях прекрасно знаю и с интересом тестирую. |
||||
13 июн 18, 12:17 [21487893] Ответить | Цитировать Сообщить модератору |
Dimonka Member Откуда: Сообщений: 1132 |
|
||
13 июн 18, 12:40 [21488016] Ответить | Цитировать Сообщить модератору |
YuRock Member Откуда: Донецк Сообщений: 3760 |
В смысле - вернуть? Delphi5,6,7 отлично работают под последней сборкой Вынь10 (и всеми предыдущими). Скоро, кстати, Fluent Design поддерживать научатся ![]() |
||
13 июн 18, 14:20 [21488438] Ответить | Цитировать Сообщить модератору |
YuRock Member Откуда: Донецк Сообщений: 3760 |
Я дин. выделение памяти стараюсь вообще не использовать, если важна скорость. Не то, что "имитирую". Недавно сервер написал на пару сотен клиентов. По потоку на клиента. Так вот - в нём (в клиентских потоках) нет ни единого выделения памяти - всё на стеке (которого хватило 64k на поток). Т.ч. и "лок-фри менеджер памяти" не пригодился :) |
||
13 июн 18, 17:18 [21489091] Ответить | Цитировать Сообщить модератору |
Dmitry Arefiev Member Откуда: Сообщений: 9678 |
Не надо свои заблуждения выдавать за истину. Все сильно иначе ... |
||
13 июн 18, 17:19 [21489093] Ответить | Цитировать Сообщить модератору |
SOFT FOR YOU Member [заблокирован] Откуда: Сообщений: 2761 |
YuRock, Это во-первых, потому, что логика простая А во-вторых, такое количество потоков - тоже не есть гуд |
13 июн 18, 17:26 [21489113] Ответить | Цитировать Сообщить модератору |
SOFT FOR YOU Member [заблокирован] Откуда: Сообщений: 2761 |
defecator, Скажешь тоже Пользовательский уровень - это верх простоты и изящности Ни у кого нет такой обертки над строками в памяти Максимум, что ты обычно можешь вытянуть, в том же SAX, например, это указатель на символы и длину |
13 июн 18, 17:30 [21489127] Ответить | Цитировать Сообщить модератору |
YuRock Member Откуда: Донецк Сообщений: 3760 |
Ну смотря с чем сравнивать. Аутентификация, и затем обмен в обе стороны пакетами репликации и их обработка.
Смотря для чего. Основное время их работы - передача данных. Т.е. ожидание этих данных, сохранение происходит очень быстро (insert в базу закаченного пакета). А обработка - уже в другом месте - в пуле потоков по кол-ву процессоров. Т.ч. для [в основном] ожидающих потоков - 100-200 потоков - фигня. У меня вот сейчас на 32бит Win10 после перезагрузки уже больше 1000 каких-то потоков таскменеджер показывает, и ничего. |
||||
13 июн 18, 18:39 [21489272] Ответить | Цитировать Сообщить модератору |
softwarer Member Откуда: 127.0.0.1 Сообщений: 55199 Блог |
Когда-то мне тоже казалось, что регистронезависимость - это круто. Но постепенно я понял, что за четверть века работы так и не встретил ни одной ситуации, где бы она пригодилась, и единственное, чему она способствует - стилистическому разнобою, когда один называет переменную i, другой обращается к ней как к I, и это как-то работает. Я понимаю, что в своё время Вирт решил таким образом проблему платформозависимости, приравняв машины, где у символов были регистры, с теми, где их не было - но сейчас это уже неактуально, а в остальном - одни минусы. |
||
13 июн 18, 18:52 [21489297] Ответить | Цитировать Сообщить модератору |
defecator Member Откуда: Сообщений: 39112 |
я про тот лапшекод, который в исходниках. ТАКОЕ поддерживать - это себя не уважать. |
||
14 июн 18, 08:28 [21489966] Ответить | Цитировать Сообщить модератору |
Мимопроходящий Member Откуда: бурятский тундрюк, эсквайр Сообщений: 29548 |
13.06.2018 18:52, softwarer пишет: > в своё время Вирт решил таким образом проблему платформозависимости, приравняв машины, где у символов были регистры, с теми, где их не было а ведь лысеешь уже... и такая хрень в голове! Posted via ActualForum NNTP Server 1.5 |
14 июн 18, 13:24 [21490841] Ответить | Цитировать Сообщить модератору |
ВаСЁКПупкин
Guest |
alekcvp, У меня есть самописный конвертер
А воот так выглядит фаст фибаначи на cи
А так на дельфи через мой конвертер
[/spoiler] |
|||
14 июн 18, 14:18 [21491012] Ответить | Цитировать Сообщить модератору |
defecator Member Откуда: Сообщений: 39112 |
на каком основании из этого: int Fibonacci(int n) получилось это: function Fibonacci(n: Integer): Cardinal; ? Сдаётся мне, что кто-то несколько трындит ! |
|||||
14 июн 18, 14:22 [21491028] Ответить | Цитировать Сообщить модератору |
ВаСЁКПупкин
Guest |
defecator, На основание unsigned long Result = 1; Я не мог положится на возврат из функции, потому что не один компилятор и сам на него не полагается - исходя только из возврата
|
|
14 июн 18, 14:32 [21491064] Ответить | Цитировать Сообщить модератору |
defecator Member Откуда: Сообщений: 39112 |
так и знал, что ты рукам переписывал |
14 июн 18, 14:33 [21491071] Ответить | Цитировать Сообщить модератору |
SOFT FOR YOU Member [заблокирован] Откуда: Сообщений: 2761 |
Когда научишься писать быстрый код - он тоже будет лапшеобразным |
||||
14 июн 18, 14:39 [21491088] Ответить | Цитировать Сообщить модератору |
ВаСЁКПупкин
Guest |
defecator, Собираешь все return и смотришь тип переменной - которой будет собрана, тип переменной - переменная, которая хранится в базе, в базе ключ переменной - хранит информацию о типе переменной, и типе вложенности - самой переменной. Исходя из этого, из всех return (Массив в базе) Можно просмотреть все возможные типы - тип будет один, и надо будет выбрать общий подходящий, под это попадает переменная - которая имеет постоянный возврат, а не символический - статический, который бы и преобразовался в конечном итоге в integer но как есть unsigned long в типе возврата, мы не может позволить создать утечку в данных - переполнения, по этому мы выбираем в пользу unsigned long нежели чем integer и преобразовываем на стеке вывода в Delphi нужный тип Cardinal Вот так это и работает Неужели нельзя знать основ ? Или реально, delphi отупляет... Да, C++ Сложный Дядя, но он построен так, что способен глотнуть ошибки программиста и преобразовать в правильный кол. А Delphi что - же ? И не видала такого наверное |
14 июн 18, 14:39 [21491091] Ответить | Цитировать Сообщить модератору |
defecator Member Откуда: Сообщений: 39112 |
моя система видеонаблюдения перемалывает огромные потоки видео, и в ней нет ни строчки лапшекода. |
||||
14 июн 18, 14:44 [21491108] Ответить | Цитировать Сообщить модератору |
SOFT FOR YOU Member [заблокирован] Откуда: Сообщений: 2761 |
defecator, Это потому, что ты используешь чужой лапшекод А сам ничего оптимального написать не можешь |
14 июн 18, 14:50 [21491134] Ответить | Цитировать Сообщить модератору |
defecator Member Откуда: Сообщений: 39112 |
вся обработка видео написана с нуля лично, так что о чём ты не знаешь, о том и не говори. В системе нет вообще визуальных компонентов, потому что нет никаких визуальных интерфейсов, кроме браузерного |
||
14 июн 18, 14:58 [21491165] Ответить | Цитировать Сообщить модератору |
V.Borzov Member Откуда: Саратов Сообщений: 253 |
Один чел на собеседовании у нас сказал, что ученые доказали не так давно, что С++ настолько сложен и всеобъемлющ, что вся его мощь женщине открыться, например, не может. Мозгов женщине не хватает. Только мужик может освоить всю его глубину. Чел этот, кстати, даже результатами своего собеседования не поинтересовался, сбежал, узнав, что мы тут на Delphi программируем. А вот шеф задумался крепко, сказал даже мне, что, может, стоило программу-то складского учета на С++ писать... |
14 июн 18, 15:07 [21491185] Ответить | Цитировать Сообщить модератору |
SOFT FOR YOU Member [заблокирован] Откуда: Сообщений: 2761 |
Ты видеокодеки самолично писал? Ну-ну, втирай дальше ) |
||||
14 июн 18, 16:50 [21491529] Ответить | Цитировать Сообщить модератору |
defecator Member Откуда: Сообщений: 39112 |
видекодеки используются системные виндовые, кроме MJPEG, G.7xx - это всё самописное. но видеокодеки - это 1% от кода системы ![]() |
||||
14 июн 18, 18:04 [21491783] Ответить | Цитировать Сообщить модератору |
alekcvp Member Откуда: Сообщений: 1269 |
ВаСЁКПупкин,
|
|
14 июн 18, 20:46 [21492218] Ответить | Цитировать Сообщить модератору |
kealon(Ruslan) Member Откуда: Нижневартовск Сообщений: 4058 |
1 - странно костыль выдавать за преимущества 2 - фиговая штука - может конечно для питона и норм, всегда отключаю. 3 - зачем??? в паскале тип после имени объявляется 4 - чё-чё? |
||
15 июн 18, 09:53 [21492843] Ответить | Цитировать Сообщить модератору |
kealon(Ruslan) Member Откуда: Нижневартовск Сообщений: 4058 |
возможно отлаживать будет кое как совмещённые проекты если пошаманить, возникает иногда такая потребность а в общем без отладчика это творение нафиг не нужно Архитектурно выходит пшик с кучей дублируемого кода из компилятора. IDE для системных языков можно нормально сделать только с поддержкой компилятора, как например было сделано в BP 7.0. |
||
15 июн 18, 10:06 [21492896] Ответить | Цитировать Сообщить модератору |
wadman Member Откуда: Санкт-Петербург Сообщений: 24948 |
Кроме делфей не пользовал другие иде? В идее это настолько привычные фичи, что диву даюсь, насколько делфи отстает от норм по удобствам. |
||||
15 июн 18, 10:35 [21492960] Ответить | Цитировать Сообщить модератору |
JaDi Member Откуда: Сызрань, Россия Сообщений: 3983 |
Делфи тупо не осилит всё это в реальном времени парсить и анализировать, чтобы подобные фичи заработали. Наверняка программеры эмбы такое пытались у себя делать, но вылезла куча ошибок, и они забили. Когда банальный поиск возможных uses по ctrl+shift+a вылетает в 80% случае -- о других фичах можно и не мечтать. |
||
15 июн 18, 10:43 [21492995] Ответить | Цитировать Сообщить модератору |
kealon(Ruslan) Member Откуда: Нижневартовск Сообщений: 4058 |
wadman, для плюсов пользовал студию, пелес (для си), эклипс, кдев для явы - эклипс (пока самый работоспособный вариант) для питона - PyCharm (та же идея, самое лучшее из всего что видел для питона) для паскаля - BP7, VP, Delphi от 3-ки до XE10, Lazarus от 1.1 В моём рейтинге пока лидер по тормознутости и неудобству это студия Идея хороша на скриптовых языках, на компилируемых такой подход буксует на более менее нормальных объёмах Для плюсов пока лучше кдев не встречал, если нет надобности лезть в апи винды, то идеальный вариант, а с учётом того что я её щас спокойно запускаю на винде это явный фаворит. по поводу дельфи - текущая 10-ка это сборище багов и говорить о каких-то новых функциях, пока текущие через пень колоду работают, смысла не имеет. |
15 июн 18, 11:03 [21493084] Ответить | Цитировать Сообщить модератору |
Kazantsev Alexey Member Откуда: Сообщений: 3265 |
Использовал/зую. Первым делом ищю где вся эта факаная автоматизация отключается. Код херачить пулей я и так могу, а мыслительные процессы оно не ускоряет. |
||
15 июн 18, 14:02 [21493767] Ответить | Цитировать Сообщить модератору |
defecator Member Откуда: Сообщений: 39112 |
+100500 тоже всегда выключаю всякие подстрочники, автовставки и прочую нечисть |
||||
15 июн 18, 14:15 [21493834] Ответить | Цитировать Сообщить модератору |
wadman Member Откуда: Санкт-Петербург Сообщений: 24948 |
"Автомату не доверяю, механика моё", да. |
||
15 июн 18, 14:58 [21494029] Ответить | Цитировать Сообщить модератору |
чччД__
Guest |
Анало гич но. Темплейты цикла фор, например, всегда бесполезны, дольше исправлять, чем сразу набрать, что нужно. И т.д., отвлекают только. |
||||
16 июн 18, 11:56 [21495899] Ответить | Цитировать Сообщить модератору |
Топик располагается на нескольких страницах: 1 2 3 4 5 [все] |
Все форумы / Delphi | ![]() |