並び順

ブックマーク数

期間指定

  • から
  • まで

321 - 360 件 / 657件

新着順 人気順

haskellの検索結果321 - 360 件 / 657件

  • 【これからiOS頑張りたい方向け】2年半iOSアプリ開発をしてハッとした瞬間まとめ - Qiita

    はじめに iOS Advent Calendar 2020 17日目です。 2年半くらいiOSアプリ開発してきてハッとした瞬間をまとめました。(iOSとかswiftに限った話じゃない学びもあるけど。) がんばらなくても読めるけど、なんとなく勉強にもなる記事を目指しました。 タイトルに近い方が初歩的なやつです。 もし時間あればみていただけると嬉しいです。 お品書き 返り値でBoolを返す時はそのBool自身を返せばいい 三項演算子を使うとif else がワンライナーで書ける var +=は計算型プロパティにできる。 ネストは早期returnで減らせる 2重否定はifでいい。 型が明確な時のinitializerは.initに省略できる trailing closureは引数から省略できる enumとswitchを組み合わせて網羅性をチェックする Bool値が複数ある場合の場合分けはswit

      【これからiOS頑張りたい方向け】2年半iOSアプリ開発をしてハッとした瞬間まとめ - Qiita
    • Hacker News folk wisdom on visual programming

      I’m a fairly frequent Hacker News lurker, especially when I have some other important task that I’m avoiding. I normally head to the Active page (lots of comments, good for procrastination) and pick a nice long discussion thread to browse. So over time I’ve ended up with a good sense of what topics come up a lot. “The Bay Area is too expensive.” “There are too many JavaScript frameworks.” “Bootcam

        Hacker News folk wisdom on visual programming
      • HaskellのCo/Yoneda型と米田の補題をきちんと繋げる - Qiita

        概要 Haskell には Co/Yonda 型があり、圏論には米田の補題がある。両者の関連についての分かりやすい解説を見つけられなかったため、ここで米田の補題と Co/Yoneda 型をシームレスに繋ぐことを試みる。 圏論の基礎知識は仮定している。また Co/Yoneda 型は kan-extensions で定義されたものを参照している。 記法 圏論の記法は一般的なものを用いるが、Haskell コードとの比較のし易さのために、圏 $\mathcal C$ における対象 $A$ から対象 $B$ への射の集合 $\mathcal C (A,B)$ を $$ A\underset{\mathcal C}{\rightarrow}B $$ とも書くことにする。 米田の補題によると、圏 $\mathcal C$ とその対象 $A$ ならびに関手 $F:\mathcal C\rightarro

          HaskellのCo/Yoneda型と米田の補題をきちんと繋げる - Qiita
        • GitHub - eeue56/derw: An Elm-inspired language that transpiles to TypeScript

          You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

            GitHub - eeue56/derw: An Elm-inspired language that transpiles to TypeScript
          • Unification-free ("keyword") type checking

            From my perspective, one of the biggest open problems in implementing programming languages is how to add a type system to the language without significantly complicating the implementation. For example, in my tutorial Fall-from-Grace implementation the type checker logic accounts for over half of the code. In the following lines of code report I’ve highlighted the modules responsible for type-che

              Unification-free ("keyword") type checking
            • Pure destination-passing style in Linear Haskell

              My goal today is to convince you that destination-passing style is neat, actually. And that linear types make destination-passing purely functional. But first, I must answer a question. What is destination-passing style? If you’ve ever programmed in C, C++, or Fortran, you are sure to have encountered the style of programming which sometimes goes by the name destination-passing style. It is the pr

                Pure destination-passing style in Linear Haskell
              • Haskellのscan系関数を使いこなす | 雑記帳

                Haskellはリストを操作する関数を多数提供しています。map, filter, foldあたりが代表的で、これらは他の言語でもおなじみかと思います。 一方で、scan系関数(scanl, scanr)は他の言語ではあまり見かけない気がします。同じ関数型言語のSMLやOCamlにも標準では入っていないようです。 この記事では、scan系関数がどういう場合に利用できるかを紹介します。 scan系関数とは 定義と図解 scan系関数は、リストを元にして新しいリストを構築する関数です。新しいリストの要素は、与えられた初期値と関数を使って元のリストを途中まで畳み込んだものになります。「foldの途中経過を残す版」とでも言えば良いでしょうか。 型はそれぞれ次のようになります: scanl :: (b -> a -> b) -> b -> [a] -> [b] scanr :: (a -> b ->

                • 型に関連するよく分からん用語がありすぎる - 技術メモ

                  Rustのドキュメントを読んだりTwitterで型について話している人が使う用語でわからないものが結構ある。CSを体系的に学ぶ過程でおそらく共通で皆通ってきているのだろうが自分には抜け落ちている。この分野の用語を最低限自分も理解して使えるようになりたい。

                    型に関連するよく分からん用語がありすぎる - 技術メモ
                  • Conduit最速入門2019 - Qiita

                    メリークリスマス。 アドベントカレンダーの枠が埋まっていないので、ちょっとお邪魔してconduitをやります。 conduitはバージョン1.3系統で大きくAPIが変わっているのですが、日本語による新しい解説が見当たらないので、簡単にチュートリアルをやっていこうと思います。 Conduitは「読み込む→何かする→書き込む→繰り返し」みたいな処理をHaskellで書くためのライブラリ、またはフレームワークです。 本来、純粋なシーケンス相手であれば、こういう処理は得意なはずのHaskellなのですが、読み書きが入って来ると途端に話が複雑になります。 実質的な選択肢は3つ。 普通にdo文で手続き型っぽく書く Lazy IO なんかフレームワークを使う 1は実は最善策という説がありますが、やめておきましょう。2はトイプログラムには良いのですが、実用的にはいろいろ問題がある事が分かっています。 とい

                      Conduit最速入門2019 - Qiita
                    • Optimizing Ray Tracing in Haskell

                      My first Haskell program and how easily I optimized it from 33m to 17s. 1800x1012 scene generated containing 533 objects rendered with 500 samples and 50,000 rays per pixel.BackgroundFew weeks back, my colleague at work, Eyal Kalerdon, shared his implementation of ray-tracing-in-one-weekend in Rust, which inspired me to try this as well. I, however, chose Haskell for this, thinking I’ll not only l

                        Optimizing Ray Tracing in Haskell
                      • 双対的にみる余帰納法 1.イントロ - Qiita

                        双対的にみる余帰納法シリーズ 1. イントロ 2. 帰納法と代数 3. 余帰納法と余代数 はじめに 帰納法について圏論的な見方を解説した日本語のWebページはそれなりにあるが, 余帰納法についてはみかけない. しかし, Haskellで使われる無限リストは余帰納的なデータの代表例であり, 余帰納法の解説にはある程度の意味があると信じて本記事を書く. 帰納法は知っているけど, 余帰納法って何? という読者が大半かと思われるので, まず本記事では余帰納法の使い方に焦点を当てて余帰納法への導入を行なう. その後, 余帰納法が帰納法の双対になっていることや, 余帰納的な証明手法であるBisimulationについていくつかの記事に分けて解説する(予定). 事前知識 読者が以下のことを知っていることを前提に以降の記事を書く. 圏論についての基本的なこと 圏や関手, 直積, 直和 帰納法についての知識

                          双対的にみる余帰納法 1.イントロ - Qiita
                        • Lessons in Managing Haskell Memory

                          At Channable, we process several billion product data records for our customers every day according to user-customizable rules. Internally, this work is subdivided into jobs, where one job takes a set of products and the rules for how to process them as input, and returns the transformed set of products as output. Those datasets range from a few dozen to tens of millions of products in size. The a

                          • 多相からプログラミング言語を見る - 趣味はデバッグ……

                            こんにちは。ホビー型システミストの岡本です。 最近 C++ の習得をしていて、なんとなく多相(polymorphism)の視点からいくつかのプログラミング言語をまとめてみようという気になったので書いてみます。 部分型多相(subtype polymorphism) クラスベースオブジェクト指向言語でよく使うのは部分型多相ですかね。 Java や C#・C++ にある、名称的部分型多相(nominal subtype polymorphism)はこんな感じ。次の例は Java です。 class A {} class B extends A {} public class Main { public static void main(string[] args) { A foo = new B(); } } 変数 foo は A 型だけど、型(クラス)B は A の部分型(サブクラス・派生ク

                              多相からプログラミング言語を見る - 趣味はデバッグ……
                            • Haskell Foundation

                              An independent, non-profit organization dedicated to broadening the adoption of Haskell, by supporting its ecosystem of tools, libraries, education, and research. Stackage Handover Completed I’m happy to announce the completion of the handover of Stackage.org to the Haskell Foundation. Thanks to FP Complete’s effort and dedication, Stack and Stackage have been part of the Haskell community for ten

                              • The Cubix Framework

                                Building a Programming Tool? Build for 5 languages at once -- | Inserts "blocksCovered[n] = true" printouts for test-coverage -- at every basic block -- -- Runs on C, Java, JavaScript, Lua, and Python instrumentTestCoverage :: forall fs l. (CanInstrument fs) => ProgInfo fs -> TermLab fs l -> Annotater (TermLab fs l) instrumentTestCoverage progInfo t = performCfgInsertions @(StatSort fs) progInfo $

                                • GHC 9.2の新機能と、GHCの動向2021

                                  Haskell Day 2021で「GHCの動向2021」というタイトルで発表しました、mod_poppoです。この記事では、発表の補足としてGHC 9.2の新機能の紹介と、 Data.List の単相化に関する補足を行います。 Haskell Day 2021の動画と筆者のスライドは、それぞれ次のリンクから参照できます: Haskell Day 2021 - YouTube GHCの動向2021 「GHCの動向」のタイトル的な元ネタ(?)は、筆者が3月にブログに書いた GHCに初めてコントリビュートした/最近のGHC動向 です。時代遅れになった記述もあると思いますが、よかったら読んでみてください。 GHC 9.2の新機能 2021年10月29日に、待望のGHC 9.2.1がリリースされました。公式の変更点は 2.1. Version 9.2.1 — Glasgow Haskell Com

                                    GHC 9.2の新機能と、GHCの動向2021
                                  • Haskellで、手軽にプロパティベーステスト

                                    はじめに Haskell Advent Calender 2023の2日めの記事です。カレンダーの枠が空いていたので、久しぶりに勢いで書いてみました。 さて、ラムダノート社から「実践プロパティベーステスト」が出版されたので、巷ではプロパティベーステストが流行っていることでしょう (紹介宣伝です)。 Haskellでは、プロパティベーステスト用のライブラリとして、例えばQuickCheckがあります。 この記事では、Haskellではソースコードのコメント中に簡単な記述をするだけで、プロパティベーステストを手軽に実行できることを改めて紹介します。 本格的なコードを開発している局面だけではなく、ちょっと頭の中を整理したい時などにも手軽で便利です。 (前準備) テストケースと期待値によるテスト Haskellでは、ソースコードのコメント中に埋め込まれたテストケースを実行できるdoctestという

                                      Haskellで、手軽にプロパティベーステスト
                                    • コーディングについて思うこと垂れ流し

                                      ミライトデザイン Advent Calendar 2021 の 11 日の記事です カレンダーの右端は日曜日派の ほげさん ( zenn ) です Qiita のアドカレの右端は土曜日だったんですね、気を付けましょうね 血圧低い感じで、盛り上がりもオチもなく文字数制限のない Twitter のような駄文を晒します 導入 ある Haskell はいいぞおじさんの誕生のはなし 2014 年くらいだったか、大したきっかけもないけど Haskell を触った[1] 根本的な基礎力が足りなかったしダラダラやってたので、ちゃんと H 本の内容を最後の章まで理解できたのは多分 2016 年くらいだった気がする そのあと Haskell の考え方とコードって超クールだなって思ってこんなのを書いたりした 細かい内容は覚えてないけど、記事の内容はニュアンスとしては こんな ↓ 実装をやめて User find

                                        コーディングについて思うこと垂れ流し
                                      • Pandocフィルター101 - golden-luckyの日記

                                        昨日の記事では、PandocのReaderを自分で作り直す話をしました。 いうまでもありませんが、ReaderはPandocの一部なので、改造Readerを使うためにはPandocをソースから自分でビルドする必要があります。 ところがPandocというのは、Haskellで書かれているうえに、かなり巨大で依存関係がめんどくさいソフトウェアです。 GitHubからソースをcloneしてくれば誰でもビルドできるとはいえ、Haskellの開発経験がまったくないと、ビルドできる環境を整えるだけでもなかなか大変でしょう。 Readerを改造するしか手のうちようがない機能追加や修正については何ともなりませんが、Pandoc構造に押し込まれたコンテンツを他の記法として書き出すときに標準とは違うことをしたいだけなら、Pandocをソースからビルドしなくても済むような裏口が昔から用意されています。 それが今

                                          Pandocフィルター101 - golden-luckyの日記
                                        • 依存関係と階層構造の軛 - モナドとわたしとコモナド

                                          21世紀現在のプログラミング言語において、モジュールという機能はほぼ必要不可欠である。ソースコードを分割し、明示的な依存関係を指定する仕組みであるモジュールは、以下のような様々な恩恵をもたらす。 インクリメンタルビルド: モジュールごとにコンパイル結果を保存し、変更されていない部分を再コンパイルするのを防ぐ。 内部の隠蔽: 実装の詳細を隠蔽し、モジュール外から触れないようにする。プログラムの見通しをよくしたり、不正な操作をする機会を減らす。 アーキテクチャの整理: モジュールは他のモジュールを参照できるが、原則として相互参照はしない。依存の向きを定めることで、適切な抽象化と、 それに基づいた実装の分離を促す。 さて、いくらモジュールが便利と言えど、数が増えすぎるとさすがに扱いにくい*1。そのため、ディレクトリの構造をモジュールの階層構造として運用する仕組みが備わっていることが多い。 コンパ

                                            依存関係と階層構造の軛 - モナドとわたしとコモナド
                                          • GHC 環境構築 概観 と PowerShell - 趣味はデバッグ……

                                            Haskell の開発環境を構築する方法は何通りかあり、新しいツールが出ると「今はこれだ」とほめるブログも公開されますがそれが初学者を混乱させることがよくあります。 本記事ではビルドツールのインストールにしぼり、開発支援、例えば ghc-mod・haskell-ide-engine・hhp には言及しません。 いくつか典型的な構築方法を確認した後、新たに私が作成したツールを紹介しより初学者を混乱に落とし入れます。 重鎮 Haskell Platform www.haskell.org Haskell 解説書史1の第1波から第3波までのデファクトスタンダードであった重鎮 Haskell Platform です。コンパイラー GHC とパッケージマネージャー Cabal、それにいくつかの準標準ライブラリーをまとめてインストールできるツールでこれをインストールするだけで入門書のコードはすぐ動くと

                                              GHC 環境構築 概観 と PowerShell - 趣味はデバッグ……
                                            • リテラルをコンパイラ時にチェックする

                                              Haskell はいくつかのリテラルで型クラスを使用したオーバーロードを許容している.例えば,Haskell で 1 と書いた場合,この型は 1 :: Num a => a になり, Num のインスタンスを定義することで,リテラルに対する実体をユーザも制御できるようになっている.GHC拡張で文字列に対してのオーバーロードなども提供されている.ただ,提供するデータ型とリテラルによっては,プログラムが意図通りに動かなかったりクラッシュしてしまったりすることがある.これを事前にチェックする仕組みを,コンパイラプラグインで実装する方法を紹介する. なお,環境として以下を想定している. Haskell のオーバーロードリテラルHaskell では整数及び浮動小数点数リテラルにおいて,オーバーロードが許容されている.それぞれ, 整数リテラル: Num のインスタンス 浮動小数点数リテラル: Frac

                                                リテラルをコンパイラ時にチェックする
                                              • Linear Algebra of Types

                                                It gives my brain a pleasant thrum to learn new mathematics which mimics the algebra I learned in middle school. Basically this means that the new system has operations with properties that match those of regular numbers as much as possible. Two pretty important operations are addition and multiplication with the properties of distributivity and associativity. Roughly this corresponds to the mathe

                                                  Linear Algebra of Types
                                                • Retrie: Haskell refactoring made easy

                                                  What’s new: We’ve open-sourced Retrie, a code refactoring tool for Haskell that makes codemodding faster, easier, and safer. Using Retrie, developers can efficiently rewrite large codebases (exceeding 1 million lines), express rewrites as equations in Haskell syntax instead of regular expressions, and avoid large classes of codemodding errors. Retrie’s features include the ability to rewrite expre

                                                    Retrie: Haskell refactoring made easy
                                                  • Functors and Monads For People Who Have Read Too Many "Tutorials" - iRi

                                                    Celebrating Over 10 Years Of Being Too Lazy To Pick A Tagline Title is literally true. This may not be the best place to learn about these concepts for the first time, because I'm going to focus on knocking down the misconceptions about them. Then again, it may not be the worst place, for the same reason. I had promised myself I would not add to the pile of functor or monad "tutorials", but I've b

                                                    • 文脈依存 PEG による Haskell パーサ

                                                      前に PEG パーサジェネレータライブラリ ptera を作っているという話をしたが,今回はその第二弾.ptera で Haskell2010 の文法パーサを例に追加してみたんだが,その過程で色々あったのでその備忘録. 結論から言うと,ptera に前回から以下の拡張を加えた. 先読みを強化し,もうちょっとちゃんと機能するように 文脈依存でパースができるようにした 後は,Template Haskell で文法書けるようにしたりもしたが,まあそれはいいでしょ. Haskell2010 と ptera ptera でひとまず Template Haskell で文法が書けるフロントエンド部分作った後,Haskell 2010 ぐらいパースできないと使い物にならないなあと言う感じで Haskell の example project 書いてみたんだが,ここで色々つまづいてしまった.主に今回説明

                                                        文脈依存 PEG による Haskell パーサ
                                                      • A dead-simple web stack in Haskell | William Yao

                                                        A dead-simple web stack in Haskell November 16, 2019 « Previous post Next post » Haskell has a proliferation of libraries to choose from for all of your basic backend needs, from logging to database access to routing and web server definition. It's nice to have the freedom of choice, but if you're just starting out, the amount of decisions needed can be overwhelming. Maybe you're not even confiden

                                                        • Async Exceptions in Haskell, and Rust - FP Complete

                                                          Before getting started: no, there is no such thing as an async exception in Rust. I’ll explain what I mean shortly. Notice the comma in the title :). GHC Haskell supports a feature called asynchronous (or async) exceptions. Normal, synchronous exceptions are generated by the currently running code from doing something like trying to read a file that doesn’t exist. Asynchronous exceptions are gener

                                                            Async Exceptions in Haskell, and Rust - FP Complete
                                                          • 不動点コンビネータを用いた無名再帰関数の実行まとめ - Qiita

                                                            諸般の理由で『Pythonのlambda式を用いたラムダ計算の基礎表現』を書いた後にHaskellに触れたところ,無名再帰関数を実行する不動点コンビネータfixがとんでもなく簡単に書けたため,同じ方法で他のプログラミング言語でもできないか試したところ,これまたあっさりできたので,まとめメモ的に新しく記事にした. このような内容がQiitaや書籍,ネット上に星の数の更に星の数乗ほどあることは承知しているが,この手の話はYコンビネータが大きな割合を占めており(実際,元記事でも取り上げている),関心のある人々の数多ある参考資料のひとつ程度に捉えてもらえると幸いである.ツッコミ,編集リクエスト歓迎. 不動点コンビネータの定義 不動点コンビネータとは,$f(g(f))=g(f)$が成り立つ関数$g$を指す.この記事では,Haskellの呼称であるfixを不動点コンビネータの関数名とする. Haske

                                                              不動点コンビネータを用いた無名再帰関数の実行まとめ - Qiita
                                                            • Haskellの型パズルで作るMini Interpreter

                                                              「効率よく素数を計算するプログラムを作る課題」を出したら「コンパイル時に素数判定を行うプログラムが優勝した」なんて話がありますが[要出典]、今回は型レベル文字列で数式を渡すとコンパイル時に計算を行ってくれる型レベルインタプリタを作ってみようと思います[1] 動作イメージはこんな感じ > :kind! Calc "(1 + 1) * (2 + 0) + 10" Calc "(1 + 1) * (2 + 0) + 10" :: Nat = 14 GHCiで :kind! を使うと与えられた型の型シノニムや型族による変換を評価してくれます。つまり上記のプログラムは数式を表す型レベル文字列を評価してNatカインドの14という型に評価されているというわけです。 元ネタはQuramyさんのこの記事です 今朝この記事を引用した友人が 「文字列型を型レベルで扱える似たような機能って他の静的型付け言語にもあ

                                                                Haskellの型パズルで作るMini Interpreter
                                                              • Pandocをコマンドでなくライブラリとして使う - golden-luckyの日記

                                                                昨日までの記事では、Pandocフィルターの基本と少しだけ実用味がありそうな例を紹介しました。 Pandocフィルターは、Pandoc本体の開発言語と同じくHaskellで書けますが、Pandocの内部動作を変えられるわけではなく、pandocコマンドによってJSONとして出力したデータを操作する仕組みです。 内部に組み込まれたLua処理系で実行できる新しいフィルターの仕組みもありますが、いずれにしてもpandocというコマンドに対する補助的な機構です。 一方で、Haskellというプログラミング言語から見ると、Pandocはライブラリでもあります。 つまりpandocコマンドとしてでなく、自分が書くHaskellのプログラムで読み込んでそのMarkdownのパーサだけを使う、といったことも可能です。 今日はそのような事例を紹介します。 XML原稿にあるMarkdownの島 先週、このアド

                                                                  Pandocをコマンドでなくライブラリとして使う - golden-luckyの日記
                                                                • Functional Design and Architecture (First Edition)

                                                                  Important: this is the First Edition of the book. * Consider buying Functional Design and Architecture (Second Edition) by Manning instead. * See also my new book Pragmatic Type-Level Design. FDaA is a fundamental book about Software Design in Haskell and other functional languages. The main idea of this book is to provide a comprehensive source of knowledge, and a complete methodology for buildin

                                                                    Functional Design and Architecture (First Edition)
                                                                  • Haskellで型レベルパーサー

                                                                    ghc-9.6.1です。 GHCはChar kindが9.2で入ったので型レベルパーサーが書ける様になってるんですよね。ということで書いてみました。 BNFは以下です: expr ::= term *('+' term) term ::= factor *('*' factor) factor ::= '(' expr ')' | nat nat ::= 0 | 1 | 2 | ... | 9 {-# Language TypeData #-} {-# Language DataKinds #-} {-# Language TypeFamilies #-} {-# Language UndecidableInstances #-} {-# Language TypeApplications #-} {-# Language MagicHash #-} {-# LANGUAGE NoStar

                                                                      Haskellで型レベルパーサー
                                                                    • 二分木をアプリカティブにする - Qiita

                                                                      $\require{AMScd}$ 二分木 をアプリカティブにする 2018年のアドベントカレンダー25日目の記事「二分木をモナドにする」の続編です. 昨年の記事ではApplicativeの(<*>)の実装については一切説明しませんでした. 本記事ではこの(<*>)の実装を図式から導出してみようと思います. 1年ぶりなのでいちおう軽くおさらいをしておきます. おさらい Leafyな二分木に再登場してもらいます.

                                                                        二分木をアプリカティブにする - Qiita
                                                                      • kodimensional :: Avoiding space leaks at all costs

                                                                        Avoiding space leaks at all costs Created: August 8, 2022 Haskell is a purely functional lazy programming language. The world doesn’t have a lot of lazy-by-default PLs. In fact, all mainstream languages have eager evaluation models. You may argue it’s because eager evaluation is better (because this is how the world works, obviously, only good things are popular). I tend to think this happened bec

                                                                        • C++にモナドはいらない - Qiita

                                                                          C++ Advent Calendar 2022 の 3 日目の記事 を読んだのですが、C++の規格を作っている人の中にモナドが好きな人がいるようで、仕様書の中にモナド的などという単語を必要もないのに入れようしているようです。それでモナドに興味を持った人もいるかと思って記事を書いてみることにしました。巷にモナドの説明自体はいっぱいあるんですが、Haskellを使って説明するものばかりで読みにくいですし、なんだか要領を得ないものが多いので、C++で説明する需要はあるだろうと思っています。ただし、C++でモナドを作っても意味がないよという否定的な意見を書きますので、そういうのがお好みでない方は許してください。 シンタックスシュガーがないのに、モナドを作るんですか? とりあえず説明のために簡単なIOモナドっぽいのものを書いてみます。まず、文字列を表示する動作を次のように書けるようにします。これは

                                                                            C++にモナドはいらない - Qiita
                                                                          • Winter is coming even more quickly – Blog – Joachim Breitner's Homepage

                                                                            TL;DR: I explain how I improved the performance of an interpreter for WebAssembly written in Haskell by plucking some low-hanging fruit. Background Motivated by my work at the DFINITY Foundation, I was looking into interpreters for WebAssembly written in Haskell, and found my colleague John Wiegley’s winter: A straight-forward port of the WebAssembly reference interpreter, written in Ocaml by Andr

                                                                            • GitHub - fumieval/Haskell-breaking-changes

                                                                              You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session.

                                                                                GitHub - fumieval/Haskell-breaking-changes
                                                                              • Windows10 HomeでDocker + VSCodeによるhaskellの環境構築 - Qiita

                                                                                はじめに いままでインタプリタ型・動的型付けの言語を使う機会の方が多かったです。 ただ、触っていくうちに「かっちりさ」に欠ける 気がしてしまったんです。 「70%の完成度でリリースできる」という言葉を聞いたことがあるくらいですからそれほど厳密さには焦点を絞っていないのだと思います。 もちろん、それがいいところだし、実社会ではその方がスピード感のあるリリースが可能になる分強いと思います。 ただ、コンパイラ型・静的型付けの言語も触ってみて両者の違いをつかんでみたいなという気持ちが湧いてきたんです。 (かっちりしてるものの方が扱いやすい気がするという好みの問題もあるんですが) しかも、オブジェクト指向に関してもJavaScript, Python, PHPと触っていくうちに雰囲気がつかめてきた(分かったとは言ってない)ので関数型なるものを触ってみたいという好奇心もあります。 そこでHaskell

                                                                                  Windows10 HomeでDocker + VSCodeによるhaskellの環境構築 - Qiita
                                                                                • Simple Haskell

                                                                                  Pure functions and strong types are the key to reliably delivering quality software. Industrial Haskell users are realizing that the key to delivering software on time and under budget is to keep it simple. We still have yet to fully leverage the value that Haskell98 has to offer through features like: Pure Functions Sum and Product Types Type Classes Polymorphism Accessibility Commercial software