- + 最近の小学校では、「お父さん・お母さんの名前をグーグルで検索してみましょう」という、世にも恐ろしい授業があるらしい。・・・。 — 丹 洋介 (@yosuke_tan) January 25, 2015
- + 最近の小学校では、「お父さん・お母さんの名前をグーグルで検索してみましょう」という、世にも恐ろしい授業があるらしい。・・・。 — 丹 洋介 (@yosuke_tan) January 25, 2015
あと、やはりネットワーク周りなどI/Oの多いプログラムの書きにくさが課題になっている印象。関数的なI/OはFRPで解決できそうな気がするんだけど調べてない。そろそろFRPをちゃんと理解したいなー。 Parsec 3活用事例: Keepalived構文チェッカ - maoeのブログ なんて書いてから早1ヶ月半、ようやくFRPが掴めてきたのでわかったことをまとめてみます。 Reactive programmingって何? FRPの前に、一般的にwikipedia:en:Reactive programmingと呼ばれるパラダイムについて触れておきます。reactive programmingとは疑似言語を使ってかなーり大雑把に説明すると、 var a = 1 var b = a + 1 a = 10 // aを書き換える print b // => 11print bの出力は2ではなく11です
Reactive Programming in JavaScript ( 今回のスライド: HTML版 ) このスライド自体が Bacon.js で書かれた ahomu/Talkie で作られています。Rx系のライブラリに興味を持たれた方は、ぜひコードのほうもご覧いただければ。 アジェンダ What is Reactive Programming ? Reactive in Frontend JavaScript FRP with Reactive Extensions Reactive Programming について紹介しました。今回も懲りずに新ネタでしゃべった次第。Reactive も Functional も若干こわいひとたちが生息しているイメージ(個人の感想です)があるので、遅延評価で飛んでくる斧だけがこわい :P ノイズ避け 率直な感想として、RP/FRP を学ぼうとすると情報
About the content This content has been published here with the express permission of the author. Promises are a well-known design pattern used to delay evaluation of future values, and to pipeline operations in an asynchronous manner. Typically, there are three internal states used to control the behavior of promises, but there is a lack of core interfaces essential to iOS & OS X development. To
Observed is a highly extensible framework for polling applications, middlewares and services running locally or on remote servers. Observed allows you to: poll server(s), optionally modify the response result, pass the result on to other services or trigger other tasks All the above 3 operations are extensible via plugins and can be configured via configuration files. There are plugins available f
※注意 現在のElmは、これを書いた時とはかなり別物になっています。そのためElmを学ぶにはこの資料は適切ではありません。Functional Reactive Programmingの習得には参考になると思います。 ===== ElmはHaskellと同じく純粋関数型言語のひとつで、ブラウザ上で動くアプリケーションの作成に特化しています。目に見えるものがすぐに作れるなど、関数型プログラミングやFRP(Functional Reactive Programming)の入門によい面がいくつかあります。JavaScriptなど型のない手続き型言語に慣れた人向けに関数型プログラミングのイメージを掴んでもらうことを目的にしています。
最近再び Functional Reactive Programming (FRP) について調べているのでまとまり無くメモする。まず大まかな言葉の意味については http://en.wikipedia.org/wiki/Reactive_programming から辿るのが良いと思う。簡単に言うと、FRP とはスプレッドシートの計算モデルを拡張したライブラリや言語、プログラミング技術の事を言う。Function という言葉は付いていたり付いていなかったりするけど、Reactive Programming は副作用を制限する手法なので、どの手法も多かれ少なかれ関数的に使う。 FRP はかなり大雑把に使われる言葉なので人に説明するのが難しい。だけどよく似た粒度の言葉としてはコレクションライブラリくらいが丁度良いと思う。関数プログラミングや論理プログラミングのような大げさな言葉では無い。APL
What is Bacon.js? A small functional reactive programming lib for JavaScript. Turns your event spaghetti into clean and declarative feng shui bacon, by switching from imperative to functional. It's like replacing nested for-loops with functional programming concepts like map and filter. Stop working on individual events and work with event-streams instead. Transform your data with map and filter.
前回はFRPのBehaviorとEventという重要な概念と、Haskellでの代表的なライブラリを簡単に紹介しました。今回は紹介したものの中からreactiveというライブラリを取り上げます。 なお、reactiveを理解するにあたってLess Sugar/More Meat » Blog Archive » Introducing Reactive: Eventsというチュートリアルがとても役に立ったことを書いておきます。この後出てくる解説も冒頭部分はこのチュートリアルからとってきています。それと、動作環境はLinux上のGHC 6.12.1でコンパイルしたreactive 0.11.4を使っています。 reactiveの特徴 reactiveはConal Elliottが作った最新のFRPライブラリで、ライブラリのユーザ側から見た大きな特徴は、Arrowを使わない古典的FRPをFun
- + 最近の小学校では、「お父さん・お母さんの名前をグーグルで検索してみましょう」という、世にも恐ろしい授業があるらしい。・・・。 — 丹 洋介 (@yosuke_tan) January 25, 2015
JavaScriptのFunctional reactive programming(FRP)ライブラリ「Baconjs」を使ってFRPの考え方を勉強してみたメモ。 なお、このメモはFRPの勉強のためにいくつかの資料をざっくりまとめただけなので、Bacon.jsの使い方は解説しない。 なのでBacon.jsの使い方を知りたいだけなら元記事を読んだほうが良い。 Bacon.jsのReadme Bacon.jsのチュートリアルブログ(これとかこれ) 三行で FRPでは従来のプログラミングでは間接的にしか扱えなかった「徐々に変化する値」を第一級のオブジェクトとして扱うことができる。 さらに関数型のcompositionalな性質が合わさって素敵。 Bacon.jsは良いものだ。 従来のプログラミングでは時間とともに変化する値の扱いが難しい 例えば次のフォームの例を考えてみる。 <form> <i
iPadでの表示 iPad(初期)でデモを実行すると少しもっさりする。デモは大きな表(3x4x30x10=3600セル)だったので、セルの数を減らしてみたところ(3x10=300セル)まあまあな応答速度に。 UITableView のようにデータソース、デリゲートを介して...
Reactive Programming by UniRx �for Asynchronous & Event Processing This document introduces Reactive Programming and UniRx, which is a Reactive Extensions (Rx) library for Unity. It discusses how Rx allows for better event handling and asynchronous programming in Unity by treating events as observable sequences. UniRx brings the benefits of Rx such as LINQ-style querying and orchestration of event
This article includes a list of general references, but it lacks sufficient corresponding inline citations. Please help to improve this article by introducing more precise citations. (October 2016) (Learn how and when to remove this message) In computing, reactive programming is a declarative programming paradigm concerned with data streams and the propagation of change. With this paradigm, it is
By: Silk Engineering BlogMarch 19th 2014Writing large JavaScript projects is hard. The language lacks both a type system and a canonical module system, it has a rather clunky syntax and has a threading model that is, to say the least, interesting. No wonder so many third party JavaScript frameworks exist. Luckily JavaScript is a flexible language, which makes extending it easy. As the Silk client
About the content This content has been published here with the express permission of the author. Why does writing async code have to be a nightmare? Functional reactive programming aims to neat-ify your async woes by giving you the power to operate on closures the same way you operate on variables. RxSwift is a brand new library that aims to make your event-driven apps incredibly manageable and r
What is Bacon.js? A small functional reactive programming lib for JavaScript. Turns your event spaghetti into clean and declarative feng shui bacon, by switching from imperative to functional. It's like replacing nested for-loops with functional programming concepts like map and filter. Stop working on individual events and work with event-streams instead. Transform your data with map and filter.
Rihanna's image and music have evolved over her career from innocent to highly sexualized. Her early image portrayed her as young and cheerful while her current image shows her as a dark, sensual woman embracing her sexuality through revealing outfits and explicit lyrics and videos. She values challenging norms and rebelling against expectations of how female pop stars should present themselves. R
by Ben Christensen and Jafar Husain Our recent post on optimizing the Netflix API introduced how our web service endpoints are implemented using a reactive programming model for composition of asynchronous callbacks from our service layer. This post takes a closer look at how and why we use the reactive model and introduces our open source project RxJava — a Java implementation of Rx (Reactive Ext
Mid May, I gave a talk at NodePDX on functional reactive programming in JavaScript. I discussed the general ideas behind the programming paradigm and various implementations that exist. The video is finally available online and the slides are also available. Here’s some links to the various different approaches to functional reactive programming: Flapjax Reactive Extensions (RxJS) Shafty Javelin B
Functional Reactive Programming (FRP) integrates time flow and compositional events into functional programming. This provides an elegant way to express computation in domains such as interactive animations, robotics, computer vision, user interfaces, and simulation. Introduction The original formulation of Functional Reactive Programming can be found in the ICFP 97 paper Functional Reactive Anima
Already familiar with other frameworks such as Angular or React? See Design and Comparisons. Library of reactive programming primitives Declarative DOM construction Scalable in both performance and application architecture Simple, no magic, no new template language, all CoffeeScript Tested with Chrome, Firefox, Safari, and IE10 Available via Bower and cdnjs Works with jQuery MIT license Example: T
The goal of this article is not to go into the very details of Functional Reactive Programming. It’s more about getting you interested in Node.jsNode.js is an asynchronous event-driven JavaScript runtime and is the most effective when building scalable network applications. Node.js is free of locks, so there's no chance to dead-lock any process. streams and the concept of functional reactive progr
Haskell のアニメーションライブラリ Yampa についてのチュートリアル。またもや FRP (Functional Reactive Programming) の話題です。SOE の FAL は休憩して、その未来の姿である Yampa に寄り道します。Monad を一般化した Arrow なるものを使って、time / space leak なる物を排除し、モバイルロボットのプログラムをきっちり記述します。 プログラムの例として、シムボット(ロボットシミュレータ)を扱います。シムボットは二つの独立して動く車輪を持ち、ぶつかりセンサーや、前後左右に光学センサーを持ちます。また、他のシムボットの位置を知る事も出来ます。 シグナル (p 3) 一番重要な概念はシグナルです。 Signal a = Time -> a つまり、シグナルとは時間の関数です。例えばシムボットは車輪が二つあるので
Clojure's Journey: From Simplicity to Enterprise Maturity Jordan Miller discusses the evolution of the Clojure ecosystem, from Rich Hickey's initial vision tackling complexity to its current status as a mature enterprise solution. He explains key philosophies, highlights pivotal moments like the "Simple Made Easy" talk, and showcases the vibrant Clojure community and its innovative tools.
『WPF の binding に驚いた人をさらに唸らせるかもしれない Mathematica の Dynamic - NyaRuRuの日記』の微妙な続き. Mathematica と Functional Reactive Programming Flapjax - lethevert is a programmer ReaJ / Reactive JavaScript - Derive Your Dreams なるほどー,Reactive Programming というのですかー.国内(?) ではどうも 2003 年末ごろから話題になってた感じ. 一方の Mathematica 6.0 はリリースが 2007 年夏で,2006 年末には国内デモもやってたみたいだし,逆算するとやっぱり 2003 年か 2004 年ぐらいにはこの方向に決めてたんじゃないかなぁ.すごすー 下のページを読んでも
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く