投稿

7月, 2017の投稿を表示しています

Scala開発、関数型言語での開発メモ

イミュータブルデータを使うことで防御的なプログラミングの必要性が減少する。(p.55) プログラミングには大きく2つの考え方がある。処理を行う手続きに通目する考え方と、処理の結果「何」を得た以下に注目する考え方。(p.56参考) スプレットシートは「何」に注目したソフトウェア。セルを評価する順番や、特定のセルの変更によってどのセルを再計算させるかなど、手続きを書く必要がない(手続き的な指示を行わない)。スプレットシートの計算エンジンが推論してくれる。再計算された結果に注目する。(p.56参考) レックス・スプーン ブラク・エマー エイドリアン・モース フィリップ・ハラー ドン・シム 参考図書 『Scalaプログラミング入門 関数型オブジェクト指向言語の楽しい学び方』(Beginning Scala)、デイビット・ポラック(David Pollak)、大塚庸史訳、日経BP社、2010 『Scala関数型デザイン&プログラミング Scalazコントリビューターによる関数型徹底ガイド』、Paul Chiusano、Rúnar Bjarnason、クイープ訳、インプレス、2015 『Scalaスケーラブルプログラミング 第3版』、Martin Odersky、Lex Spoon、Bill Venners、長尾高弘訳、インプレス、2016

Ubuntu における Firefox Sync、Firefox アカウントの設定

※Ubuntu 17.10では「Resolve」欄に何も設定されていないデフォルトで問題なくなりました。 現象 Ubuntu において、Firefox Syncができない場合や、Firefox アカウントの設定ができない場合(Syncしようとすると真っ白な画面に遷移する)、Ubuntu既定(デフォルト)のDNS設定が原因です。 解決方法としては Mozilla のサービスを使うために、なんだか妙なのですが、Google の DNS を設定すれば解決します。 設定方法 /etc/systemd/resolved.conf の編集 「Resolve」欄にコメント付きで記載されている「DNS=8.8.8.8」「8.8.4.4」はGoogleのDNSです。 この行のコメント「#」を消して有効にするか、行コピーして「#」消して有効にします。 プロバイダーから提供されているDNSサーバーを記述しても構いません。 GoogleのDNSサーバーを設定する例 $ sudo vi /etc/systemd/resolved.conf [Resolve] #DNS= #FallbackDNS=8.8.8.8 8.8.4.4 2001:4860:4860::8888 2001:4860:4860::8844 DNS=8.8.8.8 8.8.4.4 2001:4860:4860::8888 2001:4860:4860::8844 プロバイダーから提供されているDNSサーバーを設定する例 [Resolve] DNS=192.168.0.1 systemd-resolve サービス再起動 $ sudo systemctl restart systemd-resolved.service 設定確認 「systemd-resolve --status」コマンドで、DNSサーバー「8.8.8.8」「8.8.4.4」が設定されていることを確認します。 もしくはプロバイダーから提供されているDNSサーバーが設定されていることを確認します。下記の例では「192.168.0.1」です。デフォルトゲートウェイとDNSサーバーが同じIPアドレスになっているプロバイダーでよくある例です。 $ sys

Debian 8 (jessie)、Ubuntu 15.04 (Vivid Vervet) で起動時に a start job running is for dev-disk-uuid xxxxx エラーがでる件

2015/06/12 9:08公開記事 /etc/fstabに定義されている swap パーティションの uuid が古くなってます。 (1) swap の uuid を確認 swapパーティションをsda6 にしている場合 ------------------------------- $ ls -l /dev/disk/by-uuid | grep sda6 lrwxrwxrwx 1 root root 10  6月 12 08:39 13fe0bbc-cb67-4ff8-ab0c-5d1f3ed79e09 -> ../../sda6 ------------------------------- UUID が 13fe0bbc-cb67-4ff8-ab0c-5d1f3ed79e09 であることが分かります。 (2)fstabを編集 UUID 修正します。 ------------------------------- $ sudo vi /etc/fstab # swap was on /dev/sda6 during installation UUID=13fe0bbc-cb67-4ff8-ab0c-5d1f3ed79e09 none            swap    sw              0       0 # UUID=e3724924-14ed-4787-bc84-4d0e6fd7a52f none            swap    sw              0       0 ------------------------------- (3)再起動するか、swapon コマンドで swap を追加してください。 $ swapon -a