配列定義
# 同時に初期値を与える
val arr = Array( 1, 2, 3 )
( val arr = Array.apply( 1, 2, 3 ) と同義 )
# 初期化だけで後で値を与える
val arr = new Array[ Int ](3)
arr(0) = 1
arr(1) = 2
arr(2) = 3
( arr(0) = 1 は、arr.update( 0, 1 )と同義)
# var で変数だけ定義
var arr: Array[ Int ] = null
arr = new Array(10)
配列の要素を処理
array.foreach( v => 関数本体 )
array.foreach( ( v: 型 ) => 関数本体 )
# 部分適用された関数(partially applied function)
array.foreach( 式 )
for( v <- array ) 式
List定義
Arrayはミュータブルなので、可能な場合はListを使う方がベター
#Listの連結
List( 1, 2 ) ::: List( 3, 4 )
# List の先頭に追加
1 :: List( 2, 3 )
# 末尾に追加
List ( 1, 2 ) :+ 3
# 空のList Nil
1:: 2 :: 3 :: Nil
res0: List[Int] = List( 1, 2, 3)
注意:
先頭に追加はO(1)だが、末尾追加はO(n)なので、基本的には先頭追加を考える。
先頭追加で最後にreverse することで代用できる場合はそうする。
for式
for( i <- 0 to 2 ) 式
( 0 to 2 は、0.to( 2 ) と同義 scala.collection.immutable.Range.Inclusive = Range(0, 1, 2))
(まだ途中)
calmoka
Jul 3, 2013
Scala メモ
Posted by
calmoka
at
10:33 AM
Email ThisBlogThis!Share to XShare to FacebookShare to Pinterest
0
comments
Jan 22, 2013
Mac OSX: コマンドで less を css に変換する
npm で、less をインストールし、lessc コマンドを使って、less を css に変換します。
(node.js と npm がインストールされている前提とします。)
(node.js は、ports、brew、公式サイトで配布されているインストーラーのいずれかを使ってインストールします。)
参考サイト
http://lesscss.org/
(node.js と npm がインストールされている前提とします。)
(node.js は、ports、brew、公式サイトで配布されているインストーラーのいずれかを使ってインストールします。)
$ node -v v0.8.17 $ npm -v 1.2.0 $ sudo npm install -g less (私は、グローバルにインストールしています。) $ which lessc /usr/local/bin/lessc $ lessc -v lessc 1.3.3 (LESS Compiler) [JavaScript] $ lessc -x main.less main.min.css (オプションの詳細は、less -h を参照)
参考サイト
http://lesscss.org/
Posted by
calmoka
at
9:24 PM
Email ThisBlogThis!Share to XShare to FacebookShare to Pinterest
0
comments
Nov 16, 2011
CentOS に 最新版の munin をインストール
epel の リポジトリがない場合は追加
epel の enabled を 0 にする。(お好みで)
dag の リポジトリがない場合は追加
yum でインストール
参考サイト
http://munin-monitoring.org/wiki/LinuxInstallation
rpm --import http://download.fedora.redhat.com/pub/epel/RPM-GPG-KEY-EPEL rpm -ivh http://download.fedora.redhat.com/pub/epel/5/x86_64/epel-release-5-4.noarch.rpm※ 上記は64bitマシン
epel の enabled を 0 にする。(お好みで)
# vi /etc/yum.repo.d/epel.repo [epel] name=Extra Packages for Enterprise Linux 5 - $basearch #baseurl=http://download.fedoraproject.org/pub/epel/5/$basearch mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=epel-5&arch=$basearch failovermethod=priority enabled=0 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL
dag の リポジトリがない場合は追加
# vi /etc/yum.repo.d/dag.repo [dag] name=Dag RPM Repository for Red Hat Enterprise Linux baseurl=http://apt.sw.be/redhat/el$releasever/en/$basearch/dag gpgcheck=1 gpgkey=http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt enabled=0
yum でインストール
yum --enablerepo=dag --enablerepo=epel install munin munin-node※ munin, munin-node はそれぞれ必要に応じて
参考サイト
http://munin-monitoring.org/wiki/LinuxInstallation
Posted by
calmoka
at
10:55 AM
Email ThisBlogThis!Share to XShare to FacebookShare to Pinterest
0
comments
Labels:
centos,
monitor,
munin,
yum
Nov 15, 2011
Exim で SMTP ゲートウェイ の設定
/etc/exism/exim.conf の ROUTERS セクションの一番初めに以下の要領で記述します。
これ、ROUTERS セクションの一番最後に追記して、全然設定が反映されず、数時間ハマってしまいました。。
参考サイト
http://www.hserus.net/wiki/index.php/Exim
send_to_gateway: driver = manualroute domains = !+local_domains transport = remote_smtp route_list = * ispgw.smtp.host
これ、ROUTERS セクションの一番最後に追記して、全然設定が反映されず、数時間ハマってしまいました。。
参考サイト
http://www.hserus.net/wiki/index.php/Exim
Posted by
calmoka
at
11:34 PM
Email ThisBlogThis!Share to XShare to FacebookShare to Pinterest
0
comments
Labels:
centos,
exim
Nov 1, 2011
javascript プロパティ値の存在チェック
単純に、プロパティが存在しているかチェック
プロパティ継承を辿らず、自身のプロパティとして存在してるかチェック
'key' in obj
プロパティ継承を辿らず、自身のプロパティとして存在してるかチェック
obj.hasOwnProperty('key');
Posted by
calmoka
at
4:21 PM
Email ThisBlogThis!Share to XShare to FacebookShare to Pinterest
0
comments
Labels:
javascript