Movatterモバイル変換


[0]ホーム

URL:


IT戦記

プログラミング、起業などについて書いているプログラマーのブログです😚

トップ>Haskell

Haskell

燃え尽きたぜ、真っ白に

はてなブックマーク -  Haskell Hackathon その後

経過をここに晒していくよ! ヽ(゚∀゚)ノウンコー! lexer を考える ここを参考に考えるよ! 今回作るやつは Unicode は考えない! オフサイドルールなし! 8 進数なし! 16 進数なし! 指数(0.23e10 みたいなやつ)なし! 文字列内の \ で改行を無効にするやつ…

はてなブックマーク -  今日は Haskell Hackathon !

会社に出社して、 id:nishiohirokazu と Haskell の式の評価について話した。 ぐにゃぐにゃしたものが少し形になった気がした。 あとは、パターンマッチが鬼門だ

はてなブックマーク -  朝一に Haskell の式について話した

いろいろ試行錯誤をしていて JavaScript の関数を作って呼び出すのと Haskell のそれとの決定的な違いを見つけた。 それは、たぶんものすっごい単純で当たり前なことだけど、これが分かったとたんに僕の周りのピースが一気に繋がったので、恥をしのんで書く…

はてなブックマーク -  Haskell のリストと遅延評価が少し分かった

Haskell のリストはシンタックスシュガーだらけ a = [] b = [1] c = [1,2] d = [1..10] e = [1..] f = [1,3..] g = [ x * x | x <- f ] 逆に分かりにくいので書き直す a = [] b = (:) 1 [] c = (:) 1 ((:) 2 []) d = ff 10 where ff 0 = [] ff i = (:) 1 (ma…

はてなブックマーク -  Haskell のリストが分からない。遅延評価も分からない。

Haskell Hackathon やりたいね! - yukobaのブログ がくがくぶるぶる みんなあ、オラに勇気を分けてくれええ

はてなブックマーク -  何このメンバー><

注釈 まだまだ、Haskell 歴 5 日なので、多少間違っててても許してください。 do は これを main = getChar >>= (\a -> ( getChar >>= (\b -> putChar b)) >> ( putChar a)) これにしている main = do a <- getChar b <- getChar putChar b putChar a do の…

はてなブックマーク -  Haskell の do は何を糖衣しているのか

ほんのちょっとけ分かったかも 環境という引数を省略する形なのかな? 環境が変われば値も変わる。 環境という値を引数として与えているならば、毎回値が変わるのも参照透過と言い切れる。 本来はこういうもの? f :: a -> Env -> Envでも、これだと Env だ…

はてなブックマーク -  モナド

これがモナド main = putStrLn $ unlines $ do v1 <- [1, 2, 3] v2 <- f v1 v3 <- g v2 f v3 f :: Integer -> [String] f x = [show x, show x] g :: String -> [Integer] g x = [read x, read x] よくわからん。 なんか、もうすこしで分かりそうなんだが。…

はてなブックマーク -  モナドが分からない

コンパイルしようとすると以下のようなエラーが出る場合がある ghc ... <built-in>:0:1: lexical error そういうときはこうしてやればおk LANG=C ghc ...</built-in>

はてなブックマーク -  コンパイル時の注意

以下の例はダメ main = putStrLn $ unlines $ map show $ f f = g 0 f g n (x:xs) = n : g (x + 1) xs (x:xs) → ~(x:xs) なら OK main = putStrLn $ unlines $ map show $ f f = g 0 f g n ~(x:xs) = n : g (x + 1) xs その心は 一番最初に (x:xs) のパター…

はてなブックマーク -  遅延パターンがわからない

再帰が難しいので練習として色んな数列を作ってみた main = do putStrLn $ j $ take 8 $ s1 0 1 putStrLn $ j $ take 8 $ s2 1 2 putStrLn $ j $ take 8 $ s3 putStrLn $ j $ take 8 $ s4 0 (+1) putStrLn $ j $ take 8 $ s4 1 (*2) putStrLn $ j $ take 8 $…

はてなブックマーク -  いろいろな数列

このエントリはきっと嘘だらけだと思います Haskell を使ってみて自分が感じたイメージを文章にしてみただけです。 Haskell の遅延評価について自分の脳内を整理 Haskell は変数がない。 変数っぽくみえるシンボルは全部(?)関数だ。 だから、副作用(IOとか)…

はてなブックマーク -  Haskell メモ

遅延評価は分かったけど 具体的に使ってみないことには「便利!!」と感動できないので。 毎日ちょっとだけ暇見つけて Haskell を勉強してみよう はじめてのプログラミング 僕は、初めてプログラムを書くとき、閏年を考慮した月の日数計算をするプログラムを…

はてなブックマーク -  Haskell 自習
プロフィール
id:amachangid:amachangはてなブログPro

プログラミング、起業などについて書いているプログラマーのブログです😚

検索

引用をストックしました

引用するにはまずログインしてください

引用をストックできませんでした。再度お試しください

限定公開記事のため引用できません。

読者です読者をやめる読者になる読者になる

[8]ページ先頭

©2009-2025 Movatter.jp