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

ファイナライザが欲しい #184

Open
mattn opened this Issue Mar 30, 2012 · 10 comments

Comments

Projects
None yet
4 participants
@mattn
Member

mattn commented Mar 30, 2012

vimでOOするならdictを使う訳ですが、コンストラクタは NewFoo() で我慢するとしてデストラクタはなんとかしたいです。
ただdictにデストラクタ専用の足を生やすのは言語仕様を変えてしまう事になりかねないので、ファイナライザはどうかと思いました。
例えばvim内部で、ファイナライザが設定されたdict一覧をもっておき

let foo = {}
call setfinalizer(foo, function('Foo_destuctor')

とされたら上記一覧に追加、dictを消してる箇所で一覧に含まれていたらファイナライザを走らせるという仕組みです。

安直に考えただけなので、穴があるかもしれませんが、実装されたらそれなりに使えるかもしれません。
もちろん、1個のオブジェクトに対して1個設定する物なので他のソースから上書きされかねないですが、現状よりは良いかなーと思いました。

@koron

This comment has been minimized.

Show comment
Hide comment
@koron

koron Mar 30, 2012

Member
Member

koron commented Mar 30, 2012

@mattn

This comment has been minimized.

Show comment
Hide comment
@mattn

mattn Mar 30, 2012

Member

ない

Member

mattn commented Mar 30, 2012

ない

@koron

This comment has been minimized.

Show comment
Hide comment
@koron

koron Mar 30, 2012

Member

え?w

Member

koron commented Mar 30, 2012

え?w

@mattn

This comment has been minimized.

Show comment
Hide comment
@mattn

mattn Mar 30, 2012

Member

や き に く 食 べ た い

Member

mattn commented Mar 30, 2012

や き に く 食 べ た い

@koron

This comment has been minimized.

Show comment
Hide comment
@koron

koron Mar 30, 2012

Member

僕 は 肉 野 菜 炒 め

Member

koron commented Mar 30, 2012

僕 は 肉 野 菜 炒 め

@withgod

This comment has been minimized.

Show comment
Hide comment
@withgod

withgod Mar 30, 2012

Member

mattn++

Member

withgod commented Mar 30, 2012

mattn++

@mattn

This comment has been minimized.

Show comment
Hide comment
@mattn

mattn Mar 30, 2012

Member

ま だ や っ て な い

Member

mattn commented Mar 30, 2012

ま だ や っ て な い

@h-east

This comment has been minimized.

Show comment
Hide comment
@h-east

h-east Mar 30, 2012

Member

正直、ファイナライザよりもファイナンシャルプランナーが欲しいです。
これが実装されていないVimはもはや時代遅れです。
一刻も早くマネタイズして!ソーシャルエディタ!!
返してっ!お金返してっ!

Member

h-east commented Mar 30, 2012

正直、ファイナライザよりもファイナンシャルプランナーが欲しいです。
これが実装されていないVimはもはや時代遅れです。
一刻も早くマネタイズして!ソーシャルエディタ!!
返してっ!お金返してっ!

@mattn

This comment has been minimized.

Show comment
Hide comment
@mattn

mattn Mar 30, 2012

Member

まずはバッファ運用の計画から始めましょう。

Member

mattn commented Mar 30, 2012

まずはバッファ運用の計画から始めましょう。

@h-east

This comment has been minimized.

Show comment
Hide comment
@h-east

h-east Mar 30, 2012

Member

奥さん:「主人が編集したバッファを保存せずに大量に隠しているみたいで...」

Member

h-east commented Mar 30, 2012

奥さん:「主人が編集したバッファを保存せずに大量に隠しているみたいで...」

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment