タグ

langとFunctionalに関するyuguiのブックマーク (16)

  • PureScript:JavaScriptにコンパイルされるHaskellライクな言語

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    PureScript:JavaScriptにコンパイルされるHaskellライクな言語
  • http://biblion.epfl.ch/EPFL/theses/2007/3899/EPFL_TH3899.pdf

    POUR L'OBTENTION DU GRADE DE DOCTEUR ÈS SCIENCES PAR Dipl.-Inform., RWTH, Aachen, Allemagne et de nationalité allemande acceptée sur proposition du jury: Prof. M. A. Shokrollahi, président du jury Prof. M. Odersky, directeur de thèse Prof. V. Kuncak, rapporteur Dr D. Syme, rapporteur Dr M. Zenger, rapporteur Object-Oriented Pattern Matching Burak EMIR THÈSE NO 3899 (2007) ÉCOLE POLYTECHNIQUE FÉDÉ

  • ceylonとか話題になってるらしいが、あえてpizzaを紹介してScalaの誕生理由とかAlgebraic Data Typesとかいろいろ考えてみる - xuwei-k's blog

    なんだか、最近ceylonっていう新しいJVM上の言語がでたらしく、自分のTL上では話題になってました・・・ が、自分は興味わかないというか、Scalaがこれだけtwitterをはじめものすごく実用でつかわれてるのに、今更新しい言語つくって普及させるとかどうなの?という立場です。まぁ言語仕様もちゃんと見てないであれなんですが(・ω・`) だれかceylonの魅力を延々と語ってください。 たしかに、Scalaは複雑すぎる的な印象は仕方ない部分もあるかもしれないですが・・・とか考えてるときに、そういえばScalaを作成する以前にodersky先生がつくっていた言語あったよなーとか思い出して、前から書こうかと思っていたのでpizzaについて紹介してみます!というよくわからない流れヽ(`▽´)/ pizzaというのは、Scalaの作者であるodersky先生がScalaを作る前につくっていたJVM

    ceylonとか話題になってるらしいが、あえてpizzaを紹介してScalaの誕生理由とかAlgebraic Data Typesとかいろいろ考えてみる - xuwei-k's blog
  • OCaml プログラミング入門

    OCaml のすすめ OCaml とはフランスの 情報技術系の研究機関の INRIA で開発されている関数型言語 ML (の方言) です。ML には多相型、型推論、ガーベージコレクション (GC)、 データ構造のパターンマッチング等、プログラミング言語理論の研究の 成果 (すごく最新のものと言うわけでは無いそうですが) が詰め込まれ ています。これらの目的・効用は、 コードの再利用の範囲が大きい (多相型) コードの記述量が短かくなる (型推論・データ構造のパターンマッチング) バグの入り込む余地が少なくなる (GC、関数的(副作用の少ない)プログラミング) 等です。私は OCaml を研究でのデータ処理をはじめ、作成するプログラムほとんど 全てにおいて日常的に使っているのですが、 とにかく開発効率が良いです。 コンパイル時の型チェックの厳しさには慣れないとちょっと面倒に感じる かもしれま

  • Concurrent Clean : L.L.Ring : Collatz予想の収束 - lethevert is a programmer

    当はRound 2は観戦にしておこうと思っていたのだけれど、 http://idm.s9.xrea.com/ratio/2006/07/12/000484.html を見て、なにか挑戦された気がしたので、結局書いた。 何を挑戦された気がしたかというと、「問題を読み替えないで実装するためには、副作用が必須だ」という主張(というように私は理解したのだけど、間違っていたらごめん)。だから、純粋関数型だと読み替えないで実装するのは難しいのじゃない?(意訳)というような内容をみて、「これは挑戦に違いない」と勝手に思い込んだのでした。 - まずは、Collatz予想の1ステップ分の関数定義。これはシンプルに。 f 1 = 1 f n | isEven n = n/2 = 3*n + 1さて、これをどうすれば言いかというと、Cleanには(そしてHaskellにも)、与えられた関数を何度も適用しながら

    Concurrent Clean : L.L.Ring : Collatz予想の収束 - lethevert is a programmer
    yugui
    yugui 2006/07/13
    挑戦を受けて立ってくれたハッカーがいた。そうか、非正格だから? 無限列でも構わず作ってしまえばいいのか。
  • はてなブログ | 無料ブログを作成しよう

    オーベルジーヌ実レポ べ物の鼻塩塩(未だに通じるのかな) オーベルジーヌというカレーをご存知だろうか 都内にあるデリバリー専門のカレー屋で、 ロケ弁などで大人気の格欧風カレーが楽しめるらしい いいな〜 いいな〜オブザイヤー 都内の奴らはこんな良いモンってんのか 許せねえよ………

    はてなブログ | 無料ブログを作成しよう
  • The Next 700 programming languages - ラシウラ

    http://www.cs.utah.edu/~wilson/compilers/old/papers/p157-landin.pdf Peter Landinの1966年のCommunication of the ACMの論文。 このISWIMは最初の関数型言語。物理構文(この時代は「文字」でさえ標準がなかったので物理的になる)と論理構文(括弧みたいなものは必要というレベル)、抽象構文(ネストとかの構文木)、適用表現(今で言う組み込み型や基ライブラリみたいなもの)。いまでいう参照透過であり、すでにインデントによる構造やwhere句がある。次の700言語の元になるって感じか。 http://en.wikipedia.org/wiki/ISWIM

    The Next 700 programming languages - ラシウラ
  • データ型のクレイジー計算 - 檜山正幸のキマイラ飼育記 (はてなBlog)

    sumiiさん曰く: 「積型(組)と和型(バリアント)はあるから、多項式にテイラー展開すれば√τみたいな型も考えられる」という話を思い出しました。どこで聞いたのか思い出せないのですが… R. F. C. Waltersの"Categories and Computer Science (Cambridge Computer Science Texts)"ってのChaper 4 "Data Types"に、crazy calculation と称して無限級数の計算が載っています(sumiiさんのソースとは違う気がするが)。けっこう笑えるので紹介しましょう。 項目がAである列 まず、「I + A + AA + AAA + ... って面白いよ」と同じ例。項目の型(値の集合だと思ってください)がAである列(sequence)をSとすると、方程式は: S = I + A×S (Iは空列だけからな

    データ型のクレイジー計算 - 檜山正幸のキマイラ飼育記 (はてなBlog)
  • Python のメソッドをクロージャとして使う - tomapd == 22%

    Python においてメソッドはユニークな性質を持っており、bound されているか unbound か、明確な違いがある。bound / unbound とは、そのメソッドが特定のインスタンスに属しているか、いないかという言い方が出来ると思う。 class Person(object): def __init__(self, name, age): self.__name = name self.__age = age def get_name(self): return self.__name def get_age(self): return self.__age単純なクラスを定義してみた。このクラスのメソッドを調べてみると、 >>> Person.get_age <unbound method Person.get_age>こちらは unbound となっているが、 >>> p =

    Python のメソッドをクロージャとして使う - tomapd == 22%
  • なぜLispなのか

    Hofstadter『メタマジック・ゲーム』 ミンスキー「ゲーデルはLispを思いついておくべきだった。もし彼がLispを思いついていたならば彼の不完全性定理の証明はもっと簡単なものになっていただろう」 ゲーデルの証明の一番難しいところは、数学的体系に自分自身を語らせるところにある。天才のひらめきが何段階か必要になる。しかし、Lispは、少なくともゲーデルが必要としていた意味で、まさに自分自身を直接語ることができる ゲーデルはLispを発明した! 不完全性定理のLisp, Mathematicaによる記述 和田英一「Lispへのこだわり」(PDF) Eric S. Raymond「ハッカーになろう」LISP は、それをモノにしたときのすばらしい悟り体験のために勉強しましょう。この体験は、その後の人生でよりよいプログラマーとなる手助けとなるはずです。たとえ、実際には LI

  • 純粋関数型言語Concurrent Clean

    純粋遅延関数型言語Concurrent Clean (Pure and lazy functional language : Concurrent Clean) 〜 The most functional language 〜 Concurrent Cleanは、オランダのネイメーヘン大学で開発している、純粋な関数型言語です。 メジャーな関数型言語としては、Lisp、Scheme、ML、Haskell等がありますが、それらに決して劣ることのない環境と言語仕様を持つ言語です。効率性・開発環境・言語仕様どれも最高位ではないかと思うくらいです。言語仕様的には、この中では、Haskellに一番似ているとされています(沿革的にはMirandaと言われる純粋関数型言語の中間言語から出発していますので、Mirandaに似ていると言う方が正確でしょうが)。 ここでは、著作者たるPlasmeijer教授

  • Concurrent Clean紹介 - lethevertの純粋関数型言語Concurrent Clean覚え書き

    サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。

  • Cleanで関数プログラミング 【第1部目次】

    First Uploaded : March 20, 2002 Last Updated : March 14, 2004

  • http://blog.nikkeibp.co.jp/itpro/java/archives/2005/08/lldnjava.html

  • OBB vs AABB - Radium Software Development

    iPhoneの一般修理店は予約なしでも来店できる? 基的には飛び込みで修理に行ってもOK iPhoneを置いていたソファにうっかりと腰かけてしまい、パネルを割ってしまった、こんな時はスマホの一般修理店へ行きましょう。画面割れは、スマホやタブレットの故障原因として非常に多いものです。予約なしで突然お店に行っても平気かしらと、不安に思う方々もいらっしゃるかもしれません。結論としては特に問題はなく、予約なしで訪問しても画面割れの修理はお願いできます。 ただし他のサービス業のお店同様、予約なしの場合、お店が混雑していると順番待ちをしなければいけないです。特に繁盛しているスマホ修理のお店だと、行列が店内で出来ており、予約なしだと、自分の順番が巡ってくるまで長時間待たされる可能性があります。平日の朝、昼なら利用客が少ない場合が多く、飛び込みでも比較スムーズに修理が頼めます。 予約は入れた方が時短に、

  • サービス終了のお知らせ

    サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。

  • 1