IT練習ノート

IT関連で調べたこと(実際は嵌ったこと)を書いています。

GHCやghciでワーニングを出さない

:set -w です。 stackoverflow.com

Attoparsec の parseOnly は 残りにエラーがあったとしても、成功したところまでの結果を成功として返す

全部消費した上で判断したい場合はendOfInputを合成する。 gist.github.com

Haskellのテスト構成イメージ

こんなイメージ cabal | +--> TestSuite | +--> Tasty | +-(bridge)-> HSpec | | | +-(bridge)-> hspec-attoparsec | +-(bridge)-> QuickCheck 全体概要 unit-test-example/tutorial.md at master · kazu-yamamoto/unit-test-example · GitHub フレームワー…

TLSの暗号スゥイートの値一覧

ここにあったか。。 Transport Layer Security (TLS) Parameters いや、仕様書自体にあるみたい。下は1.1のだけど。 The Transport Layer Security (TLS) Protocol Version 1.1

HaskellのTLSサンプル

tls packageを直接使うのは辛いのでNetwork.Connectionを使うと楽かも。 gist.github.com

HUnit と Hspec の比較

gist.github.com

cabalのreplでテストスイートを使う

Haskellのテストをcabalで行う時は、下記のように実行します。(configureは毎回出なくて大丈夫ですが) % cabal configure --enable-tests % cabal build % cabal test テストコードを少し書くごとにcabal buildするのは、テストが蓄積されると時間がかかりま…

MySQLのmysqlsh(XProtocol)でssl通信ができない -> できているとおもう。

通常のmysqlからはssl通信ができるけど、mysqlshからはできない。なんでだろう。。 追記:たぶん\sではclassic扱いで、xplugin側の設定が表示されないだけだと思う。 foo$ ls /usr/local/var/mysql/*.pem /usr/local/var/mysql/ca-key.pem /usr/local/var/my…

Int * Doubleは不可

> let a1 = 2 :: Int > let a2 = 3 :: Int > a1 * a2 6 > let b1 = 2 :: Double > let b2 = 3 :: Double > b1 * b2 6.0 > a1 * b2 <interactive>:1387:6: error: • Couldn't match expected type ‘Int’ with actual type ‘Double’ • In the second argument of ‘(*)’, nam</interactive>…

大文字小文字を区別せずにパースする

stackoverflow.com

JavaとHaskellのパースの違い

関数のパラメータ部分の解析を考えてみます。例えば、foo(1, 3, 4);の`(1, 3, 4)の部分をパースすることを試してみます。 仕様としては、 先頭にカッコ開き 末尾にカッコ閉じ 間に、カンマ区切りの数値 があるとします。 Javaの場合ですが、com.mysql.cj.xde…

fmapできない型

ProtocolBufferのパッケージ内にUtf8という型があります。 https://hackage.haskell.org/package/protoc… これは、StringBufferで表現されたデータが有効なUtf8であることを示した目印をつけたものです。 この、目印がつけられたデータに対して処理を考えた…

作業ログ

git gitignoreまとめ - maeharinの日記 unsigned int converter Unsigned integer (32-bit) Converter よくある名前 Most common last names in the United States, top 1000

作業ログ

mysql のインストール アンインストール mac OS XにHomeBrewでmysqlインストール。からの設定(mysql_install_db、mysql_secure_installation、my.cnf)やらアンインストールやら - tweeeetyのぶろぐ的めも SSL SSL/TLS(SSL3.0~TLS1.2)のハンドシェイクを復…

HaskellでHeteroなListを構築する

Heteroリストをfoldrでつくる 下記の実装のようにforlrでリストを作ることができるが、同様なことをHeteroなリストを作りたい。 http://hackage.haskell.org/package/base-4.5.0.0/docs/src/Data-Foldable.html#toList

作業ログ

Haskell パッケージの雛形 Haskeleton: a Haskell project skeleton · taylor.fausak.me Free Monadのリンク Free Monads

作業ログ

haskell An Introduction to Cabal sandboxes Lambda palmstroem.blogspot.jp

haddockのインクリメンタルサーチ

ちょっと作ってみた。そもそもなんで付いていないんだろうか。

作業ログ

Haskell Haskellの例外処理 | Netsphere Laboratories Exceptions Best Practices in Haskell

cabalでローカルにあるライブラリを使う

課題 ローカルに自作ライブラリのソースコードがある。 ライブラリ側の変更はない仮定(安定している仮定)。 そのライブラリを使うプログラムをローカルで作りたい。 ライブラリのソースコードとディレクトリは別にするが、cabalプロジェクトを作る。 ライブ…

作業ログ

Vim Vim の置換で後方参照 - Qiita ファイル内の各行ごとに編集処理を実行する、何行かおきに編集処理を実行する。 — 名無しのvim使い

作業ログ

haskell How to split a string in Haskell? - Stack Overflow Vim VimとWindows コピーの違い - World Wide Wonderful

作業ログ

haskell Data.Binary.Get 読み込みの場合、基本的にバイナリデータピッタリでないと実行時エラーとなる。runGetしてデータがない場合や不足した場合、Nothingや読み込め多分が返却されるような仕組みではない。(と思う)。終わりがわからない場合runGetOrFail…

MySQLのSample Databaseの設定

sample data https://dev.mysql.com/doc/index-other.html word_x-db Download and unzip shell> wget http://downloads.mysql.com/docs/world_x-db.zip shell> unzip world_x-db.zip Read instruction shell> less world_x-db/README.txt Connect to MySQL:…

ysql-connector-java-6.0.6のサンプル実行

$javac -cp .:mysql-connector-java-6.0.6-bin.jar DevApiSample.java $java -cp .:mysql-connector-java-6.0.6-bin.jar:lib/protobuf-java-2.6.0.jar DevApiSample Connected! Default schema is: Schema(foo) Currently reading Effi Briest on page 42 Cu…

作業ログ

haskell Haskell 文字列変換入門 - Qiita Example of streaming data from the database using Persistent and Conduit libraries in Haskell Smart Data with Conduits — Monday Morning Haskell

作業ログ

VIM vim-plugin NERDTree で開発効率をアップする! - Qiita Vim split line command - Stack Overflow haskell ストリーム処理ライブラリはなぜ必要なのか // Speaker Deck MySQL Streaming MySQL Results Using Java 8 Streams and Spring Data JPA

RealWorld Example を触ってみる

Haskell Servant RealWorld Example App リポジトリの場所 Haskell Servant RealWorld Example App インストール サイトの手順の通り データベース >sqlite3 /tmp/haskell-servant-test.db < {your_path}/haskell-servant-realworld-example-app/scripts/sch…

Preview版のVisual Studio for Mac の削除

下記を参考にしました。 Uninstalling Visual Studio for Mac | Microsoft Docs How to uninstall Visual Studio for Mac Preview version? Uninstalling Visual Studio for Mac | Microsoft Docs 自分の場合は下記で削除しました(それぞれの環境で異なると…

Basic認証のユーザIDとパスワードを削除する方法がわからない

Web検索をしても情報が見つからず。。。 Safari バージョン 9.0.3 (10601.4.4) 試したこと メニュー -> Safari -> 環境設定 -> パスワード 該当のサイトの情報なし メニュー -> Safari -> 環境設定 -> 自動入寮 該当のサイトの情報なし メニュー -> Safari -…