並び順

ブックマーク数

期間指定

  • から
  • まで

561 - 600 件 / 7825件

新着順 人気順

Scalaの検索結果561 - 600 件 / 7825件

  • 「関数型言語をもっと使いこなしたい!」マイクロアドの新卒エンジニアがデータサイエンティストの先輩に圏論の初歩を指導してもらった話 - MicroAd Developers Blog

    はじめに こんにちは、19新卒バックエンドエンジニアの飛田です。 弊社では、プロダクトの一部にCatsという関数型プログラミングを行うためのライブラリを導入しており、今後、Catsをより多くのプロダクトに使用していく予定です。 Catsにはモナドやファンクタという概念が登場しますが、これらの概念は圏論に由来しています。圏論を勉強することで、Catsで登場する諸概念をより深く理解することができると考え、今回、圏論の初歩の内容を自分でまとめてみることにしました。 なお、マイクロアドの優秀なデータサイエンティストであり、数学や物理に大変に詳しいT先輩(アイコンがおふとん)にレビューを依頼することにしました。 slackのアイコンがおふとんのT先輩 レビューをしてもらった結果 まとめた内容の初稿をT先輩にレビューをしていただいたところ、以下の通りものすごい量のツッコミを食らってしまいました。 レビ

      「関数型言語をもっと使いこなしたい!」マイクロアドの新卒エンジニアがデータサイエンティストの先輩に圏論の初歩を指導してもらった話 - MicroAd Developers Blog
    • 技術ブログ | Casley Deep Innovations株式会社 技術ブログ

      2023/01/11 第3弾:Bootstrapとは?使い方は?どんな仕組み?これを見ればまるわかり!!

      • Webフレームワーク play scala - ヽ( ・∀・)ノくまくまー(2010-05-03)

        ● [Scala] Webフレームワーク play scala 「play」という凄い Web フレームワークがある。何が凄いかと言うと、まずは名前だ。だって "play" だよ?検索し辛いにも程がある。この衝撃は、http load balancer の "pen" 以来だ。ググっても無駄に時間がかかるので公式サイトを載せておこう。 http://www.playframework.org/ 日常会話にも困る場合があるので、サイト名から「playframework」と呼ばれることが多い。管理者の tw 名も @playframeworkであり、hashtagも #playframework なので、play は単なるコマンド名で、こっちの方が正式名という認識でいいのかもしれない。(gem と rubygems の関係に近い) play scala で、本来 Java 用の play(fr

        • 「Scalaがもたらす言語の進化」というタイトルで発表してきた - Faith and Brave - C++で遊ぼう

          Scala勉強会第9回 in 渋谷で発表してきました。 まだScalaでがりがりコード書けないので、外の言語からみたScalaの話をしました。 Scala lang evolutionView more presentations from faithandbrave.

            「Scalaがもたらす言語の進化」というタイトルで発表してきた - Faith and Brave - C++で遊ぼう
          • Excel方眼紙を支える技術 - たけぞう瀕死ブログ

            最近仕事でExcel方眼紙を読んだり書いたりするプログラムばかり書いているのですが、そんなExcel方眼紙を支える最新のJava技術を紹介したいと思います。 なにはなくともPOI JavaでExcelと言えば外せないのがPOIです。以前はJExcel APIという対抗馬もあったのですが、Excel 2007に対応していないので現在ではPOIが唯一の選択肢といっていいでしょう。 POIは非常にプリミティブなAPIを提供するライブラリで、使いこなすにはそれなりの修練が必要です。そのため、可能であれば実際の読み書きには後述するXLSBeansやjXLSなどを使った方がよいでしょう。ただし、jXLSのようなテンプレートエンジンでは細かいセルのスタイル設定などはできないため、POIを併用しないとならないケースも多いです。Excel方眼紙を支える技術のベースとして押さえておくべきライブラリといえるでし

              Excel方眼紙を支える技術 - たけぞう瀕死ブログ
            • ScalaのWebフレームワーク事情 2015年版 - たけぞう瀕死ブログ

              ScalaのWebフレームワークについて、昨年某所で書いた記事をアップデートしてみました。マイクロサービスが流行ってきたり、Playは2.4になっていろいろ変わったり、ScalaのライブラリやフレームワークもFutureやモナドを活用したものが増えてきたり等々、この一年でScala界隈のWeb開発事情もいろいろと変化してきています。 Play2 出たばかりの頃はPlay 1.x系でできたことができなかったり、バグだらけだったりでコミュニティでも暴動が起きそうになったものですが、喉元すぎればなんとやら、いまでも使いにくい部分も多いのですが、Typesafe社のお墨付きということもあり、なんだかんだでデファクトスタンダードの位置を確立しているのではないかと思います。 ユーザ数が多いだけあり、プラグインや周辺ライブラリ、Web上での情報等も豊富です。 ただ、Play 2.4でGuiceを使ったD

                ScalaのWebフレームワーク事情 2015年版 - たけぞう瀕死ブログ
              • 弱くてニューゲームしてアドテクエンジニアになりました

                近況。2015年からアドネットワークのデータサイエンスチームにおります。前の部署ではメディア寄りの所でモバイルアプリの開発をしていたので、ほぼ転職に近い状態です。アドネットワークなにそれという方向けの説明としては、広告主と広告枠をまとめていい感じにディスプレイ広告を配信するシステムだと思ってもらえれば。 データ分析や広告配信アルゴリズムの改良というアプローチでアドネットワークの収益改善に取り組むのがミッションです。会社ブログにMortal Multi-Armed Banditsの記事を書いた頃は多腕バンディットアルゴリズムの調査や実装をしていました。 データサイエンスといっても、いきなり機械学習を使った仕組みをプロダクションに投入できるかというと全くそんな事は無く、ログの収集と解析基盤を構築する所からでした。まっさらなAWSアカウントでCloudFormationテンプレートを書いて、VP

                  弱くてニューゲームしてアドテクエンジニアになりました
                • カリー化 - Wikipedia

                  カリー化 (currying, カリー化された=curried) とは、複数の引数をとる関数を、引数が「もとの関数の最初の引数」で戻り値が「もとの関数の残りの引数を取り結果を返す関数」であるような関数にすること(あるいはその関数のこと)である。クリストファー・ストレイチーにより論理学者ハスケル・カリーにちなんで名付けられたが、実際に考案したのはMoses Schönfinkelとゴットロープ・フレーゲである。 ごく簡単な例として、f(a, b) = c という関数 f があるときに、F(a) = g(ここで、g は g(b) = c となる関数である)という関数 F が、f のカリー化である。 関数 f が の形のとき、 をカリー化したものを とすると、 の形を取る。uncurryingは、これの逆の変換である。 理論計算機科学の分野では、カリー化を利用すると、複数の引数をとる関数を、一つ

                  • Scala変態技法最速マスター - kmizuの日記

                    Java変態文法最速マスターなんてのがかなりブクマされてるみたいだが、変態さならJavaなんてScalaの足元にも及ばないぜ!!ということで、Scala版を書いてみました。しかし、実はあまり変態ではないかもしれません。元ネタと違って、これを読めば何かがわかる、という意味の実用性はあまり無いでしょう。 implicit conversion編 基本 Scalaのimplicit conversionは使いようによってはScalaの強力な型システムを台無しにしてしまう力を持っています。たとえば、 implicit def string2int(x: String): Int = Integer.parseInt(x) というimplicit conversionを定義してやると、"300" / 3が100になるなどというキモい挙動を実現することができます。また、さらにカスタマイズして、16進数

                      Scala変態技法最速マスター - kmizuの日記
                    • Scalaはなぜ難しいと言われるのか? - たけぞう瀕死ブログ

                      Scalaをどうやって学ぶのがいいのか?ということはScalaを使い始めた数年前からずっと考えています。よく「Scalaは難しい」と言われますが、 どこが難しいのか? なぜ難しいのか? ということを、これまで書籍や雑誌記事、ハンズオンなど入門用のコンテンツを作ってきた経験を踏まえて整理してみました。 まず、Scalaが難しいといわれる理由のひとつに学ばなくてはならないものが多すぎるという点があげられます。Scalaはオブジェクト指向言語ですが、関数型言語の特徴的な機能を取り入れているため、きちんと理解するには両方の言語のイディオムを学ぶ必要があるためです。 ただ、Scala自体は必ずしも関数型言語の知識がなくても使えるように設計されています。最初はBetter Javaとして一般的な手続き型オブジェクト指向言語の延長として使い始めることができ、Scalaの特徴的な機能に触れていくことで少し

                        Scalaはなぜ難しいと言われるのか? - たけぞう瀕死ブログ
                      • ヽ( ・∀・)ノくまくまー Behaviour Driven Development

                        ● [Git] 月刊 Github はーい!こちらキューテーブルー♪毎月ご機嫌な Github 情報をお届けしちゃうぜ! まずはレポジトリ情報をチェキラっ!! 2008.10.2付ユーザ数レポジトリ数ディスク使用量 なんかぁ、結構、レポジトリ数の割にユーザ数が少ないっていうかぁー。1人当たり2,3個しか作ってないなんて意外つーかぁー。てことで、ユーザ別の利用レポジトリ数を・・・、カウントダウンっ! github=# select owner, count(*) as count from repositories group by owner order by count desc limit 10; owner | count --------------+------- tekkub | 63 nshah | 41 drnic | 38 dustin | 37 defunkt | 3

                        • 私がScalaを選んだ理由:CodeZine

                          はじめに 最近自分の中でScalaという言語が熱い。RubyやPython等のスクリプト言語や、JavaやC#等現在のエンタープライズ領域を支える言語、HaskellやErlangといった関数型言語もある。そんなにいっぱいいい言語がある中で、なぜ今Scalaなんだろう? そんな理由を解説してみたいと思います。Rubyの生産性 ここ数年LLブームで、とりわけ日本でのRuby人気は目覚ましいものがあります。実は筆者もRubyはとてもお気に入りです。最初に触り始めた頃は、「Rubyはいいよ」という話だったので勉強がてら小さなサンプルを作って遊んでいたのですが、その頃は「楽しいな」「気持ちいい言語だな」という程度であまり熱心にやっていませんでした。なぜなら私は「仕事で使える」ということを非常に重視するタイプだからです。 その認識が一変したのがRubyによるWebアプリケーション開発のプラットフォー

                          • bullet-scala: N+1クエリ問題を回避する - 貳佰伍拾陸夜日記

                            Scala関西 Summit 2015での発表で触れていたN+1クエリ問題をなんとかするためのライブラリを公開した. 発表は以下のもので, ここでは「関係モナド」という名前で紹介していたけれど, これは口頭でも説明したように便宜上てきとーにつけた名前であって, とくにそういう名前のよく知られたモナドがあるというわけでもなければ, そもそもモナドであるかどうかはあまり本質的ではない. この発表のあとに, Rails (Active Record)でのbulletのようにN+1問題の検出をScalaでやる方法はないだろうか, と言っている人がいたので, そういうものを探していて辿りつけるとよかろうということで, bullet-scalaという名前にした. もちろんN+1問題の検出のためのライブラリというわけではないし, 動的に検出するのではなく原理的に問題が発生しないようにするものなので, 思

                              bullet-scala: N+1クエリ問題を回避する - 貳佰伍拾陸夜日記
                            • RestyというScala用のREST APIフレームワークを作ってみました - たけぞう瀕死ブログ

                              GitHubリポジトリはこちら。 github.com なぜ作ったのか? Scala業界のフレームワークは関数型的なアプローチのものが主流になっています。これらのフレームワークはノンブロッキングI/Oや並列処理をうまく扱うことができますが、本質的な複雑さをもたらします。自分の経験では、特に企業システムなどの場合は従来の同期サーブレットでも十分というケースも多いのではないかと感じています。 また、既存のScala用のフレームワークはタイプセーフなDSLでルーティングや入出力パラメータなどを定義するものが多いのですが、この手のものはシンプルな静的解析でメタ情報を抽出することが難しいためSwaggerなどの外部ツールとの相性が悪いという欠点もあります。 Restyはこのようなケースにおいてもプログラミング言語としてのScalaのアドバンテージを活かすことのできるシンプルなフレームワークがあるとい

                                RestyというScala用のREST APIフレームワークを作ってみました - たけぞう瀕死ブログ
                              • 「Java開発者ための関数プログラミング」が出版されました - YAMAGUCHI::weblog

                                みなさま、ご無沙汰しております。1ヶ月以上ぶりのブログ更新となりました。Python界の情弱こと山口です。 この度、拙訳の「Java開発者のための関数プログラミング」という書籍がオライリー・ジャパンより電子書籍(ePub)で出版される運びとなりました。原著者はProgramming Scala(日本語版「プログラミングScala」)のDean Wampler氏。 Java開発者のための関数プログラミングDean Wampler 著、山口能迪、株式会社トップスタジオ 訳 フォーマット ePub O'Reilly で詳細を見る Java開発者のための関数プログラミング - Google+ 本書は、無理をしてJavaで関数プログラミングで実装してがんばろう、という本ではありません。一部そういうところもあるかもしれませんが、そういう方向は目指していません。あくまで関数型と呼ばれるものにはどういう概

                                  「Java開発者ための関数プログラミング」が出版されました - YAMAGUCHI::weblog
                                • アクターによる
並行処理アプケーション アーキテクチャ

                                  社内勉強会でアクターとアクターを使ったアプリケーションのアーキテクチャについて紹介した資料です

                                    アクターによる
並行処理アプケーション アーキテクチャ
                                  • 日本Scalaユーザーズグループ - ScalaJP

                                    日本Scalaユーザーズグループ 日本Scalaユーザーズグループでは、Scalaのより一層の普及を目指しています。

                                    • 厨二病な名前のライブラリを集めるスレ - Qiita

                                      ミスリル。クライアントサイドMVC。 http://mithril.js.org/ 参考: http://qiita.com/shibukawa/items/890d24874655439932ec エリクサー。Erlang VMで動く言語。 http://elixir-lang.org/ 参考: http://qiita.com/HirofumiTamori/items/0dfdbada30c7d8f183fd エスナ。PHPのサーバサイドMVCフレームワーク。 http://ethna.jp/doc/ ゴブリン。物理エンジン。 http://www.goblinphysics.com/ オーディン。ゲームエンジン。 https://odinge.codeplex.com/ タイタン。jQuery上のクライアントサイドMVC。 http://www.firerift.com/suppor

                                        厨二病な名前のライブラリを集めるスレ - Qiita
                                      • LL Tiger » 公開資料

                                        Language Update Perl 小飼弾 PHP 小泉守義 Python 稲田直哉 Ruby まつもとゆきひろ Clojure making HTML5白石俊平 Scala 尾崎智仁 Keynote PDF 開発ライセンスとプログラマーの自由 小山哲志 LLと電子出版 西尾泰三 鈴木嘉平 瀧澤昭広 高橋征義 森田尚 LLでフィジカルコンピューティング ごうだまりぽ 山本遼 原央樹 尾崎俊介 高速化虎の巻 藤田将洋 (公開資料なし) 高山征大 村主崇行 LTの虎 クロネッカーズ・デルタ 久井亨 初戦 (準決勝) co1row co1row 殺伐Python 渋川よしき 小泉守義 @ymotongpoo Shibuya.js 上島智士 川崎有亮 小林悠 破滅幼稚園荒川組 @hagino3000 @itkz @yuiseki エレファントカシマシタ choplin umitanuki t

                                        • ZOZOSUITからZOZOMATへ - CQRSによる解決アプローチ - ZOZO TECH BLOG

                                          はじめに こんにちは、計測プラットフォーム部バックエンドチーム、テックリードの児島(@cozima0210)です。この記事では、ZOZOSUITとZOZOMATの違いにより生じたバックエンド開発における課題と、その解決のためにCQRSアーキテクチャを採用した経緯、そしてその実践について紹介します。 ZOZOSUITとは ZOZOSUITは、2017年に発表した全身の計測を目的としたツールです。現在も計測機能は提供されていますが、新規の販売は終了しています。現在、ZOZOSUITの計測データは、マルチサイズ商品の開発に活かされています。 ZOZOMATとは ZOZOMATは、2019年に発表した足の計測を目的としたツールです。足の計測データから、足型診断や推奨サイズの提案に活用されています。今年の2月にリリースし、ZOZOSUITに続く計測技術として、とても注目をいただきました。 計測プラッ

                                            ZOZOSUITからZOZOMATへ - CQRSによる解決アプローチ - ZOZO TECH BLOG
                                          • IBMがRustを使ってNode.jsのプロジェクトを書き換え。その背景とは?

                                            IBMがRustを使ったソフトウェア開発を加速している。RustはMozilla Foundationが開発をリードするオープンソースのプログラミング言語だ。Rustの歴史はまだ浅いものの、DropboxやCloudflare、Microsoft、Facebookなどの多くの企業で利用が拡がっている。Microsoftが社内で2004年から統計を取った調査によれば、自社が開発したソフトウェア(C、C++を利用)における脆弱性のうち約70%がメモリーの操作に由来するとして、メモリーセーフなRustを採用する流れになっているという。

                                              IBMがRustを使ってNode.jsのプロジェクトを書き換え。その背景とは?
                                            • LINE Engineer Insights vol.1 「LINE BOT 育ての親に聞く、LINEの誕生と成長」 : LINE Engineering Blog

                                              LINE株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。 LINEヤフー Tech Blog LINEで働くエンジニアに色々と話を聞いていく新コーナー「LINE Engineer Insights」をスタートいたします。インタビュアーにはLINEで働くエンジニア @tokuhirom を迎え、エンジニア同士でざっくばらんにお話を伺っていきます。LINEのエンジニアは一体どんな人達なのか、その内面に迫っていきたいと思います。 今回は、開発1センター LINE開発室 B Partチーム所属の熊井に、コミュニケーションアプリ「LINE」の誕生時のことや現在担当されているLINE BOTのバックエンドの話などを聞いてきました。 B Part のBはBOTのB? ―― tokuhirom 今日は宜しくお願いします。熊井さんとはB

                                                LINE Engineer Insights vol.1 「LINE BOT 育ての親に聞く、LINEの誕生と成長」 : LINE Engineering Blog
                                              • Scalaを用いて分散IDワーカを実装する | チャットワーククリエーターズブログ

                                                お久しぶりです。かとじゅん(@j5ik2o)です。さて、僕は、ChatWorkに入社しても、相変わらず Scala や DDD を実践しているわけですが、今回は少し毛色が違う話をしたいと思います。先日、ChatWork Advent Calendar 2014 15日目の記事で、安達くんが、ID生成器の話を書いてくれたので、せっかくなので、ChatWork Advent Calendar 2014 23日目の記事として、Scala版も説明してみようかと思います。 PHPでID生成器を実装してみました | チャットワーククリエーターズブログ DBのシーケンスによるID生成ウェブサービスでは、時系列データを扱うことはよくありますが、タイムスタンプベースでユニークなIDを利用したいことがあります。方法論はいくつかありますが、お手軽なID生成といえば、DBのシーケンスを使ったものです。しかしながら

                                                  Scalaを用いて分散IDワーカを実装する | チャットワーククリエーターズブログ
                                                • さだまさし弱者すぎて困ったので Scala でコンパイルすることにした話 - Qiita

                                                  斬新なアドベントカレンダーで毎回楽しみに拝読していましたが、ポッカリと 20 日目だけが空いていることに気づき、何か書こうと思い立って登録しました。しかし、一つ重要なことを見落としていたことに気づきます。 にわかどころか、一般人レベルの知識すら怪しい・・ これまで 30 年以上もろくにさだまさしさんのことを知らないまま生きてきてしまったので、一般人レベルの知識かそれ以下しか持ち合わせていないことに気づきました。 お恥ずかしながら「さだまさしの曲名を 10 挙げてみろ」と言われただけで「もうお手上げです・・」となりかねないという体たらくです。「神田川」がさだまさしではなく南こうせつの曲であることはさすがに存じ上げておりましたが、基本的にはズブの素人といっていいレベルです。 この有り様では、このアドベントカレンダーに参加されている他のさだまさしマニアの方々はもちろんのこと、このアドベントカレン

                                                    さだまさし弱者すぎて困ったので Scala でコンパイルすることにした話 - Qiita
                                                  • Home

                                                    Scala で圏論入門 これは、Typesafe 社の Director Professional Services である Heiko Seeberger 氏による「Introduction to Category Theory in Scala」の翻訳文です。誤訳、誤記などがありましたら、 日本Scalaユーザーズグループの「圏論入門 レビューのお願い」トピックに投稿していただくか、@quassia88 にご連絡ください。 もし君が僕みたいに、以前はJavaディベロッパーで、Scalaのファンになったばかりなら、君は多分遅かれ早かれ、モナドやら関手やらの、圏論の分野からやってきた謎に遭遇するだろう。そういった未知の概念は、君を、自分が恐ろしくまぬけなんじゃないか、という気分にさせることだと思う。もし君がそういう概念に既に親しんでいるなら、時間を無駄にすることはない、すぐにこのページを閉

                                                      Home
                                                    • ScalaのPartialFunctionが便利ですよ - ( ꒪⌓꒪) ゆるよろ日記

                                                      Scalaには、PartialFunctionというものがあります。 直訳すると部分関数ですが、これはなにかっていうと「特定の引数に対しては結果を返すけど、結果を返せない引数もあるような中途半端な関数」です。 どうやって使うのん? まぁ、ちょっと例を見てましょうや。PartialFunctionであるfooPfは、引数が"foo"だったら"bar"を返して、"foo"以外は知らんというてきとーな関数です。 scala> val fooPf:PartialFunction[String,String] = { case "foo" => "bar" } fooPf: PartialFunction[String,String] = <function1> scala> fooPf("foo") res5: String = bar scala> fooPf("hoge") scala.Mat

                                                        ScalaのPartialFunctionが便利ですよ - ( ꒪⌓꒪) ゆるよろ日記
                                                      • エラーハンドリング・クロニクル #nds41 - 猫型の蓄音機は 1 分間に 45 回にゃあと鳴く

                                                        はじめに プログラミング技術の歴史は、ありとあらゆる歴史がそうであるように、いろんな「史観」で眺めることができます。ならば、プログラミング技術の歴史を、「エラーハンドリングとの戦い」という視点から見ることもできるのではないでしょうか。本日は、エラーハンドリングとの戦いの歴史を俯瞰することで、エラーハンドリングの勘所について考えていこうと思います。 なお、このエントリはNDSという勉強会の第41回で発表した内容と同一です。 Cの時代 Cの時代のエラーハンドリングでは、関数の返り値と、グローバル変数errnoを見ることで処理が成功したか失敗したかを見るのが一般的でした。 例として、文字列をlongに変換するstrtol関数をmanで引いてみましょう。すると、だいたい以下のようなことが書かれています。 変換に失敗すると、0を返す 変換に失敗した場合、グローバルな変数であるerrnoに以下の定数を

                                                          エラーハンドリング・クロニクル #nds41 - 猫型の蓄音機は 1 分間に 45 回にゃあと鳴く
                                                        • 明日から使える実践エラーハンドリング

                                                          class: center, middle # 明日から使える<br/><strong>実践</strong><br/>エラーハンドリング Scala関西Summit 2018 11/10 --- class: left, middle ## 自己紹介 * 中村 学(Nakamura Manabu) * [@gakuzzzz](https://twitter.com/gakuzzzz) * Tech to Value 代表取締役 * Opt Technologies 技術顧問 <img src="../images/opt_logo_1.jpg" alt="Opt Technologies" width="450" style="margin-left: 0px" /> * F-CODE CTO <img src="../images/f-code_logo.png" alt="f-cod

                                                          • あらゆるプログラミング言語の最先端を行くScala 3のマクロ - 貳佰伍拾陸夜日記

                                                            この記事はScala Advent Calendar 2023の11日目です. 最近, 趣味でScala 3のコードをだいぶ書いていて, マクロの使い心地のよさに感心しました. 理論的な背景も含めて, 産業界で多く使われているプログラミング言語の中では筆者の知る限りぶっちぎりに優れたマクロを備えています. 他の言語にも見習ってほしいですね. たぶん見習おうとすると処理系を作り直す羽目になりますが. この記事ではScala 3のマクロのすごいところを例を使って紹介します. マクロの実践的な例 準備 実践的な例: NamedArray – 名前でアクセスできる配列 NamedArrayのマクロ実装 記述が明瞭 メタレベルのプログラムの扱い クォートとスプライスがある パターンマッチもある 生成コードに型がつく 多段階計算に基づいている クォートとスプライスの本当の意味 ネストしたスプライス ネ

                                                              あらゆるプログラミング言語の最先端を行くScala 3のマクロ - 貳佰伍拾陸夜日記
                                                            • Scala入門としてCLIツールを作り、Scala.js, React, ScalaCSSでサイトを作った - マルシテイア

                                                              fand.github.io 今年2月からScalaのチームに異動し、Scala入門している。 2月中はゆっくりコップ本を読んでいたのだけど、やっぱり手を動かさないと自信が付かないので、何かツールを作る事にした。 ついでにGitHub PagesもScala.jsやScalaCSSで実装してみた。 つくったツール github.com !!! 実用性は度外視しています !!! レポジトリをまるごとコピーしてくれるやつ。 ブランチを移動する度にコンパイルで時間かかるのを回避するため、ブランチ毎にコピーしたらいいのでは、という発想(上手く行ってるかはわからない……)。 手で cp -r するのが一番はやいし、ツールを作るにしても普段だったらJSで書くとこだけど、今回はせっかくなのでScalaでCLIツールを作ってみた。 使い方 brewでインストール可能。 $ brew tap fand/cl

                                                                Scala入門としてCLIツールを作り、Scala.js, React, ScalaCSSでサイトを作った - マルシテイア
                                                              • こわくない型クラス

                                                                AIとAWSで現世から離れる試み-仕事がちょっと大変な時もあったりするから�俺のかわりにAIにシステム作ってもらえるシステム作った話.pptxJun Suzuki

                                                                  こわくない型クラス
                                                                • 多重継承まとめ - 西尾泰和のはてなダイアリー

                                                                  JavaはInterfaceという特殊な実装を持たないものだけ多重継承できる。実装を多重継承する仕組みはない。同じシグネチャのメソッドを持っている2つのInterfaceを継承した際にエラーにならないので衝突に気付けない。 Pythonはクラスを多重継承できる。同じ名前のメソッドを持っている2つのクラスを継承した際にどのメソッドが呼ばれるかはC3線形化を使って決定される。see: A Monotonic Superclass Linearization for Dylan RubyはModuleという「なにかを継承することはできなくてインスタンス化もできないもの」だけは多重継承できる。Moduleが別のものを継承できないためメソッドの解決は素朴な探索でOK(include A include BしたらBでの実装が優先) SmalltalkにはTraitという実装の多重継承ができるしくみがあ

                                                                    多重継承まとめ - 西尾泰和のはてなダイアリー
                                                                  • SQLインジェクションは本当に避けられないのか - ドクジリアン柔術少女 すから☆ぱいそん - ワルブリックス株式会社

                                                                    ありもしない完全な代替品を求めるよりも、より現実的な選択肢を改善することについて。 SQLからなるべく乖離しないでDRYを実現するっていうScalikeJDBCの落としどころが素晴らしい。「結局のところSQLは書かなきゃいけんねん」「SQLよりつぶしの効くRDB操作用言語は存在しえないねん」っていうORMの教訓を経てきた人類はここに到達したって感じで。 — 嶋田大貴 (@shimariso) 2014, 11月 21 というツイートをしたところ、 何をいうか。必ずORMを使うべきだ SQLは根本的にSQLインジェクションを回避できない問題がある みたいな趣旨の反応があったのだけれど、前者についてはWikipediaのここ を一読いただくとして、後者についてはプログラミング言語のほうが発達してて状況が違ってきてるよという話をしたい。 誤解しないでいただきたいのは、別にSQLが良いものであると

                                                                      SQLインジェクションは本当に避けられないのか - ドクジリアン柔術少女 すから☆ぱいそん - ワルブリックス株式会社
                                                                    • EmacsでつくるScala開発環境 前編(scala-mode) - tototoshi の日記

                                                                      Emacsでのscala開発環境をご紹介。 ちょっと量が多いので2回に分けます。 前編はscala-mode 後編はENSIME(scala IDE) 今日は前編 scala-modeについて scala-mode インストール Emacsにはデフォルトでscala用のモードは入っていません。 自分でscala-modeをインストールする必要があります。 scala-modeはScalaの配布パッケージに含まれています。 まずscalaのtarをダウンロードします。 現在の安定板は2.8.0.finalです。 まずはダウンロード $ wget http://www.scala-lang.org/downloads/distrib/files/scala-2.8.0.final.tgz 展開します。 $ tar zxvf scala-2.8.0.final.tgz scala-2.8.0.f

                                                                        EmacsでつくるScala開発環境 前編(scala-mode) - tototoshi の日記
                                                                      • プログラミング言語Scala 日本語情報サイト

                                                                        Created by mhanada on 2011-12-25. Updated: 2012-02-11, 23:29 日本Scalaユーザーズグループ発足に伴い、今後は日本Scalaユーザーズグループのサイトにニュースを掲載することにいたしましたのでそちらをご覧いただくようお願いします。

                                                                        • コードで学ぶドメイン駆動設計入門 〜エンティティとバリューオブジェクト編〜 - かとじゅんの技術日誌

                                                                          先日、DevLOVEで発表した「コードで学ぶドメイン駆動設計入門」ですが、入門としながらも難しかったかもしれません。モデリングの話は難しい方の話題なので仕方ないのですが、できるだけわかりやすく補足するブログを書いてみたいと思います。 まず、レイヤードアーキテクチャの話ですが、こちらのスライドを参照してください。 DEVLOVE HangarFlight で話したスライド&ソースコード - じゅんいち☆かとうの技術日誌 平たく言うと、そのアプリケーションが解決する問題の領域がドメインです。ドメインとそれ以外のものをごっちゃにしないようにしたのが、ドメイン駆動設計だと考えればよいと思います。 一般的に業務システムでは、対象業務がドメインに成り得ますので、ドメインは業務に準えて語られることが多いと思います。ドメインに登場する概念をユビキタス言語*1として定義し、モデルに落としこむというのが設計の

                                                                            コードで学ぶドメイン駆動設計入門 〜エンティティとバリューオブジェクト編〜 - かとじゅんの技術日誌
                                                                          • Scalaで&lt;:&lt;とか=:=を使ったgeneralized type constraintsがスゴすぎて感動した話 - ( ꒪⌓꒪) ゆるよろ日記

                                                                            Scala2.8から、Predefに<:<とか=:=とかが定義されていて、これなんだろ?とずーっと疑問だった訳ですよ。で、ついったーで質問投げてたらやっと理解できました。 教えて頂いた @ScalaTohoku さん、@okomok さん、@tioa さん、有り難うございました! "generalized type constraints"というヤツで、型パラメータに与えられた型が、特定の条件を満たす場合にのみ呼び出せるメソッドを定義できるというものです。しかもコンパイル時に静的にチェックされる!! これはスゴい!! What do <:<, <%<, and =:= mean in Scala 2.8, and where are they documented? - Stack Overflow =:=や<:<や<%<で特定の型のみ呼び出せるメソッドを定義する 具体的な例で説明します。

                                                                              Scalaで&lt;:&lt;とか=:=を使ったgeneralized type constraintsがスゴすぎて感動した話 - ( ꒪⌓꒪) ゆるよろ日記
                                                                            • JDK 21 の開発者向けの新機能 - 赤帽エンジニアブログ

                                                                              Red Hat のソリューションアーキテクトの瀬戸です。 この記事はRed Hat Developerのブログ記事、What's new for developers in JDK 21 | Red Hat Developer を、許可をうけて翻訳したものです。 Java開発者にとってエキサイティングな情報として、今年 9 月 19 日に JDK 21 がリリースされました。 このリリースには、仮想スレッド(Virtual Thread)、レコードパターン(Record Patterns)、順序付コレクション(Sequenced Collections)など、Javaのエコシステムに利益をもたらす多くの新機能が含まれています。JDK 21 のプレビューには、文字列テンプレート(String Templates)、スコープ付値(Scoped Values)、構造化並列処理(Structure

                                                                                JDK 21 の開発者向けの新機能 - 赤帽エンジニアブログ
                                                                              • Twitter、Ruby on RailsからScalaへ | スラド IT

                                                                                Twitter は Ruby on Rails で構築されたそのインフラを徐々に Scala に置き換えているそうだ (Technology Review の記事, 本家 /. 記事) 。 Twitter ではフロントエンド、バックエンド共に Ruby on Rails が使われていたが、最近では大量のメッセージを処理できず「Fail Whale」出現の原因となったりしていた。このため Twitter の開発チームは代替言語として Scala を採用、少しずつバックエンドやインフラを Scala に置き換えているそうだ。スイス連邦工科大学ローザンヌ校の Martin Odersky 氏によって開発された比較的新しいプログラミング言語である Scala は並列プロセスの処理に長けている点が Twitter に向いており、また言語としてのフレキシビリティも開発にとっては魅力とのこと。短所として

                                                                                • 退職します - kmizuの日記

                                                                                  2014年3月末をもって、株式会社ユビレジを退職することになりました。在職期間は2年3ヶ月とそれほど長くありませんが、スタートアップ企業の顧客に近い位置で仕事をすることができて、とてもいい経験が出来たと考えています。 退職に関して 新しい職場で自分の力量を試してみたくなったことと 現在のユビレジにおいて自分が果たせる役目が一通り終わったという実感 そもそもユビレジにジョインした時点で、働き始めて2年間経ったら転職先を考えようと思っていた というのが大きな理由です。 ユビレジに入った当初~去年4月までは、駒場東大前近くにある、通称ユビハウスという一軒家の1階をオフィス用として利用していました。おかげで、 柿の木から柿を収穫(!)して食べた 東大駒場キャンパスの食堂で昼食を食べた タイカレーを皆で作って食べた たこやきを皆で作って食べた といった貴重な経験をすることができました…というのは冗談

                                                                                    退職します - kmizuの日記