Japanese translation of Apocalisp v1.0 documentation Welcome to Japanese translation of Apocalisp’s documentation!
型レベルプログラミング in Scala(Type-Level Programming in Scala)¶ この連載はScalaにおける型レベルプログラミングの紹介です。解説は、コードと例とすこしばかりの説明で成り立ちます。また、読者はScalaの一般的な型システムについての知識があることを前提にしています。これは著者の傲慢ではないので(もちろん読者のでもなく)、質問は歓迎します。 連載は10のパートから成ります。有るパートは他の記事の内容を含んで構成されることもあります。過去の記事はこの目次にリンクされますので、簡易なリファレンスとしてこのページをブックマークするとよいでしょう。
Pharo3.0から、エクシング社の提供する言語解析WebAPI(https://lr.capio.jp/services/webapis/)を叩くラッパーライブラリを作成した。 現在のところ、言語解析WebAPIはなにかしらのイベント(ハッカソンやコンテスト)に紐付けられた期間・用途にしか利用許諾が下りないことになっているので、心に留めておくこと。 JsJapaneseLanguageAnalyzer for Pharo3.0 http://www.smalltalkhub.com/#!/~kaminami/JsJapaneseLanguageAnalyzer 言語解析WebAPIは、形態素解析に加えて、ポジネガ解析・係り受け分析が利用できる。 XMLではなくJSONで結果を返してくれるので、Web上で手軽に使えるのは良い所だ。 形態素解析の結果(読みや品詞の選択等)が時折怪しいが、たく
Scalaを触ったり言語仕様を眺めた上で、ストレスを感じたものをいくつか挙げる。おそらくコミュニティでの議論は既に終了しているであろうし、無意味な作業に感じられて仕方がないが、某所でまとめると言ってしまったので、我慢して進める。 突撃されると面倒なので一応述べておくが、別にScalaがダメだとか、Scalaが使えないとか言いたいわけではない。この程度の訓練は必要なのだ、ということだ。 追記 びっくりするほどのバカだと思われている節があるが、ScalaやJavaの思想を知った上で、あえて記述している部分も多分にある。一応。 捉え違いしている部分や、Scala的な考え方が知りたい方は、コメントをご覧になるのが良いでしょう。 if式の返り値 val v1 = if (1 < 2) {"a"} println(v1) val v2 = if (1 < 2) {"a"} else {"b"} pri
なんか、極めると「ほむほむ」だけで会話できるみたいですね? 俺はまだそこまでの域には至ってないんですが、「ほむほむ」だけでプログラミングできたらステキですよね? そこで、ちょっと草植えときますね型言語 Grassを元にして以前作ったプログラミング言語「天使ちゃんマジ天使」とか 「ブブゼラ」をベースに、 またまたネタ言語を作りました。 Grassの文法と異なる点は以下のとおり。 wがほむ スペース・タブにはさまれた"ほむ"がW vは改行 wを出力するプログラム: ほむ ほむほむ ほむほむほむほむ xを出力するプログラム: ほむ ほむほむほむ ほむほむほむほむ ほむほむほむ ほむ "Hello, world!"を出力するプログラム ほむ ほむ ほむ ほむほむほむほむ ほむ ほむほむほむほむほむほむ ほむほむほむほむほむ ほむ ほむほむほむほむほむ ほむほむほむほむ ほむほむほむほむ ほむほむほ
sbt website update 2024 Jan 21, 2024 This is a writeup on sbt’s website scala-sbt.org updates, some concrete, others more of half-baked ideas. Background I’ve been the primary maintainer of the site since 2014. Though I have written some of the pages, most of the content had been written by Mark and Havoc by the time I took over. You can see on 2014 archive that the site was Sphinx doc. The first
sbt 2.x リモートキャッシュ Dec 21, 2023 これは Scala Advent Calendar 2023 の 23日目の記事です。21日目は、さっちゃんのpath 依存型って何? 調べてみました!でした。 はじめに リモートキャッシュは、ビルドの結果を共有することで劇的な性能の改善を可能とする。Mokhov 2018 ではクラウド・ビルド・システム (cloud build system) とも呼ばれている。これは、僕が Blaze (現在は Bazel としてオープンソース化されている) のことを聞いて以来関心を持ち続けてきた機能だ。2020年に、僕は sbt 1.x のコンパイルキャッシュを実装した。reibitto さんの報告によると「以前は全てをコンパイルするのに 7分かかっていたが、15秒で終わるようになった」らしい。他にも 2x ~ 5x 速くなったという報告
2011-05-28 Scala界の関数型プログラミング一派を代表する論客の一人、@djspiewak が 2010年に書いた “Monads Are Not Metaphors” を翻訳しました。翻訳の公開は本人より許諾済みです。翻訳の間違い等があれば遠慮なくご指摘ください。 2010年12月27日 Daniel Spiewak 著 2011年5月29日 e.e d3si9n 訳 僕は今、約束を破るところだ。およそ三年前、僕は絶対にモナドの記事だけは書かないと自分に約束した。既にモナドに関する記事は有り余っている。記事の数が多すぎてその多さだけで多くの人は混乱している。しかも全員がモナドに対して異なる扱い方をしているため、モナドの概念を初めて学ぼうとする者は、ブリトー、宇宙服、象、砂漠のベドウィン (訳注: アラブ系遊牧民) の共通項を探す努力をするハメになっている。 僕は、この混乱した
皆様、お久しぶりです。去る2月10日(土)、2月11日(日)に筑波大学情報科学類にて特別講義の講師をやってきました。といっても、私が全日担当したわけではなくOB一人が一コマを自分の得意分野について講義をするオムニバス形式のものです。 私はといえば去年やったのと同様、JavaScriptで抽象構文木を「手で」組み立てて解釈・実行するプログラミング言語Minisとその処理系を作るという講義を行いました。講義当日はスライドにミスがあることに途中で気づいたり色々あってテンパりましたがそれはそれとして。 元々、私が担当した「プログラミング言語作成概論」の趣旨は プログラミング言語を作るというのはとても簡単な作業なのに、プログラマにすらあまり知られていないのはけしからん。 とはいえ、実際に作ってみせないと実感が湧かないのが人情。 抽象構文木をJavaScript上で組み立てて、それをevalする関数を
先日、Scala 2.9.0 RC4がリリースされ、正式リリース(final)までもうあと少しといった感じになって来ましたが、皆様、いかがお過ごしでしょうか。訓練されたScala使いはRCには手を出さないとも言われますが、私は新し物好きなので、RCにも手を出してしまいます。 それはともかくとして、Scala 2.9.0の最大の目玉は何でしょうか?世間的(どこの世間だというツッコミはおいといて)には並列コレクションではないでしょうか。Scalaの公式サイトでも新機能の紹介で真っ先に挙げられていますし、少なくとも一番注目されているのは並列コレクションでしょう。 並列コレクションは、公式サイトも含め、英語圏のブログなどあちこちで既に紹介されているので、このエントリではあえて、その陰に隠れてあまり注目されないが、なかなか便利なscala.sys.processパッケージについて紹介します。 sca
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く