by shigemk2

当面は技術的なことしか書かない

プライマリコンストラクタを作ろう

The primary constructor of a Scala class is a combination of: The constructor parameters Methods that are called in the body of the class Statements and expressions that are executed in the body of the class

なお、Scalaのコンストラクタはこんなふうに説明されている。

Scalaクラスメモ(Hishidama's Scala class Memo)

classのブロックの中に直接処理を書くのがコンストラクターになる。

pc.scala

f:id:shigemk2:20150220002131p:plain

2>&1についての小咄

たとえばこういうシェル芸があったとします。

(echo "to stderr" >&2 ; echo "to stdout" ) 2>&1 >> somefilewhat
(echo "to stderr" >&2 ; echo "to stdout" ) >> somefilewhat 2>&1

書き方が違うのですから結果が違うのはまあ当然として、キーワードは2>&1

大変ググラビリティの低いワードでございます。と思ったら普通に検索できた。

先に2>&1で標準エラー出力をリダイレクトしてからそれをファイルにリダイレクトすると標準出力しかファイルにリダイレクトされないというはなし。

標準出力とかは(僕の中では)結構難しいところですが、

実際のリダイレクトの処理は、コマンドラインの左から右へ、ファイルディスクリプタをオープン/クローズしながら進められる

つまり、リダイレクトの処理は都度切り捨てられているという理解です。

f:id:shigemk2:20150220194116p:plain

参考リンク

shell - cmd > /dev/null 2>&1」の話 - Qiita

シェルのリダイレクトにまつわる失敗