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
ocamljs は OCamlから JavaScript へのトランスレータだ。前回の記事と順番が逆になってしまったけれど今回はocamljsについて書く (基本的に http://jaked.github.com/ocamljs/ 以外のことは書いてないです。)。 JavaScriptは歴史的経緯とその簡潔さからwebブラウザで使われているが,静的型付けでないので信頼性の面でいまいち不安だったり、言語の使いやすさの面でもパターンマッチの構文が無いとか、まともなモジュールシステムがないとかで良くない。 ocamljsを使えば、比較的安全・簡潔に大規模かつ動的なwebページを構成できるかもしれない。 ocamljsは残念ながらまだ成熟しているとはいえないが、実は既にすごく高機能だ。 現バージョンで既に DOM や jQuery を OCaml から操作できるし、いざとなれば JavaScri
オブジェクト指向なら分かるけど、モジュールでどうやってある程度の規模のプログラムをするのか、全く想像つかない!そんな諸氏のためにモジュールプログラミングのテクニックを、レベル分けしながら解説してみたいと思います。 レベル1(基礎編) アプリケーションで使う予定のデータや処理を大雑把にグループ分けして、それらに名前をつけて.mlファイルにします。個々の.mlファイルがモジュール、かつ、スコープ、かつ分割コンパイルの単位になるので、ある程度見通しがよくなります。モジュール同士の連携は、基本的にモジュール名を指定するだけ。後はその.mlファイルにシグネチャーを付けるもよし、つけなくても可。最後にmain.mlファイルを作って、そこからアプリケーションを起動するようにすればOK。とても簡単です。しかし、実を言うと、凝った作りのライブラリでもない限り、ほとんどこれで事足ります。大事なので二回言います
OCamlにはモジュールとクラスがあります。この二つの仕組みは、直感的によく似た機能を持っているので、どう使い分けたらいいのか迷う時があります。そこで、モジュールとクラスの使い分け方について少しまとめてみます。 基礎的なデータ/データ構造の場合 スタックとかキューとかグラフとか日付とか、内部構造を隠して操作だけを提供する、比較的基礎的な構造を作りたい場合です。この場合は、迷わずモジュールでいいです。ここをクラスにすると、バイナリメソッドで泣きます。 アプリケーションデータの場合 アプリケーション内で使う特定のデータ構造は、色々なデータの集合である事が多いので、大抵レコードになります。このレコードの代わりにクラスを使うのはありだと思います。逆に、これをモジュールでやると、内部型がないモジュールになって、オーバースペックな感じになります。もちろんレコードのままでいいなら、別にわざわざクラスにす
Introduction Simplistic GADTs in OCaml GADTs Towards open GADTs: extensible evaluator for a typed object language Generics for the OCaml masses This is joint work with Jeremy Yallop. Introduction First-class modules introduced in OCaml 3.12 make type constructors first-class, permitting type constructor abstraction and polymorphism. It becomes possible to manipulate and quantify over types of high
愛知県を拠点とする小さなソフトウェア開発会社です。 コンピュータ科学の成果を開発現場で実践することを使命と考えています。
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
News (2010-11-09) Jonathan Kimmitt created a pretty GUI frontend for iPad and it is now available on AppStore! Build Instruction 1. Requirements You need a working toolchain (gcc and binutils) for iOS (iPod Touch/iPad/iPhone). For example, you can use the official iOS SDK. In addition, in order to run your O'Caml programs, you need the iPhone Simulator of SDK, registered iOS devices, or jailbroken
8/28 に、OCaml Meeting 2010 in Nagoya に行ってきました。 朝早く起きて名古屋大学へ。 暑い・・・ やってみようOCaml / Walk with OCaml OCamlの基礎についてのお話 会場の人の殆どはOCamlでプログラムを書いたことがあるみたい haXeって言語がある FlashとかPHPとかJavaScriptで動かせる OCamlで実装されている 高速で動作して欲しいときは ocamlopt を使うとみんなハッピーになれる OCamlのラムダ計算 (λ+ :ラムダプラス) λterm ::= | x | λterm λterm | fun x -> λterm 追加で | 定数・リスト | バリアント・ペア | let, match, if さらに | 代入可能な変数・ループ・モジュール | 多相バリアント・オブジェクト さらに最新版(3.12
2010/8/28(土) に開催された OCaml Meeting 2010 in Nagoya の簡単な参加メモとその中のイベントである Golf コンテストの解説というか思考の軌跡についてである。プログラム、発表者については公式サイトを参照のこと。 やってみようOCaml OCaml の紹介セッション。帰りの電車で少し話をさせて頂いたのだが、初学者向けのセッションも 1 つは入れよう、という位置づけのセッションだったそうである。が、そもそも会場に初学者がほとんど居なさそうな感じでイベントの性格を表していたような気がする。ただこれも帰りの電車での話だが、新しい人が入ってこないとコミュニティが広がって行かないというのはその通りである。OCaml ユーザーは比較的狭いコミュニティで顔見知りが多いとも言われていたが、その場合、しばしば逆に外からは入りにくかったりする。自分も C++ → tem
2. FFTWて何MIT で開発されたFFT(高速フーリエ変換)のライブラリ開発: MatteoFrigo & Steven G. Johnsonその名も……The Fastest Fourier Transform in the West(西洋最速のフーリエ変換) 4. 支えているのはOCaml!FFT専用コンパイラ “genfft”let reccooley_tukey sign n1 n2 input =let tmp1 = array n2 (fun i2 -> dft sign n1 (fun i1 -> input (i1 * n2 + i2))) inlet tmp2 = array n1 (fun i1 -> array n2 (fun i2 -> exp n (sign * i1 * i2) @* tmp1 i2 i1)) inlet tmp3 = array n1 (f
The document provides advice for feeling overwhelmed as a newcomer to an OCaml project, recommending using the OCamlSpotter tool to more easily search and navigate code by leveraging metadata from the compiler rather than manual searching or grep. It describes how OCamlSpotter works and can be integrated with editors, and argues that it is a proven solution for locating symbols in OCaml code.Read
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く