だいきちメモリアルスマートフォン用の表示で見るだいきちメモリアルブログですこの広告は、90日以上更新していないブログに表示しています。2018-08-21公式Perlチュートリアル先日のブログに書いたとおりPerl公式のチュートリアルを学んでいる。これらのチュートリアルは懇切丁寧に記されておりPerlのチュートリアルに対しても同じようなものを想定していた。内容は最低限Perlの基礎とかコンピュータ・サイエンスの基礎などの知識が必要とされる内容だった。先にPerlの基礎を学んでいたおかげで特に問題無く読み進めらることができたが、このチュートリアルは私のチュートリアルに対する概念は大きく崩すことになる内容だ。このチュートリアルだがちょっとしたジョークを交えた文章で書かれており読んでいると以外に楽しめる内容になっている。内容もPerlの細かな挙動について触れられており、こういったところに新たな発見・気付きを得られるのは学ぶ上での喜びだろう。書いてもいいが、分かり難いので多分書かない尚、配列やハッシュに格納出来るのはスカラー値だけなのでネストするデータ構造などが扱えない。これを解決するために参照というスカラー値を作って格納するらしい。${$href}{"no"}正規表現Perlは文字列操作が凄いというだけあってかなりボリュームが高い内容となっていた。基本的な部分にのみ目を通して読み飛ばした。以下は基本的な部分の覚書である。/(ping).*(!!)$/);スレッドPerlではスレッドを利用することができるらしい。Perlのスレッドはスレッドセーフらしいので、スレッドを生成した時点でデータがスレッド内にコピーされる。(配列やハッシュの参照を渡してみたところ、参照すらも(参照先にある実態も)コピーされました)※スレッドセーフなのは、スレッド生成時にすべてのデータをコピーするから。データ以外(chdirなどでプロセスレベルで影響を与えるもの)はすべてのスレッドに影響を及ぼしてしまう。サブルーチンの参照を渡すと、その処理をスレッド内で行ってくれる。`join`メソッドを呼び出すと、スレッドの完了を待機、戻り値がある場合は取得、スレッドの後始末を行ってくれる。スレッドの後始末をしないコードはエラーになる。`detach`メソッドはスレッドの後始末を行うだけ。スレッドが実行中であっても処理結果が出力される前に`detach`を呼び出せばその結果を得ることは出来ない。$thread->detach();上記はスレッドの基本的な利用方法でデータのシェア、キューの存在やセマフォ等も存在しますが、これらが必要になるケースは稀だろうということで軽く読み進めるだけに留めておいた。*2オブジェクトパールのクラスはパッケージ。パッケージ名からメソッドを呼び出せるHuman->Something;オブジェクトのコンストラクタは、blessを内部で呼び出すサブルーチン。コンストラクタの名前は何でもよい。}オブジェクトの継承には@ISA構文を利用する。暗黙的にすべてのオブジェクトはUNIVERSALクラスを継承する。どこにも無い場合にAUTOLOADメソッドを呼び出す。Dogパッケージにはcryメソッドが無いが、Animalを継承しているので呼び出せる。Dog->cry;オブジェクトに関する内容がかなり濃密なので、詳細はまた別途学習することにする。退職しましたSwiftで利用できるLooseCodableというライブラリを作った月別アーカイブはてなブログをはじめよう!tanaka-hisasiさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。