PureScript は、 Haskell ライクな altJS である。「Haskell ライク」という評判に劣らず、 Haskell の最も重要な特徴である型クラスをきちんと受け継いでいる。 現在のバージョンは 0.11.7 である。したがってまだ安定しているとは言えない。バージョン 1.0 まで解決されるべき Issues はこれだけある。 特徴 Haskell との設計上の違いは、以下のページにまとまっている: documentation/Differences-from-Haskell.md at master · purescript/documentation その中でも大きなものを、筆者の独断と偏見で2つ挙げる: 正格評価 レコード型と row polymorphism その他の特徴: Rank N polymorphism (RankNTypes) がある MultiPa
"PureScript is more like Haskell than Haskell itself." – `@thebeardedzug — Rahul Goma Phulore (@missingfaktor) 2017年3月24日 はじめに スクリプト言語PureScriptの開発環境構築から簡単なアプリケーションの作成までの手順を紹介します。この記事では、基本的なコマンドライン環境のアプリケーションだけでなく、Halogenというユーザインターフェイスのフレームワークや、簡単なサーバサイドアプリケーションを動かすところまでを紹介しています。そのため、シングルページアプリケーションのような実用性の高いアプリケーションを作って試せるようになっています。ブラウザ環境で動けば、ウェブページに組み込んで自分が作ったアプリケーションを簡単に他の人に見せられますし、Electronを使って
When I last wrote about binding PureScript to C++, I demonstrated animating the PureScript logo with SFML. Since then, PureScript Native (PSN) has superseded Pure11 and the details for using PSN have changed. To make this concrete, I’ll go over what it took to create Lambda Lantern — a 3D game about functional programming patterns. Originally Lambda Lantern started off as a GitHub Game Off submiss
目的 必須フィールド「a」「b」 任意フィールド「c」「d」 を持つレコードMyRecordを作りたい! 方法 import Prim.Row as Row import Unsafe.Coerce (unsafeCoerce) data MyRecord type MyRecordRequired opt = { a :: Int, b :: Int | opt } type MyRecordOptional = ( c :: Int, d :: Int ) type MakePartialRecord (req :: # Type -> Type) (opt :: # Type) (rec :: Type) = forall options trash . Row.Union options trash opt => req options -> rec makeMyRecord ::
Client-side web programming in Haskell: A retrospective At the beginning of this decade (2010), a few of us Haskellers were exploring how best to do client-side web programming. We didn’t want to write JavaScript. There’s a surprising number of techniques we tried to avoid doing so. There was work coming from academia and industry. Here’s a history of my own experience in this problem space. In 20
PureScriptの公式ドキュメントより、『Haskellとの違い』のざっくり翻訳+αです。原文のライセンスはCreative Commons Legal Code Attribution-NonCommercial-ShareAlike 3.0 Unported です。 (翻訳ここから) 評価戦略 Haskellとは異なり、PureScriptは正格評価です。 JavaScriptの評価戦略と一致するので、既存のコードとの相互運用はとても簡単です。PureScriptモジュールからエクスポートされた関数は、「通常の」JavaScript関数とまったく同じように振る舞いますし、それに対応して、FFIを通じてのJavaScriptの呼び出しもシンプルになっています。 正格評価を維持するということは、実行時システムや非常に複雑なJavaScript出力も必要ないということを意味します。やむを
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? (※アイキャッチ画像は、この記事に関係あるようで関係ないウサギ対ウナギ画像です) アドベントカレンダー『Elm2』の昨日の記事は、ababさんの『Elmで副作用を扱う仕組みCmdがとっても良い理由』でした。副作用のある部分とない部分を分離する「純粋」な言語は、作用を扱うのが面倒くさい言語だと思われがちですが、実は作用を扱うのがとても上手なんですよね。ElmのCmdは、Haskellみたいにモナモナせずにシンプルに作用を扱う方法としてElmがたどり着いた、ひとつの解答であります。 さて、Elm と PureScript は、どちらも Al
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く