2017-09-14 16 views
7

Unixソケットを使用してmpvと通信したいと思いますが、Perl   6はこれを行うための高水準インターフェースを提供していません。だから私はそれのための少しのモジュールを書くことができ、深く掘り下げ始め、IO::Socket::INETの実装を見つけて、NQPのオペレーションnqp::socketnqp::connectについて学んだと思った。Perl 6でUnixソケットを扱う方法はありますか?

しかし、私はNQP operations listのものについては何も言及していませんでした。それらは伝統的なBSDソケットAPIとはかなり異なるようです。だから私は質問したい:それらの2つは、UNIXソケットを作成し、それに接続することができますか?もしそうなら、どうですか?それとも別の方法がありますか?

答えて

2

今は、NativeCallインターフェイスを使用してCレベルの関数を呼び出すのが最善の方法だと思います。 IO :: Socket :: UNIXが考えられたことを示唆する古い設計ドキュメントがいくつかあります。しかし、言語仕様の現代的なリリース(まだ)にはなっていません。

+3

ありがとう、私はcharlのように動作する 'Inline :: Perl5'によってPerl 5の' IO :: Socket :: UNIX'を使って解決しました。私はちょうどネイティブソリューションがあるかどうかを知りたがっていました。 – Ramillies

+1

私はパイプとunixソケットを追加する予定ですが、それはmoarハッキングを必要とします(それほど些細なことではありません)。 –

+0

@Ramilliesはあなたのために十分にうまくいくうれしい嬉しいものです。 C APIのNativeCallは、よりネイティブなソリューションになります。 Cの関数はPerl 5 APIとほぼ同じように見えるので、おそらくそれほど恐ろしいことではありません。 –

関連する問題