Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Which modules should we bundle into vital-core? #2

Open
lambdalisue opened this issue Jun 14, 2018 · 11 comments
Open

Which modules should we bundle into vital-core? #2

lambdalisue opened this issue Jun 14, 2018 · 11 comments
Labels
discussion Let's discuss

Comments

@lambdalisue
Copy link
Member

lambdalisue commented Jun 14, 2018

とりあえず「必要」か「不要」かの議論は置いておいて、まず core として入れたいモジュールを募集します。ある程度数が揃う or 時間が経ったら close します。

なお vitalizer が適切に外部のモジュールの依存関係を解決できると仮定しましょう(まだ、そんな機能はないけど)。その為、あくまでもモジュール単体の機能に絞って欲しいか?という焦点で考えられると良いと思います。

なお、何が core に入るべきか?に関しては #1 を参考にしてください(ここの定義が曖昧なのは敢えてです。現段階ではキツキツに縛るつもりはありません)。

モジュールの一部や外部モジュールも可とします。一部の場合は関数名まで明記していただけると助かります

@lambdalisue
Copy link
Member Author

lambdalisue commented Jun 14, 2018

  • Vital.Async.Promise
  • Whisky.System.Job
  • Whisky.Async.CancellationToken
  • Whisky.Async.CancellationTokenSoruce
  • DateTime
    • 古い Vim サポートを落とした軽量版
  • Stream

@lambdalisue lambdalisue added the discussion Let's discuss label Jun 14, 2018
@ujihisa
Copy link

ujihisa commented Jun 14, 2018

Besides what @lambdalisue mentioned, I recommend the following.

I believe core should keep modules that many Vim plugins use, no matter what kind of Vim plugins are. Particularly things that makes it easy to debug are more welcome.

List of modules that vitalizer uses:

let s:P = s:V.import('Prelude')
let s:L = s:V.import('Data.List')
let s:S = s:V.import('Data.String')
let s:F = s:V.import('System.File')
let s:FP = s:V.import('System.Filepath')
let s:Mes = s:V.import('Vim.Message')
let s:Dict = s:V.import('Data.Dict')
let s:I = s:V.import('Data.String.Interpolation')

from https://github.com/vim-jp/vital.vim/blob/748bcc2ce8f953500e90a6117ea1825ff7cca6eb/autoload/vitalizer.vim#L11

@ujihisa ujihisa changed the title どのモジュールを core として提供したいか? Which modules should we bundle into vital-core? Jun 14, 2018
@lambdalisue
Copy link
Member Author

とりま必要か否かは置いておきましょう。例えば個人的にはScriptLocalは入れるべきではないと思っていますが、それを議論するにはこの余白は狭過ぎるのでw
まずは各々の趣味で入れるべき奴を羅列したいです。

@tyru
Copy link
Member

tyru commented Jun 14, 2018

#2 (comment)
vital-Whisky is MIT License.
vital-core is NYSL.
They are incompatible...

@lambdalisue
Copy link
Member Author

ライセンス!Whisky は僕なので何でも良いですが、別枠で議論した方が良さそうですね

@tyru
Copy link
Member

tyru commented Jun 14, 2018

Whisky というか vital-core に入れるやつだけでも NYSL にしてもらえるならいいですが、大丈夫かなーと思ったので。
vital-core のライセンスは今まで通り NYSL の想定でした。
もし変えるならまたコミットした事のある人全員の同意を得なきゃならなくなりそうで辛い… (確信)

@ujihisa
Copy link

ujihisa commented Jun 14, 2018

  • Text.Vim scriptParser (a dream module. vital version of vimlparser)

@lambdalisue
Copy link
Member Author

もし変えるならまたコミットした事のある人全員の同意を得なきゃならなくなりそうで辛い… (確信)

@ujihisa さんも #3 で言及しているとおり NYSL なのでその必要はないですね

@tyru
Copy link
Member

tyru commented Jun 14, 2018

なるほど

@tsuyoshicho
Copy link

ここ最近でVitalを使った人間としてコメント

System.Process.Vimprocはプラグイン依存なので、依存解決システムが実現したら、バックエンドとして自動利用されるようなnon-coreモジュールじゃないかなという感想

こんな感じ

  1. Vitalize +Plugin.Vimproc
  2. vital#{plugin-name}#import('System.Process')するとVimprocが利用テーブルにすでにはいっていて利用できる

あえて1.しないでプラグイン開発したら、Vimprocがあっても利用されない(というのをプラグイン開発者が選べる)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
discussion Let's discuss
Projects
None yet
Development

No branches or pull requests

4 participants