Size: a a a

2020 July 02

YS

Yaroslav Schekin in pro.vim
Sergey Skvortsov
Нет, не намекают
Чем плох подход neovim с lua?
Зачем развивать непонятную поделку?
Плохо, что не намекают. Любой язык без библиотек / написанных на нём программ (а это практически так для vim и lua, только "библиотеки" — это vim API в lua, в "программы" — plug-ins) практически бесполезен.
источник

SS

Sergey Sikorskiy in pro.vim
Lama Lover
Прикольно
Там, кстати, не только интерпретатор на ассемблере. Трассировщик собирает код из кусочков, которые тоже написаны на ассемблере.
Едитственное, на чем можно попытаться “сделать” LuaJIT - это динамическая чаcть языка (алгоритмы для type deduction, inline caching, e.t.c.)
llvm, кстати, практически никак не поддерживает языки с динамической типизацией. (Во всяком случае так было раньше)
источник

LL

Lama Lover in pro.vim
Sergey Sikorskiy
Там, кстати, не только интерпретатор на ассемблере. Трассировщик собирает код из кусочков, которые тоже написаны на ассемблере.
Едитственное, на чем можно попытаться “сделать” LuaJIT - это динамическая чаcть языка (алгоритмы для type deduction, inline caching, e.t.c.)
llvm, кстати, практически никак не поддерживает языки с динамической типизацией. (Во всяком случае так было раньше)
Так динамическая типизация приводится к статической как минимум через duck typing . Я лично что-то такое проворачивал когда игрался с llvm дома
источник

SS

Sergey Skvortsov in pro.vim
Yaroslav Schekin
Плохо, что не намекают. Любой язык без библиотек / написанных на нём программ (а это практически так для vim и lua, только "библиотеки" — это vim API в lua, в "программы" — plug-ins) практически бесполезен.
Конечно, если мы говорим про vim, то сейчас lua ничем не отличается от других языков
источник

SS

Sergey Sikorskiy in pro.vim
Lama Lover
Так динамическая типизация приводится к статической как минимум через duck typing . Я лично что-то такое проворачивал когда игрался с llvm дома
Если бы все было так просто …
В V8 в свое время было 5 уровней inline cache. Сейчас уже не знаю что у них там и как. Больше не слежу.
источник

LL

Lama Lover in pro.vim
Sergey Sikorskiy
Если бы все было так просто …
В V8 в свое время было 5 уровней inline cache. Сейчас уже не знаю что у них там и как. Больше не слежу.
Да, это правда, что так легко только в теории получается)
источник

YS

Yaroslav Schekin in pro.vim
Sergey Skvortsov
Конечно, если мы говорим про vim, то сейчас lua ничем не отличается от других языков
А раз не отличается, она именно для vim примерно так же бесполезна, как и прочие. ;)
И вообще, что конкретно Вы имеете против vimscript как такового (т.е. если почитать :help eval до пункта "4. Builtin Functions")?
Меня лично бесит именно vim API в этом "счастье" (т.е. то, что в этом разделе описано потом), и, если у какой-то "замены" vimscript-а оно будет такое же — зачем она нужна?
источник

SS

Sergey Skvortsov in pro.vim
Yaroslav Schekin
А раз не отличается, она именно для vim примерно так же бесполезна, как и прочие. ;)
И вообще, что конкретно Вы имеете против vimscript как такового (т.е. если почитать :help eval до пункта "4. Builtin Functions")?
Меня лично бесит именно vim API в этом "счастье" (т.е. то, что в этом разделе описано потом), и, если у какой-то "замены" vimscript-а оно будет такое же — зачем она нужна?
Если забыть про все ужасы синтаксиса и отсутствия библиотек, в первую очередь конкретные реализации vimscript слишком медленные, и эта проблема вот никак быстро не решается
источник

YS

Yaroslav Schekin in pro.vim
Sergey Skvortsov
Если забыть про все ужасы синтаксиса и отсутствия библиотек, в первую очередь конкретные реализации vimscript слишком медленные, и эта проблема вот никак быстро не решается
> Если забыть про все ужасы синтаксиса

Какие конкретно? И по сравнению с чем?

> и отсутствия библиотек

Какие библиотеки Вам нужны в vimscript?

> конкретные реализации vimscript слишком медленные

"Слишком медленные" для каких именно задач?
Мне вот в подавляющем большинстве случаев практического использования его производительность совершенно не интересует (т.е. она более чем приемлема).
источник

SS

Sergey Skvortsov in pro.vim
Yaroslav Schekin
> Если забыть про все ужасы синтаксиса

Какие конкретно? И по сравнению с чем?

> и отсутствия библиотек

Какие библиотеки Вам нужны в vimscript?

> конкретные реализации vimscript слишком медленные

"Слишком медленные" для каких именно задач?
Мне вот в подавляющем большинстве случаев практического использования его производительность совершенно не интересует (т.е. она более чем приемлема).
> Какие именно — вкусовщина, но мне не нравится примерно все, начиная от сокращений и заканчивая . для конкатенации строк.
> Не отказался бы от биндингов к hyperscan. Конечно, есть libcall, но с ними не уедешь далеко
> Вам повезло, здорово:)
источник

YS

Yaroslav Schekin in pro.vim
Sergey Skvortsov
> Какие именно — вкусовщина, но мне не нравится примерно все, начиная от сокращений и заканчивая . для конкатенации строк.
> Не отказался бы от биндингов к hyperscan. Конечно, есть libcall, но с ними не уедешь далеко
> Вам повезло, здорово:)
"Вкусовщины" недостаточно, чтобы называть синтаксис "ужасным", IMHO. Т.е. синтаксис-то похож на синтаксис многих широко используемых языков, и люди их как-то терпят. ;)

> начиная от сокращений

Это да. Какого ... Bram их вообще придумал, мне лично не совсем понятно.

> и заканчивая . для конкатенации строк.

Теперь уже ".." — "." теперь deprecated. ;)

> Не отказался бы от биндингов к hyperscan.
Это вот этому https://github.com/intel/hyperscan ? А зачем Вам это в vimscript?

> Вам повезло, здорово:)

И почти всем так повезло, нет?
Т.е. на vimscript-е не пишут (или не должны, по крайней мере) высокопроизводительных приложений. ;)
источник

ND

Nikita Domnickij in pro.vim
>"Вкусовщины" недостаточно, чтобы называть синтаксис "ужасным", IMHO. Т.е. синтаксис-то похож на синтаксис многих широко используемых языков, и люди их как-то терпят. ;)
это на какие?
источник

G

GNU/Vsevolod in pro.vim
Можно ли в виме дополнение комманд настроить таким образом, чтобы подсказки были не по начальной строке?
например
:e lock<Tab>
hints:
Cargo.lock

Наподобие, как в zsh
источник

YS

Yaroslav Schekin in pro.vim
Nikita Domnickij
>"Вкусовщины" недостаточно, чтобы называть синтаксис "ужасным", IMHO. Т.е. синтаксис-то похож на синтаксис многих широко используемых языков, и люди их как-то терпят. ;)
это на какие?
Это на всякие там Visual Basic-и, Pascal-и и PL[pg]SQL-ы (и да, они на самом деле куда более популярны, чем кажется, к сожалению — см. tiobe и всякие опросы). ;)
источник

ND

Nikita Domnickij in pro.vim
фу
источник

SS

Sergey Sikorskiy in pro.vim
GNU/Vsevolod
Можно ли в виме дополнение комманд настроить таким образом, чтобы подсказки были не по начальной строке?
например
:e lock<Tab>
hints:
Cargo.lock

Наподобие, как в zsh
Попробуйте Ctrl-d …
источник

G

GNU/Vsevolod in pro.vim
Sergey Sikorskiy
Попробуйте Ctrl-d …
Показывает просто список файлов в тек. директории
источник

SS

Sergey Sikorskiy in pro.vim
GNU/Vsevolod
Показывает просто список файлов в тек. директории
Sorry, это у меня set wildmode=list:longest,full стоит ...
источник

YS

Yaroslav Schekin in pro.vim
GNU/Vsevolod
Можно ли в виме дополнение комманд настроить таким образом, чтобы подсказки были не по начальной строке?
например
:e lock<Tab>
hints:
Cargo.lock

Наподобие, как в zsh
Про встроенное command line completion написано вот тут (и по ссылкам):
:help cmdline-completion
Посмотрите, есть ли там такая возможность (я просто особо не пользуюсь / сходу не помню).
источник

SS

Sergey Sikorskiy in pro.vim
Да, в cmdline-completion много чего полезного можно найти ...
источник