2017/9/9(土) Scala関西Summit 2017での登壇資料です。
こんにちは。菅野です。 最近、AIとか機械学習とかが話題ですね。 AIに仕事を奪われる職業がどうとかの記事もよく見かけます。 このブログ記事もAIが書いてくれたら良いのにと思っている今日この頃です。 …でも思ってるだけでは仕事を奪ってくれないので、やっぱり何かしら自分で作るしか無さそう。 という訳で、今回はJavaでディープラーニングが出来るDeeplearning4jを使って機械学習を試します! プロジェクトD さて、何を作りましょう? 最終的には私の仕事を勝手にやってくれるAIを作りたいです。 でも、はじめは簡単なものから少しずつ作っていこうと思います。 よくディープラーニングでネタにされるのは手書き文字の識別ですが、正直面白くないので道路上を自動運転するAIを作ります! 嘘です。 いきなり作るのは無理があるので、画像の道路が左カーブなのか、右カーブなのか、あるいは直線なのかを分類し画
We’re excited to announce the first release of Scala Native, an optimising ahead-of-time compiler for Scala built on top of the LLVM compiler infrastructure. Unlike the reference implementation of Scala which generates bytecode that runs on top of the Java Virtual Machine, Scala Native toolchain produces stand-alone native executables. This opens the door for Scala to be used in environments where
24 Jan 2017 · 15 min read · Mariano Gappa Making The Move From Scala To Go, And Why We’re Not Going Back UPDATE: This blogpost has received a lot of attention since it's been published, including on Hacker News, Golang Weekly and Scala Times; thank you! Unfortunately, some readers have considered it strictly an attack on the Scala community and/or a biased episode of language war. This was not the
class: center, middle # 制約をロジックではなく<br/>型で表現する 渋谷Java 第十五回 2016/04/23 --- class: left, middle ## 自己紹介 * 中村 学(Nakamura Manabu) * [@gakuzzzz](https://twitter.com/gakuzzzz) * 株式会社 Tech to Value * Japan Scala Association --- class: center, middle # みなさん<br />テスト書いてますか? --- class: center, middle ## 僕はテスト書くのが<br/>あまり好きではありません。 --- class: middle # 型 > テスト 偉い人は言いました。 テストで示せるのはバグの存在であって、<br />バグの不在は証明できない。
Effective Scala Marius Eriksen, Twitter Inc. marius@twitter.com (@marius) [translated by Yuta Okamoto (@okapies) and Satoshi Kobayashi (@scova0731)] Table of Contents 序章 書式: ホワイトスペース, 命名, インポート, 中カッコ, パターンマッチ, コメント 型とジェネリクス: 戻り型アノテーション, 変位, 型エイリアス, 暗黙 コレクション: 階層, 使う, スタイル, 性能, Java コレクション 並行性: Future, コレクション 制御構造: 再帰, Return, forループと内包, require と assert 関数型プログラミング: 代数的データ型としてのケースクラス, Option, パターンマ
@nakanishiyasuo Javaには無名クラスがあります。お暇があれば双方のバイトコードを逆コンパイルしてみてください。 結局バックエンドはJavaVMですから、JavaScriptに対するAltJSと同じで、皮を被せたところでやれること自体が変わるわけではないのです。
Scala関数型デザイン&プログラミング―Scalazコントリビューターによる関数型徹底ガイド Paul Chiusano, Rúnar Bjarnason(著), 株式会社クイープ(訳) インプレス 4,290円 (3,900円+税) 販売終了 Scalaはオブジェクト指向と関数型のいずれにも対応した言語ですが、本書では関数型を指向し、より簡潔で洗練された手法を解説しています。「モジュール化/再利用化/並列化を進めやすい」「バグが発生しにくい」といったメリットを享受すべく、関数型というプログラミングパラダイムを深めていきましょう。 関連サイト本書の関連ページが用意されています。 Scala関数型デザイン&プログラミング―Scalazコントリビューターによる関数型徹底ガイド | Impress内容紹介『本書に寄せて --- Martin Odersky Scala言語設計者』より―― 本書
Presentation slides at https://jissenscala.doorkeeper.jp/events/19660
ScalaとJava 8に関する プレゼンテーション が、他の似た内容のものよりも多くリツイートされ、大変うれしく思います。だから、こうして皆さんにブログでも書いてお伝えすることにしました。ScalaとJavaとの違いと、それぞれの重要性についてお話しします。両者は相互にイノベーションしています。言語間でお互いに取り入れています。では、Javaが使える場合であっても、Scalaを学ぶ必要があるのでしょうか? もちろんです。より多くの言語を知れば知るほど、あなたはさらにプロフェッショナルになっていきます。 もし、ScalaエンジニアにScalaとJavaとの基本的な違いについて尋ねたとしても、おそらくその人はラムダ関数とトレイトに関する違いを全て言うことはないでしょう。代わりに次のような例を出すはずです。 public class Person { private String firstN
常に世界のどこかで誰かが、この世で一番のプログラミング言語は何かというトピックで投稿し、忘れ去られた言語のすばらしい一面や、新しい言語の有用性を主張しています。どうやら、その順番が私に回ってきたのかもしれません。そろそろ私も、プログラミング言語についての自分の考えを皆さんにお伝えしようと思います。 始めに少し言い訳をさせてください。30以上の言語で開発した経験があり、他の人が書いた多くのコードと悪戦苦闘をしてきた開発者でもない限り、「自分の意見には客観性がある」とはとても言えないと思います。そんなわけで、このトピックを取り上げる他の多くの人と同じように、私の意見も偏っています。多くの言語に精通した開発者がこの話題自体を不毛だと感じるのは、このせいかもしれませんね。 要約: すばらしい言語 早速、このブログ限定ということで、私が考える”すばらしい言語”を発表しましょう。 アセンブリ言語: マ
※この記事はこれの再構成版です Ⅰ.はじめに 圏論を知りましょう さて、だいぶ前になってしまいましたが、前回の記事で、「関数型プログラミングを知るにはまず圏論から!」といいました。 ※あくまでも私の考えです 私自身圏論についての知識がほぼないのですが、幸いにも圏論に関する初心者向け記事がWEB上にいっぱいあります。 その中でも、「Scalaで圏論入門」という記事は、初心者向けにわかりやすく記述されているので、 これを元に圏論について基本的な理解を深めていければと思います。 本記事は、この「Scalaで圏論入門」を読んだことがある人を対象にします。(理解できてもできなくても)一度読んでおいてください。 なんで圏論を知るべき? なんで関数型プログラミングを知るのに圏論なんてわけわからんものを知らなければいけないのでしょうか。 この連載の目標(というか自分の目標)の1つとして、「scalazを使
なぜScalaがバカ向けなのか。 ぼくの経験を元に、バカ向け言語と非バカ向け言語を比較しながら見て行きましょう 非バカ向け言語 C プログラマーとして最初に携わったのがC言語です。 それは以下のようなものでした。 何十ものファイルにまたがるグローバル変数 緻密な制御が必要であるにも関わらず、無秩序に取得/開放が行われているメモリー管理 このような複雑な構造を、ぼくのようなポケコン並の処理能力しか持たないバカに把握可能でしょうか。もちろん不可能です そこで、次のようなコーディングを心がけました。 グローバル変数を使わず、関数に引数を定義して渡す メモリーの取得/解放を同一ファイル内に限定する これで、メモリーや変数参照の影響範囲を限定し、ぼくのようなバカでも理解できるようになります。 ですが、わざわざそんな事をやらなくても全てを理解できるエリート様達は、 「なぜ引数で渡すんだ。グローバル変数
動的型付け vs 静的型漬けのアレでもんにょりしてたのをついったーに放出して会話してたらなんとなく自分なりの考えがまとまったので貼っておく。 ……(ファントムタイプとか型安全ビルダーパターンとかで、型レベルにロジックをエンコードした結果、ライブラリ利用者がテストを書くまでもなく適切にライブラリを利用できるようになる、という意味での「静的型でコンパイラは最強のテスティングフレームワーク」という視点があると思う)— 蒸発プログラマさん (@yuroyoro) 2013年3月11日 @yuroyoro 最初のメジャーなテスティングフレームワークがJUnitなので違和感を感じます。— ぎゃばんぱみゅぱみゅさん (@ledsun) 2013年3月11日 @ledsun メジャーかそうでないかで言われると反論しようがないですが、捉え方というか視点として、ビジネスロジックを型レベルにエンコードして、テス
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く