並び順

ブックマーク数

期間指定

  • から
  • まで

481 - 520 件 / 1150件

新着順 人気順

haskellの検索結果481 - 520 件 / 1150件

  • 40行でPoisson方程式を解く - Qiita

    こんにちは、やきつかです。 Haskellで配列を使ってみたいなーと思っていて、Poisson方程式を数値計算してみたら40行だったので1人で感動しちゃったので残しておきます。 Haskellの表現力の強さを知ってもらえればうれしいです。 注意 とりあえず実装したかったので、処理速度とかは一切考慮してないです。 同じ理由で、精度も可視化していい感じになることを目指しています。 Haskell、数値計算とも初学者なので、間違いとかよりよい作法がありましたら教えていただけると大変うれしいです。 はじめに この記事では、Poisson方程式の概要→差分方程式→アルゴリズム→Haskellで書いたコードという順で説明していきます。 Poisson方程式とは Poisson方程式は二階の偏微分方程式で、次の様に表されるもののことを言います。 $$\Delta\phi=f$$ ここで、$\Delta$

      40行でPoisson方程式を解く - Qiita
    • Oath: 安全、高速、合成可能な並行処理 - モナドとわたしとコモナド

      TL;DR github.com 並行処理を簡潔かつ安全に記述できるライブラリを作った。ApplicativeDo拡張を使って、以下のようにoathの引数として与えたIOアクションを同時に実行し、結果を集める処理を書ける。いずれかが例外を投げた場合、残りをキャンセルするためリソースを漏らす心配がない。 evalOath $ do a <- oath $ ... b <- oath $ ... f a b 経緯 Haskellは並行処理が得意とされている。事実、軽量スレッド、MVar、STMといった処理系によるサポートが充実しており、HackageのConcurrencyカテゴリには235ものパッケージがあることからもユーザの関心の高さが窺える。 並行処理を実用する上では、単にスレッドをフォークするだけでなく、計算の結果を集める必要がある──Scalaなどで言うFutureに近いものがあると

        Oath: 安全、高速、合成可能な並行処理 - モナドとわたしとコモナド
      • Appendix: Influences - The Rust Reference

        Rust is not a particularly original language, with design elements coming from a wide range of sources. Some of these are listed below (including elements that have since been removed): SML, OCaml: algebraic data types, pattern matching, type inference, semicolon statement separation C++: references, RAII, smart pointers, move semantics, monomorphization, memory model ML Kit, Cyclone: region based

        • barbies-thで気軽にHKDを堪能しよう [Haskell AdC 14] - モナドとわたしとコモナド

          ミーハーな読者なら、barbiesというライブラリをご存知の方も多いと思う。そう、HKDを扱う定番ライブラリだ。HKDは、同アドベントカレンダーにも寄稿されている他、Haskell Dayでも紹介された(https://assets.adobe.com/public/b93f214d-58c2-482f-5528-a939d3e83660)注目の技法だ。Higher-Kinded Data (HKD) について - Qiita HKDは、一番簡単な場合であるはずのIdentityを使うと着脱が面倒になるという問題がよく知られている。Data.Barbie.BareモジュールのWearという型族を使って定義すれば、それを簡単にはがせ、普通のレコードと全く同じように使える。 data Barbie t f = Barbie { name :: Wear t f String , age ::

            barbies-thで気軽にHKDを堪能しよう [Haskell AdC 14] - モナドとわたしとコモナド
          • Amazon.co.jp: 圏論入門 Haskellで計算する具体例から: 雪田修一: 本

              Amazon.co.jp: 圏論入門 Haskellで計算する具体例から: 雪田修一: 本
            • SOSP21 で best paper 賞を受賞した S3 の論文を読んでみる - ablog

              SOSP21 で best paper 賞を受賞した S3 の論文 "Using Lightweight Formal Methods to Validate a Key-Value Storage Node in Amazon S3" を読んでみる。 Abstract This paper reports our experience applying lightweight formal methods to validate the correctness of ShardStore, a new key-value storage node implementation for the Amazon S3 cloud object storage service. By “lightweight formal methods" we mean a pragmatic approac

                SOSP21 で best paper 賞を受賞した S3 の論文を読んでみる - ablog
              • Rust with Fearless Concurrency | κeenのHappy Hacκing Blog

                # Rust with Fearless Concurrency ---------------------- === # About Me --------- ![κeenのアイコン](/images/kappa2_vest.png) * κeen * [@blackenedgold](https://twitter.com/blackenedgold) * GitHub: [KeenS](https://github.com/KeenS) * GitLab: [blackenedgold](https://gitlab.com/blackenedgold) * [Idein Inc.](https://idein.jp/)のエンジニア * Lisp, ML, Rust, Shell Scriptあたりを書きます === # Rust with Fearless Concurrency

                • Lessons learned from writing ShellCheck, GitHub’s now most starred Haskell project – Vidar's Blog

                  ShellCheck is a static analysis tool that points out common problems and pitfalls in shell scripts. As of last weekend it appears to have become GitHub’s most starred Haskell repository, after a mention in MIT SIPB’s Writing Safe Shell Scripts guide. While obviously a frivolous metric in a niche category, I like to interpret this as meaning that people are finding ShellCheck as useful as I find Pa

                  • GitHub - rockerBOO/awesome-neovim: Collections of awesome neovim plugins.

                    neovim/nvim-lspconfig - Quickstart configurations for the LSP client. nvim-lua/lsp-status.nvim - This is a plugin/library for generating statusline components from the built-in LSP client. RishabhRD/nvim-lsputils - Better defaults for nvim-lsp actions. nvimdev/lspsaga.nvim - A light-weight LSP plugin based on Neovim's built-in LSP with a highly performant UI. kosayoda/nvim-lightbulb - The plugin s

                      GitHub - rockerBOO/awesome-neovim: Collections of awesome neovim plugins.
                    • RBSをテストコードにする - スペクトラム

                      DALL-Eより: Imagine a scene where the abstract concepts of Ruby programming and property-based testing blend harmoniously. Picture a large, glowing ruby crystal まいどお馴染み、作ってみたシリーズです。 今回は、RaaP(ラープ)というツールを作りました。RBS as a PropertyでRaaPです。 github.com RaaPはテスティングツールの一種で、RBSをそのままテストコードにみたてて実行してくれるツールです。 次のようなRBSがあったとして class Foo end class Bar def initialize: (foo: Foo) -> void def f2s: (Float) -> String end

                        RBSをテストコードにする - スペクトラム
                      • Awesome React - Reactのオススメ記事・ライブラリ・ツール まとめ - - Qiita

                        この記事は次の日本語訳です(Reactの部分のみ抜粋) https://github.com/enaqx/awesome-react 公式 React Official Website React Documentation React GitHub コミュニティ Reactiflux Discord Channel React StackOverflow React Twitter オンラインでReactのコードを試せるサービス CodePen CodeSandbox JSFiddle チュートリアル Reactのチュートリアル React Official Tutorial - 公式 Using React in Visual Studio Code - ReactをVSCodeで使う Scrimba - Learn React for free interactively - Scr

                          Awesome React - Reactのオススメ記事・ライブラリ・ツール まとめ - - Qiita
                        • Serverless Haskell - GHCのWASMバックエンドで Haskell を Cloudflare Workers に載せる

                          Serverless Haskell - GHCのWASMバックエンドで Haskell を Cloudflare Workers に載せる TL;DR GHC 9.10 から WASM バックエンド(クロスコンパイラ)が JavaScript FFI に対応したので、Haskell コードを Cloudflare Workers 上で動かしてみたよ。快適に開発するための環境構築・ハック方法と、GHCの出力をCloudflare Workers 向けに修正する方法を紹介するよ。 はじめに──Asterius から GHC WASM バックエンドへ GHC は 9.6 から WASM バックエンド(クロスコンパイラ)を搭載していますが、GHC 9.10 から WASM バックエンドが遂に JavaScript FFI に対応しました。 従来から C FFI には対応しており、これを使って F

                            Serverless Haskell - GHCのWASMバックエンドで Haskell を Cloudflare Workers に載せる
                          • 抽象データ型を自作する - golden-luckyの日記

                            昨日の記事では「書籍のマクロな構造」について話しました。 このマクロ構造はPandoc構造には組み込まれていません。 そのため、Pandocで書籍を作ろうと思うと、どうしたってPandoc構造にない部分を扱う別の仕組みが必要になります。 素のPandocでは、「書籍のマクロな構造を扱える外部の仕組み」を託す先として、主にLaTeXを利用しています。 裏を返すと、LaTeXは、書籍のマクロな構造を扱える仕組みです。 それなら最初からPandocではなく、LaTeXで本を作ればいいのではないでしょうか? この反論はもっともです。 実際、本を作るプロは黙ってLaTeXであったり、あるいはInDesignであったり、あるいはFrameMakerであったりを使います。 組版のプロの要求を実現するためには、これらのツールが持つ表現への自由度が必要だからです。 しかし原稿をもらう立場からすると、この高い

                              抽象データ型を自作する - golden-luckyの日記
                            • オブジェクト指向におけるVisitorパターンは、F代数によるμ再帰を Church encoding したもの

                              某所で オブジェクト指向 (OOP) における Visitorパターン について話されていたので、自分の関数型プログラミングのメモ用に整理してみたいと思います。 (Twitterで書くには少し長すぎたので、こちらに整理) 2021/01/10 EDIT: Church (Boehm–Berarducci) エンコーディングとVistorパターンについての具体的な事例は、こちらの記事が分かりやすいので、ご参照ください。 Haskell for all: The visitor pattern is essentially the same thing as Church encoding 概要 OOP における Visitor パターンは、関数型プログラミング的に言えば、(パターンマッチする)F代数によるμ再帰を Church encoding したもの。 つまり、 を関数適用して、結果 a

                                オブジェクト指向におけるVisitorパターンは、F代数によるμ再帰を Church encoding したもの
                              • David Heinemeier Hansson - CoRecursive Podcast

                                00:00 - Intro 01:22 - Why Did Rails Succeed? 07:52 - Why Ruby? 10:44 - The Benefits of Obscure Technology 14:49 - Fighting the Monoculture 22:23 - Ruby VS OCAML 26:10 - Coding as Writing, Not Math 27:22 - Enterprise Java People 31:01 - Does Speed Matter? 32:03 - Stop Copying Google 36:13 - Micro Services Are a Mistake 39:51 - React And Single Page Apps Are a Worse Mistake 44:33 - Test Driven Devel

                                  David Heinemeier Hansson - CoRecursive Podcast
                                • Haskellの文字列リテラルはGHCでどのようにコンパイルされるか - Qiita

                                  Haskellの文字列とは まず、Haskell標準の文字型・文字列型が何であるかを確認しておきます。 Haskell 2010では Char 型はUnicode characterを表す、とされています。 Haskell 2010 Language Report -- 6.1.2 Characters and Strings 「文字」というのが非自明な概念であることを知っている方であればUnicode characterって具体的にはなんやねん!と言いたくなるかと思いますが、GHCにおいては Char 型はUnicodeコードポイントを表します。つまり、 0 以上 0x10FFFF 以下の整数 です。特に、サロゲートコードポイント(0xD800 以上 0xDFFF 以下)も有効な Char 型の値です。 GHC の Char 型の説明 String は Char のリストです。 これらの

                                    Haskellの文字列リテラルはGHCでどのようにコンパイルされるか - Qiita
                                  • C++におけるinline指定子の誤解 - よーる

                                    C++にはinline指定子があります。しかし、このinline指定子は、その名前から誤解されがちです。 (誤解)inline指定子を付けると、その関数はインライン展開される これは誤解であり、正しくありません。正しくは、以下のような意味になります。 inline指定子を付けた場合、複数回の定義が許される。また、複数の翻訳単位*1で定義されたとしても実体は一つになることが保証される*2。 (C++14まで)inline指定子を付けた場合、コンパイラはその関数をインライン展開するヒントとすることができる。 「inline指定子を付けた場合、コンパイラはその関数をインライン展開するヒントとすることができる。」という記述はC++17以降で無くなりました。 ただし、コンパイラの最適化は見える結果が変わらない範囲で自由に行えるため、inline指定子をヒントにすることは問題ありません。(2020/0

                                      C++におけるinline指定子の誤解 - よーる
                                    • An Introduction to Asynchronous Programming in Rust and a High-level Overview of Tokio's Architecture

                                      An Introduction to Asynchronous Programming in Rust and a High-level Overview of Tokio's Architecture Asynchronous programming allows the development of services that can handle millions of requests without saturating memory and CPU utilization. Support for asynchrony is usually baked into the programming language; we take a look at async support in Rust, a type-safe and memory-safe systems progra

                                        An Introduction to Asynchronous Programming in Rust and a High-level Overview of Tokio's Architecture
                                      • stack で管理されたプロジェクトを cabal でビルドするために

                                        Haskell のビルドツールといえば cabal と stack です。ちょっと前までは cabal より stack の方が流行っていたのですが、最近は開発も落ち着いているようであまり動きがありません。それよりも cabal の nix-style local build が非常に使いやすく、近頃では stack から cabal に移行しているプロジェクトも多くあります。 stack を使っていて改善したら良いなぁと思う部分としては、新しい GHC やライブラリをすぐに使おうと思っても LTS や nightly に入っていないため使えなかったり、Backpack が未だに使えなかったりするところでしょうか。 ただ、ビルドの再現性という点においては stack の方が優秀だと思っているので今は両方使っています。(index-state と freeze ファイルを組み合わせれば ca

                                        • 拡張可能レコードのライブラリrecord4sについてScalaMatsuri 2024で発表しました - 貳佰伍拾陸夜日記

                                          ScalaMasturi 2024で, 拙作の拡張可能レコードのライブラリrecord4sについて発表してきました. 発表で触れられなかった点も補足しながら, 内容を文章にしておこうと思います. とくにrecord4s以外のレコード実装との比較についてはこの記事での完全書き下ろしです. モチベーション Scala 3の標準機能による解決 理想 record4s Tips メソッドの定義 例を使ってJSONをデコード 内部実装 フィールドアクセス レコードの結合 重複キー問題 Scalaの他のレコード実装 shapelessのRecord scala-records Karlsson & Haller '18 record4sのArrayRecord Named Tuples 他の言語での例 PureScript TypeScript Haskell パフォーマンス レコード作成の実行時間

                                            拡張可能レコードのライブラリrecord4sについてScalaMatsuri 2024で発表しました - 貳佰伍拾陸夜日記
                                          • インフラ構成図やシステム構成図で使えるアイコン集のリンク - プログラマの思索

                                            小川 明彦, 阪井 誠 : チケット駆動開発 日本のソフトウェア開発の現場で生み出された「チケット駆動開発」という概念を、数多くの実例を元にモデル化・体系化を試みた最初の本。 小川 明彦, 阪井 誠 : Redmineによるタスクマネジメント実践技法 Redmineによるチケット駆動開発の実践技法に関する最初の本。アジャイルなソフトウェア開発への適用方法、TestLinkによるテスト管理手法についても言及。 清水 吉男: 「派生開発」を成功させるプロセス改善の技術と極意 組込システム開発をベースとして、ソフトウェア開発特有のスタイルである派生開発、特にXDDPについて解説した世界でも稀な本。既存製品を保守するのではなく継続的に機能追加していく昨今の開発では、派生開発特有の問題を意識しなければならない。XDDPはプロセス論だけでなく、要件定義などの上流工程の品質改善にも役立つので注意。 Le

                                              インフラ構成図やシステム構成図で使えるアイコン集のリンク - プログラマの思索
                                            • Reanimate

                                              Reanimate is: An animation library: Animations are written as code. Written in Haskell: High-level, purely functional, expressive. Based on SVG: Powerful and introspective. Cross-platform: Windows, MacOS, and Linux. Reanimate aims to be a batteries-included way of creating animations and illustrations. It builds on two core ideas: (1) graphics (both still and animated) should be expressed as code,

                                              • The visitor pattern is essentially the same thing as Church encoding

                                                The visitor pattern is essentially the same thing as Church encoding This post explains how the visitor pattern is essentially the same thing as Church encoding (or Böhm-Berarducci encoding). This post also explains how you can usefully employ the visitor pattern / Church encoding / Böhm-Berarducci encoding to expand your programming toolbox. Background Church encoding is named after Alonzo Church

                                                • HaskellライブラリをビルドしていたらCircleCIに暗号通貨をマイニングしてると誤認されて一時BANされた話

                                                  突然CircleCIが動かなくなりました 2021年07月05日に、 CircleCIが動かなくなりました。 何をしていたのかと言うと、自作のHaskellライブラリを新しいStackageでビルドできることを確認するためにLTSを上げたPRを作っていました。そしたらCircleCIがビルドをCanceledにしてきて、調子悪いのかなと思ってRerunしてみたら、新しいジョブがNot Runになって動かない。 クレジットが無くなったのかと思いましたが、月始めですし、そもそもOSSは無料で動かせるはずです。 前からCircleCIの構文は動いてたものを使ってたのになと思ったら、他のプロジェクトもNot Runになって、こういう画面が出てきました。 Not Runの画面 利用規約に違反したとか書かれている…? しかしCircleCIの利用規約に違反するような行為をした記憶はないです。まあ利用規

                                                    HaskellライブラリをビルドしていたらCircleCIに暗号通貨をマイニングしてると誤認されて一時BANされた話
                                                  • 週刊Railsウォッチ(20210316後編)testdouble/standard gem、DockerfileベストプラクティスとDockerfileのlintツールhadolintほか|TechRacho by BPS株式会社

                                                    週刊Railsウォッチについて 各記事冒頭には🔗でパーマリンクを置いてあります: 社内やTwitterでの議論などにどうぞ 「つっつきボイス」はRailsウォッチ公開前ドラフトを(鍋のように)社内有志でつっついたときの会話の再構成です👄 お気づきの点がありましたら@hachi8833までメンションをいただければ確認・対応いたします🙇 TechRachoではRubyやRailsなどの最新情報記事を平日に公開しています。TechRacho記事をいち早くお読みになりたい方はTwitterにて@techrachoのフォローをお願いします。また、タグやカテゴリごとにRSSフィードを購読することもできます(例:週刊Railsウォッチタグ) 🔗Ruby 🔗 RuboCopがオーガニゼーションをgithub.com/rubocop-hqからgithub.com/rubocopへ移行(現在は完了)

                                                      週刊Railsウォッチ(20210316後編)testdouble/standard gem、DockerfileベストプラクティスとDockerfileのlintツールhadolintほか|TechRacho by BPS株式会社
                                                    • 自動printfデバッグ - モナドとわたしとコモナド

                                                      関数をデバッグするために、引数と戻り値をそれぞれ表示するというのを誰しもやったことがあると思う。今回はそれを自動化するからくりをHaskellで実装してみる。 目標となるのは、関数が与えられたとき、その引数と結果をターミナルに出力する関数に変換する高階関数、probe :: Traceable a => String -> a -> aである。 testDelay :: Double -> Double -> IO () testDelay dur dur' = threadDelay $ round $ (dur + dur') * 1000000 *Probe> probe "testDelay" testDelay 1 2 testDelay 1.0 2.0: () これは型クラスを活用すればお茶の子さいさいである。以下のように型によって挙動を切り替える関数withTraceData

                                                        自動printfデバッグ - モナドとわたしとコモナド
                                                      • 世界のプログラミング言語(36) 純粋関数型言語Haskellは難しいが学ぶ価値がある言語

                                                        Haskellは純粋関数型プログラミング言語です。本連載では既にLispやOCamlなどの関数型言語を紹介しましたが、Haskellは関数型言語の中でも特に人気の高い言語です。Stack Overflowの人気言語調査でも2020年は15位、2021年は22位と人気言語がひしめくなか健闘しています。Haskellは難しい言語としても有名ですが、その作法を学ぶならプログラマーの基礎体力の向上に役立つことでしょう。今回はHaskellを試してみよう。 HaskellのWebサイト Haskellとは Haskellは関数型プログラミング言語の一つです。 純粋関数型言語に分類されます。金融やセキュリティ、科学解析、プログラミング言語の開発などの分野で使われています。総じて信頼性が求められる分野の開発で採用されています。そのため、十分実用的な言語と言えます。 しかし、Haskellには「遅延評価」

                                                          世界のプログラミング言語(36) 純粋関数型言語Haskellは難しいが学ぶ価値がある言語
                                                        • fp-tsでTypeScriptでも関数型プログラミング - Qiita

                                                          この記事は ウェブクルー Advent Calendar 2019 10日目の記事です。 昨日は @wchikarusato さんの「steamゲームのmodから学ぶ設計」でした。 0. はじめに 普段はScalaをメインにWebアプリケーションの開発をしています。 たまにTypescriptも触るんですが、Scalaと比べるとコレクション操作で痒いところに手が届かなかったりして、ちょっとモヤモヤする時も。Scalaっぽく開発できないかな〜と思っていた所に、fp-ts という関数型プログラミングのエッセンスを取り入れられるライブラリが目についたので、興味本位で使ってみました。 Haskell, PureScript, Scalaから影響を受けているようで、メソッド名も関数型プログラミング界隈で馴染み深いものになっています。(まあ Haskell, PureScript は触ったことが無いの

                                                            fp-tsでTypeScriptでも関数型プログラミング - Qiita
                                                          • 並置による関数適用に関する所感

                                                            juxtaposition-application.md 並置による関数適用 並置による関数適用の善し悪しについて盛り上っているので、自分の意見を表明しておく。以下の2本立て。 純粋に構文論的な議論 (構文拡張の余地を残す) 意味論との関係での議論 (副作用の表示) 先に結論だけ書くと、私はどちらかといえば括弧による関数適用のほうが好みです。 そもそも並置による関数適用とは 以下のように特定のデリミタによらず、2つの式を並べるだけで関数適用できることを本稿では並置による関数適用 (application by juxtaposing) と呼ぶことにします。 result = f x y 理論面ではλ計算の標準的な記法で、また実用例としてはHaskellやOCamlなど広義のML系でよく見られる形式です。 並置による関数適用以外に以下のような関数適用構文が存在します。 括弧による関数適用 f

                                                              並置による関数適用に関する所感
                                                            • 麻雀の多面待ちのパターンを全て求めてみた - Qiita

                                                              (2022/10/12追記) この記事をリメイクしました。そちらでは手牌の画像と待ちの画像も載せています。また、ここで求めたリストよりも多くなっています(洗い出すパターンの定義を変えたため)。 https://zenn.dev/firedial/articles/dce2ad243b3516 (2022/10/15追記) 理論もリメイクしました。用語も一部修正しています(標準形から基本形に変更など)。 https://zenn.dev/firedial/articles/2480e844bf5a44 そのため、当記事は deprecate 的な扱いとします。用語など食い違う場合は上記の記事が正とします。 はじめに このサイトに 7 枚待ちのパターンが全て載っている。 10 枚と 13 枚はどうなるのか求めたくなるのが人間の心理である。 今回は haskell でプログラムを書いた。 htt

                                                                麻雀の多面待ちのパターンを全て求めてみた - Qiita
                                                              • Direct-style Effects Explained

                                                                Direct-style Effects Explained By Noel Welsh on 24 Apr 2024 Direct-style effects, also known as algebraic effects and effect handlers, are the next big thing in programming languages. At the same time I see some confusion about direct-style effects. In this post I want to address this confusion by explaining the what, the why, and the how of direct-style effects using a Scala 3 implementation as a

                                                                • A shiny future with GATs

                                                                  This was a surprisingly difficult blog post to write. Between general life things getting in the way and feeling a bit of lost steam, this took much longer than I expected. Before I go further, if you don’t know what GATs (generic associated types) are, then I recommend reading this blog post from August of last year. A bit over a year ago, the traits working group started to talk seriously about

                                                                  • コンパイル時に定数を処理してしまうアレ | κeenのHappy Hacκing Blog

                                                                    κeenです。コンパイル時に定数を処理する最適化技法あるじゃないですか。あれの名称がイマイチはっきりしないのでモヤモヤするなーという記事です。 技法 コンパイル時に定数を処理する最適化技法は色々あるんですがそれらを包括した名称だったり個別の名称だったりがごっちゃになってるのがはっきりしない要因です。 ここでは個別の技法を7つ挙げておきます。 技法A 定数と分かっている変数を定数におきかえるやつ 例 A = 100; B = A + 10; ↓ A = 100; B = 100 + 10; 技法B 変数から変数への代入を削除し、代入先の変数への参照を代入元の変数への参照に置き換えるやつ 例 A = 100; B = A; C = B + 10; A = 100; C = A + 10; 技法C 条件分岐の条件が定数の場合に条件なしジャンプにするやつ 例 if (true) { do_some

                                                                      コンパイル時に定数を処理してしまうアレ | κeenのHappy Hacκing Blog
                                                                    • YAPC::Hiroshima 2024レポート――YAPC::Japan史上最大規模の448名が参加 | gihyo.jp

                                                                      2024年2月9、10日、広島国際会議場(広島)にて、YAPC::Hiroshima 2024の前夜祭・本編・懇親会が開催されました。 コロナ禍を過ぎて、再び完全オフラインでの開催となったYAPC::Japan。初めて中国地方・広島での開催となり、本編参加者には過去最大規模の448名の参加者が集まり、改めてYAPCというコミュニティが持つ熱量の大きさ、技術を楽しみたい人たちの期待を体感できる場となりました。 写真 多くの来場者が足早に本編受付を行った(写真提供:Japan Perl Association) 今回は本編の会場:厳島(ダリア)のセッションを中心に、その模様をお届けします。 「what you like」の気持ちで――オープニングメッセージ オープニングを担当したのは広島在住の@chanyou0311氏。 写真 「ようこそ広島へ!!」のメッセージで本編が開幕(写真提供:Japa

                                                                        YAPC::Hiroshima 2024レポート――YAPC::Japan史上最大規模の448名が参加 | gihyo.jp
                                                                      • The golden rule of software quality

                                                                        This post summarizes a rule of thumb that I commonly cite in software quality discussions, so that I can link to my own post to save time. I have taken to calling this the “golden rule of software quality” because the rule is succinct and generalizable. The golden rule is: Prefer to push fixes upstream instead of working around problems downstream … and I’ll explain implications of this rule for a

                                                                        • 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で型レベルパーサー
                                                                          • 引きこもり・日記・エンジニア人生 - 30歳からのプログラミング

                                                                            2 年ぶりに労働し始めたことでブログの更新頻度が露骨に落ちているが、文章を全く書いていないわけではなく、折に触れて社内で長文を投下している。 社内向けの怪文書ばかり書いていて、パブリックなブログを全然書けない。— なむ (@numb_86) 2021年12月29日 内容は本当に個人的なものというか、自分が考えていることや思っていることを書いているだけで、ブログと同じノリでやっている。 これは私だけがやっているわけではなく、例えば代表の庄田も最近考えていることや意識していることを scrapbox に書いていて、いくつかはブログの一部として社外にも公開されている。 自分の考えを文章にすることは私にとって自然なことなので深く考えずに書いていたのだが、その結果、会社から特別手当が支給された。 勤務先の HERP ではクオーター単位で全社的な振り返りを行っているのだが、そのタイミングで、会社が掲げ

                                                                              引きこもり・日記・エンジニア人生 - 30歳からのプログラミング
                                                                            • 株式会社HERPに転職しました - モナドとわたしとコモナド

                                                                              GitHubのプロフィールを見た人などはもしかしたら気づいているかもしれないが、Tsuru Capital LLCを退職し、2022年2月16日よりHERPの正社員となった。HERPは、大まかに言えば採用活動を管理するプラットフォームを提供している。 きっかけ Tsuru CapitalはKospi(韓国株のインデックス)のデリバティブを半自動取引する企業で、Haskellを使っているというのが最大の特徴として知られる謎多き会社だ。2015年に入社し、2022年まで6年以上働いた。流石に同じ職場にずっといると経験が偏ってしまうし、感覚としても飽きがきたので転職を考えた。 また、ある時期からRustメインの開発をするようになったが、やはり自分の最大の強みであるHaskellを活かせる仕事をしたく、転職先を考える基準となった。 拙作のライブラリであるextensibleを使っているという情報も

                                                                                株式会社HERPに転職しました - モナドとわたしとコモナド
                                                                              • Fantastic Learning Resources

                                                                                Fantastic Learning Resources Aug 6, 2023 People sometimes ask me: “Alex, how do I learn X?”. This article is a compilation of advice I usually give. This is “things that worked for me” rather than “the most awesome things on earth”. I do consider every item on the list to be fantastic though, and I am forever grateful to people putting these resources together. Learning to Code I don’t think I hav

                                                                                • State of the Common Lisp ecosystem, 2020 🎉 - Lisp journey

                                                                                  📢 ⭐ Celebrating 1001 learners on my Common Lisp course with this coupon code. Thank you! Recently added: 17 videos on MACROS. More info. 🎥 I also have cool Lisp showcases on Youtube . The last ones: how to build a web app in Common Lisp, part 1 and 2. This is a description of the Common Lisp ecosystem, as of January, 2021, from the perspective of a user and contributor. The purpose of this artic