はてなブックマークアプリ

サクサク読めて、
アプリ限定の機能も多数!

アプリで開く

はてなブックマーク

  • はてなブックマークって?
  • アプリ・拡張の紹介
  • ユーザー登録
  • ログイン
  • Hatena

はてなブックマーク

トップへ戻る

  • 総合
    • 人気
    • 新着
    • IT
    • 最新ガジェット
    • 自然科学
    • 経済・金融
    • おもしろ
    • マンガ
    • ゲーム
    • はてなブログ(総合)
  • 一般
    • 人気
    • 新着
    • 社会ニュース
    • 地域
    • 国際
    • 天気
    • グルメ
    • 映画・音楽
    • スポーツ
    • はてな匿名ダイアリー
    • はてなブログ(一般)
  • 世の中
    • 人気
    • 新着
    • 新型コロナウイルス
    • 働き方
    • 生き方
    • 地域
    • 医療・ヘルス
    • 教育
    • はてな匿名ダイアリー
    • はてなブログ(世の中)
  • 政治と経済
    • 人気
    • 新着
    • 政治
    • 経済・金融
    • 企業
    • 仕事・就職
    • マーケット
    • 国際
    • はてなブログ(政治と経済)
  • 暮らし
    • 人気
    • 新着
    • カルチャー・ライフスタイル
    • ファッション
    • 運動・エクササイズ
    • 結婚・子育て
    • 住まい
    • グルメ
    • 相続
    • はてなブログ(暮らし)
    • 掃除・整理整頓
    • 雑貨
    • 買ってよかったもの
    • 旅行
    • アウトドア
    • 趣味
  • 学び
    • 人気
    • 新着
    • 人文科学
    • 社会科学
    • 自然科学
    • 語学
    • ビジネス・経営学
    • デザイン
    • 法律
    • 本・書評
    • 将棋・囲碁
    • はてなブログ(学び)
  • テクノロジー
    • 人気
    • 新着
    • IT
    • セキュリティ技術
    • はてなブログ(テクノロジー)
    • AI・機械学習
    • プログラミング
    • エンジニア
  • おもしろ
    • 人気
    • 新着
    • まとめ
    • ネタ
    • おもしろ
    • これはすごい
    • かわいい
    • 雑学
    • 癒やし
    • はてなブログ(おもしろ)
  • エンタメ
    • 人気
    • 新着
    • スポーツ
    • 映画
    • 音楽
    • アイドル
    • 芸能
    • お笑い
    • サッカー
    • 話題の動画
    • はてなブログ(エンタメ)
  • アニメとゲーム
    • 人気
    • 新着
    • マンガ
    • Webマンガ
    • ゲーム
    • 任天堂
    • PlayStation
    • アニメ
    • バーチャルYouTuber
    • オタクカルチャー
    • はてなブログ(アニメとゲーム)
    • はてなブログ(ゲーム)
  • おすすめ

    猛暑に注意を

『The If Works – The If Works』

  • 人気
  • 新着
  • すべて
  • The Myers diff algorithm: part 1 – The If Works

    8 users

    blog.jcoglan.com

    If you enjoy this article, I have published a book explaining the internals of Git through implementation: Building Git. — As a programmer, you probably use a version control system such as Git, and spend an awful lot of your time looking at diffs. You use them to check over your uncommitted work in progress, to look at what changed in a single commit, to compare two branches before performing a m

    • テクノロジー
    • 2017/02/15 19:42
    • Algorithm
    • あとで読む
    • Canopy produces portable PEG parsers – The If Works

      3 users

      blog.jcoglan.com

      Most of the open-source software that I write is done at least partly for learning purposes. The majority of it isn’t used by many people, I just wrote it to implement some existing idea, so I could understand how it works. One such project is Canopy, a PEG parser generator that I originally wrote as part of a very protracted yak shave – while writing a Capybara driver to run in the browser, I fou

      • テクノロジー
      • 2015/07/21 07:39
      • library
      • Java
      • ruby
      • JavaScript
      • jstest 1.0: the cross-platform JavaScript test framework finally released as a standalone package – The If Works

        3 users

        blog.jcoglan.com

        After hacking away on it for months, I’m happy to announce the 1.0 release of jstest as a standalone package. jstest has long been part of the jsclass library but over time it’s become the module I use the most: I test all my other JavaScript projects with it, not just those based on jsclass. Using it as heavily as I do, I’ve noticed how its user interface can be troublesome. To being with, you ne

        • テクノロジー
        • 2013/07/01 14:25
        • library
        • JavaScript
        • How Ruby method dispatch works – The If Works

          3 users

          blog.jcoglan.com

          I was asking around to see if anyone knew a good, short explanation of Ruby’s object and method dispatch system the other day, and the response from several people was, “no, you should write one.” So, here we are. I’m going to explain how Ruby’s object system works, including method lookup, inheritance, super calls, classes, mixins, and singleton methods. My understanding comes not from reading th

          • テクノロジー
          • 2013/05/10 21:49
          • Ruby
          • Callbacks are imperative, promises are functional: Node's biggest missed opportunity – The If Works

            20 users

            blog.jcoglan.com

            The nature of promises is that they remain immune to changing circumstances. Frank Underwood, ‘House of Cards’ You will often hear it said that JavaScript is a ‘functional’ programming language. It is described as such simply because functions are first-class values: many other features that define functional programming – immutable data, preference for recursion over looping, algebraic type syste

            • テクノロジー
            • 2013/03/31 08:17
            • JavaScript
            • programming
            • functional
            • node.js
            • Your first Ruby native extension: C – The If Works

              10 users

              blog.jcoglan.com

              A few months back I released faye-websocket 0.4, my first gem that contained native code. After a few mis-step releases I got a working build for MRI and JRuby, but getting there was a little tricky. What follows is a quick how-to from someone who knows barely any C or Java, to explain how to wire your code up for release. This only covers one possible use case for native code: rewriting a pure fu

              • テクノロジー
              • 2012/08/02 23:21
              • ruby
              • development
              • *あとで
              • tips
              • Promises are the monad of asynchronous programming – The If Works

                11 users

                blog.jcoglan.com

                In my introduction to monads in JavaScript we saw a couple of monads and examined the commonality between them to expose an underlying design pattern. Before I get on to how that applies to asynchronous programming we need to take one final diversion and discuss polymorphism. Consider the list monad that we implemented before: var compose = function(f, g) { return function(x) { return f(g(x)) }; }

                • テクノロジー
                • 2011/05/12 00:49
                • monad
                • promise
                • javascript
                • Programming
                • Translation from Haskell to JavaScript of selected portions of the best introduction to monads I've ever read – The If Works

                  11 users

                  blog.jcoglan.com

                  (With apologies to John Gruber and A Neighborhood of Infinity.) I know, I know, the world does not need yet another introduction to monads (or yet another article complaining that world does not need yet another introduction to monads). So you’ll be glad to know this isn’t one of those, in the sense that it’s not new. I thought I’d write it because, first, monads are worth knowing about, and secon

                  • テクノロジー
                  • 2011/03/08 19:16
                  • monad
                  • javascript
                  • Haskell
                  • programming
                  • Monad syntax for JavaScript – The If Works

                    4 users

                    blog.jcoglan.com

                    Following on from my introduction to monads in JavaScript, and before I get into how they apply to asynchronous programming, I’d like to take a quick detour to improve the usability of the tools we’ve built up. Recall we have a function for composing functions: var compose = function(f, g) { return function(x) { return f(g(x)) }; }; // sine :: Number -> (Number,String) var sine = function(x) { ret

                    • テクノロジー
                    • 2011/03/07 01:12
                    • monad
                    • javascript
                    • js
                    • Evented programming patterns: Deferrable values – The If Works

                      3 users

                      blog.jcoglan.com

                      This post is part of a series on event-driven programming. The complete series is: Events: they’re not just for the DOM, you know Observable objects Deferrable values Asynchronous methods First-leg round-up and final remarks Object lifecycle Asynchronous pipelines Testing event-driven apps The Deferrable pattern is a specialisation of observable objects that mixes state into the event dispatch pro

                      • テクノロジー
                      • 2010/02/24 21:14
                      • javascript
                      • Talk: Writing a language in 15 minutes – The If Works

                        20 users

                        blog.jcoglan.com

                        I gave a talk at London Ruby User Group yesterday, based on the work I’ve been doing on Heist, my Scheme interpreter project. I wrote the core of a basic Scheme interpreter in about 15 minutes as a live-coded demo (well, kind of – the coding was pre-recorded so I could focus on talking), which seemed to go down pretty well. If you missed it (or if you were there and want to watch it again in slow

                        • 暮らし
                        • 2009/06/02 10:19
                        • Scheme
                        • ruby
                        • programming
                        • tutorial
                        • !gtd 資料(いつか読む)
                        • ネタ
                        • Composing DSLs in JavaScript – The If Works

                          5 users

                          blog.jcoglan.com

                          Further to my previous post I thought I’d share the approach I’ve been using to compose DSLs in JavaScript. If you want a more involved example, check out the currently in-development Forms module for Ojay. For this example I’m going to be writing a simple permissions language that sets up rules about when certain methods may be called. It could be applied to a system for playing monopoly: TheRule

                          • テクノロジー
                          • 2008/03/23 18:53
                          • javascript
                          • Deriving the Y combinator – The If Works

                            6 users

                            blog.jcoglan.com

                            Before I start in on this: be aware I’m mostly writing this to force myself to understand something by writing it down. If you get anything out of it, consider it a bonus. I will be deriving Y() in JavaScrpit, and giving a version in Ruby. After stumbling on this article on Raganwald last year (thoroughly interesting site by the way), I was initially intrigued and then totally frustrated by not be

                            • テクノロジー
                            • 2008/01/11 18:15
                            • Ycombinator
                            • javascript
                            • algorithm
                            • Asynchronous function chaining in JavaScript – The If Works

                              3 users

                              blog.jcoglan.com

                              Update, 25 February 2008: This class is now available as part of JS.Class (it’s called MethodChain now). It also forms a key part of Ojay, an expressive wrapper for YUI. Update, 12 Dec 2007: Another implementation change. A blank ChainCollector instance now has the following properties: then, and, ____ (formerly __enqueue) and fire. The method queue and base object are private variables, and addMe

                              • テクノロジー
                              • 2007/10/31 10:46
                              • plugin
                              • library
                              • jquery
                              • javascript
                              • The If Works » PackR

                                4 users

                                blog.jcoglan.com

                                PackR is a Ruby port of Dean Edwards’ MIT-licensed JavaScript compressor, Packer: # Packer version 3.0 (final) - copyright 2004-2007, Dean Edwards # http://www.opensource.org/licenses/mit-license http://dean.edwards.name/packer/ This version is based on Packer 3.0. You may find that the results it produces are not strictly identical to those of the JavaScript version, but the difference is just a

                                • 暮らし
                                • 2007/10/18 21:24
                                • rails
                                • javascript
                                • plugin

                                このページはまだ
                                ブックマークされていません

                                このページを最初にブックマークしてみませんか?

                                『The If Works – The If Works』の新着エントリーを見る

                                キーボードショートカット一覧

                                j次のブックマーク

                                k前のブックマーク

                                lあとで読む

                                eコメント一覧を開く

                                oページを開く

                                はてなブックマーク

                                • 総合
                                • 一般
                                • 世の中
                                • 政治と経済
                                • 暮らし
                                • 学び
                                • テクノロジー
                                • エンタメ
                                • アニメとゲーム
                                • おもしろ
                                • アプリ・拡張機能
                                • 開発ブログ
                                • ヘルプ
                                • お問い合わせ
                                • ガイドライン
                                • 利用規約
                                • プライバシーポリシー
                                • 利用者情報の外部送信について
                                • ガイドライン
                                • 利用規約
                                • プライバシーポリシー
                                • 利用者情報の外部送信について

                                公式Twitter

                                • 公式アカウント
                                • ホットエントリー

                                はてなのサービス

                                • はてなブログ
                                • はてなブログPro
                                • 人力検索はてな
                                • はてなブログ タグ
                                • はてなニュース
                                • ソレドコ
                                • App Storeからダウンロード
                                • Google Playで手に入れよう
                                Copyright © 2005-2025 Hatena. All Rights Reserved.
                                設定を変更しましたx