2020-01-01から1年間の記事一覧
github.com llvm-hs-pureのREADMEに書いてあるこちらのコードですが、GHCのincomplete-uni-patternsオプションを有効にすると警告が出ます。 {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE RecursiveDo #-} import Data.Text.Lazy.IO as T import LLVM.P…
cabal runでHaskellプログラムを実行するとビルドの情報などが表示されますが、実行結果を標準出力として他のプログラムに渡したい場合はこれだと困ると思います。 例 ビルドが走った場合 $ echo 42 | cabal run kagla-hs Build profile: -w ghc-8.8.4 -O1 I…
プログラム module Main where main :: IO () main = do name <- getLine putStrLn $ "Hello, " ++ name ++ "!" 実行方法 $ echo Bob | cabal run greet これでOK。 ※greetはプログラム名
はじめに 絶賛開発停滞中のTonblyというQiitaクローン的なアプリについての記事第二弾。 github.com 前回の記事では開発の背景について記したが、今回はTonblyの構成について紹介する。 尚、文体が前回とまるで異なるのはキャラ付けを模索しているからだ。 …
適当なページをブックマークした後にURLを以下のコードに置き換えればOK。 javascript:(()=>{const tmp = document.createElement('p');const pre = document.createElement('p');pre.style.userSelect = 'auto';tmp.appendChild(pre).textContent = '['+doc…
TOAST UIというWebのUIツールキットにMarkdownエディタがあるのですが、これがかなり便利で、以前記事を書いたQiitaクローンで使っています。 ↓こんなエディタが簡単に作れます ただ、このエディタのReact版はTypeScriptの型定義がなかったので自分で型を付…
モナドについて学ぶべくすごいH本を読んだので復習として型クラスをScalaに移植してみます。 www.ohmsha.co.jp 本と同じようにFunctor -> Applicative Functor -> Monadという順番で進めていこうと思います。 ちなみにScalaは趣味で少し書いたことがある程度…
ハロー! 去年の12月くらいから作っているツールが多少形になってきたので開発日記をつけることにしました。 github.com どんなツールかというと、Qiitaもどきみたいなやつです。 UIは調整しますがこんな感じ ※テストデータはQiitaのAPIを使って放り込んでい…