並び順

ブックマーク数

期間指定

  • から
  • まで

281 - 320 件 / 343件

新着順 人気順

scalaの検索結果281 - 320 件 / 343件

  • Implicit · Scala研修テキスト

    implicitキーワード Scalaには他の言語には見られないimplicitというキーワードで表現される機能があります。Scala 2ではimplicitという単一の機能によって複数の用途を賄うようになっていますが、1つの機能で色々な用途を表現できることがユーザーにとってわかりにくかったという反省もあり、Scala 3では用途別に異なるキーワードや構文を使う形になっています。 この章ではScala 2でのimplicitキーワードの4つの使い方を説明します。 Implicit conversion implicit conversionは暗黙の型変換をユーザが定義できる機能です。Scalaが普及し始めた時はこの機能が多用されたのですが、implicit conversionを多用するとプログラムが読みづらくなるということがわかったため、現在は積極的に使うことは推奨されていません。とはい

    • Java(Scala)アプリどう配ってますか - Lambdaカクテル

      自作の解説動画作成ツールがある程度形になってきたので、配布について考えている。 www.nicovideo.jp zmmはScalaで書かれたアプリケーションなので、JVMで動作する。JVM言語の配布形式には色々あるのだけれど、zmmではとりあえずJARを配ることにした。 Scalaにはsbt-assemblyというUberjar*1を生成するプラグインや、リリースフローを自動化するsbt-releaseというプラグインがあるので、JARを生成させるところまでは割とすぐできた。 $ sbt > release とするとインタラクティブなリリースフローが始まり、自動でコミットとかバージョン修正とかタグ打ちとかをやってくれる。非常にありがたい。 JARファイルを生成したら僕がそれをGitHub Releasesに置く。 github.com ユーザとしてはこれをダウンロードしたら実行できるはず

        Java(Scala)アプリどう配ってますか - Lambdaカクテル
      • Functional and Reactive Domain Modeling 各章まとめ - Qiita

        Functional and Reactive Domain Modelingとは、ドメイン駆動設計(DDD)の関数型プログラミング(FP)とリアクティブプログラミング(RP)によるアプローチを書いた本 1. 関数型ドメインモデリング:イントロダクション 変更可能なステートを避ける - 変更可能なステートは管理が難しく、非決定性につながる 参照透過性 - FPは、参照透過なモデルコンポーネントを設計する能力を提供する。モデルの振る舞いが純粋関数で構築されていることで合成性を得られ、小さな関数から大きな関数を作ることができる 自律的成長 - 関数型の設計と思考で、モデルは自律的に成長する。純粋性故にモデルは数学的に扱うことができ、推論ができる コアドメインに集中する - DDDの原則を使用してモデルを構築すると、リポジトリやファクトリといったパターンに基づいて編成されたエンティティや値オブジ

          Functional and Reactive Domain Modeling 各章まとめ - Qiita
        • sbt でのコンパイルキャッシュ · eed3si9n

          2020-05-06 / sbt Google のビルドインフラ Blaze (現在は Bazel としてオープンソース化されている) のことを知ってから Scala のツールチェインにも似たような仕組みが欲しいとずっと思い続けてきた。これは特に独創的な発想という訳では無く、Peter Vlugter さんと Ben Dougherty さんの nailgun Zinc での機能 (Pants で使われていた?) や、Krzysztof Romanowski さんの Hoarder など先行研究もある。それらは、作業ディレクトリに合わせて Zinc Analsis ファイル内に格納されている絶対パスを変換するというアイディアから成り立っている。 僕の作業の詳細に入る前に、問題スペースをざっとデモしよう。 ビルドのマシン依存性 Akka の akka-actor/compile を sbt

          • From idea to product with ZLayer

            Hi, I am a Scala developer based in Zurich, Switzerland. Functional programming explorer, ice hockey enthusiast. This post will help you start building Scala applications with ZIO. Today there are many libraries in Scala ecosystem, that promise to improve your efficiency. I wrote this post in order to help you to start with the new effect type on the block - ZIO. It’s a huge library that gives you

            • map を使いこなせるあなたに traverse

              はじめに この記事は ScalaMatsuri 2023 で発表されるセッション「traverseを制する者はコードを制す」の補完記事です。セッション時間の都合上カットした traverse の実装面を焦点に解説します。 traverse がどういったシーンで役に立つのか等は本セッションをご参照ください。 使用する言語・ライブラリのバージョンは以下の通りです。 Scala 3.2.2 cats 2.7.0 構造を保ったまま要素に関数を適用する さて traverse とはどんな関数なのかと言うと、構造を保ったまま要素に関数を適用する関数です。 そう聞くと最近のメジャーな言語にはおおよそ存在している map の事を思い浮かべる方も居る事でしょう。 その通り map も構造を保ったまま要素に関数を適用する関数と言えます。 val list = List(1, 2, 3, 4, 5) list.

                map を使いこなせるあなたに traverse
              • 既存のアプリケーションからAkkaを切り離して大幅なコスト増を回避する - kubell Creator's Note

                みなさん、こんにちは!Chatworkの原田 (@shinharad) です。 今回は、私が最近取り組んでいる、既存のScalaアプリケーションからAkkaの依存を切り離す準備を進めている話を書こうと思います。Akkaの切り離し方は色々あると思いますが、一つの方法として参考にしていただければと思います。 なお、現時点ではAkkaを切り離すことでコスト面での効果が最も大きいアプリケーションを対象として進めています。今後他のアプリケーションも同様にAkkaを切り離すかどうかは、状況を見ながら判断していくことになりそうです。 Akkaを切り離すに至った背景 Akkaは、並行・分散システムの構築をサポートするツールキットで、弊社ではこれまで多くのScalaアプリケーションで採用してきました。Akkaのエコシステムは包括的かつ強力で、Web APIやストリーム処理、分散処理など、アプリケーションの特

                  既存のアプリケーションからAkkaを切り離して大幅なコスト増を回避する - kubell Creator's Note
                • Scala で簡単スクリプト Ammonite を試す | DevelopersIO

                  Ammonite-REPLを試してみました。コンソール先頭の `@` の形がアンモナイトの殻ってことかな。 はじめに 普段はScalaで開発することが多いのですが、ちょっとコードを試したいときにIDEを起動するのは億劫でした。簡単に試せる場所がないかなーと探していたところ Ammonite を見つけましたので紹介します。 Ammoniteとは Ammonite Ammonite lets you use the Scala language for scripting purposes: in the REPL, as scripts, as a library to use in existing projects, or as a standalone systems shell. Ammoniteを使用すると、スクリプトの目的でScala言語を使用できます。REPLでは、スクリプトと

                    Scala で簡単スクリプト Ammonite を試す | DevelopersIO
                  • 令和版: 依存関係逆転の法則の実現方法 - Qiita

                    依存関係逆転の法則とは コアのロジックが実装の詳細に依存しないようにして、モジュール間を疎結合にしましょうという原則。 Wikipediaでは以下のように説明されている。 上位モジュールはいかなるものも下位モジュールから持ち込んではならない。双方とも抽象(例としてインターフェース)に依存するべきである。 "High-level modules should not import anything from low-level modules. Both should depend on abstractions (e.g., interfaces)." 抽象は詳細に依存してはならない。詳細(具象的な実装内容)が抽象に依存するべきである。 "Abstractions should not depend on details. Details (concrete implementations

                      令和版: 依存関係逆転の法則の実現方法 - Qiita
                    • Intersection Types を利用した Type Safe Builder の改善

                      Builder パターン Java では Builder[1] と呼ばれるパターンが使われる事があります。 これは多くのオプショナルなパラメータを持つオブジェクトの生成において、Python等にあるような名前付き引数呼び出しをエミュレートするための方法として生まれました。 // Builder パターンの利用例 Contract contract = Contract.builder("gakuzzzz") // 必須パラメータ .mail("test@example.com") // オプショナル .lineId("xxxxxxxxx") // オプショナル .build(); # Python 等であれば名前付き引数呼び出しで事足りる contract = Contract(name = "gakuzzzz", mail = "test@example.com") Type Safe

                        Intersection Types を利用した Type Safe Builder の改善
                      • 平均年収の高い「プログラミング言語」 3位「Scala」、2位「TypeScript」、1位は?

                        2位以下は「TypeScript」が690.4万円、「Scala」が667.9万円、「Kotlin」が664.9万円、「Ruby」が663.5万円と続いた。2022年の平均年収と比較し、大幅な上昇がみられたのが「Go言語」(51.5万円増)、「Sass」(54.8万円増)、「Perl」(91.5万円増)だった。 一方、「Scala」「C++」は22年と比較して、それぞれ平均年収が15.0万円、10.3万円減少。「C++」においては、20年から比較すると54.8万円も減少した。同社によると「C++の場合、基礎知識を持つ社会人の数が比較的少なく採用が難しいものの、学習経験者は多いため、経験が浅い若手人材の採用が進んだ結果ではないか」と分析している。 転職で企業からニーズが高い言語ランキングでは1位が「JavaScript」。2位以降は「Java」「PHP」「Python」「TypeScript

                          平均年収の高い「プログラミング言語」 3位「Scala」、2位「TypeScript」、1位は?
                        • 私は(もはや)国内Scalaコミュニティの偉い人ではありません - kmizuの日記

                          このことはいい加減はっきり書いておかないとなあということで、ちょっと記事にしてみることにしました。 もちろん、英語圏のScalaコミュニティで私が強い影響力を持ったことはそもそもありません(日本でそれに一番ふさわしいのは@xuwei_kさんだと思います。恐ろしい数のcontributionという点で)。日本語圏でもScalaコミュニティ内で意義のある活動をしていたのは5年以上も前の事です。「外側」からみるとまた違って見えるかもしれませんが、それが正直な自己認識です。 色々な経緯があるにせよ、私が日本でScalaコミュニティに関する活動を始めたのは、Scalaが良い言語なので広めたいという本当に純粋な動機でした。Scala Conference in Japan 2013を最初に企画したのは私ですが、あれもまあ起爆剤として誰かがやらないとなあと思っていたのを勢いでやったことですし、そもそも私

                            私は(もはや)国内Scalaコミュニティの偉い人ではありません - kmizuの日記
                          • for-yieldはScalaにおける内包表記 数学と似ているシンタックスシュガーの書き方

                            アジア最大級の国際Scalaカンファレンスである「ScalaMatsuri2020」がオンラインで開催されました。ここで中村氏が「他言語経験者が0から始めるScala ~block式とfor式と型クラス~」をテーマに登壇。続いてyieldの付くfor式について紹介します。前回の記事はこちらから。 yieldの付くfor式 中村学氏(以下、中村):次はfor expression、for式についてです。「式」と言うように、Scalaのforは式です。他の言語ではfor文と言われますが、Scalaのforは式です。そのため評価すると値になります。Scalaの式は大きく分けて2種類あります。予約語のyieldが付くものと、付かないものです。 yieldが付かないfor式は、基本的に他の言語のforeach構文とほぼ一緒です。全体の式としての評価結果はユニットという、何の意味ももたない値になります

                              for-yieldはScalaにおける内包表記 数学と似ているシンタックスシュガーの書き方
                            • アルプでのScala 3移行

                              class: center, middle # アルプでの<br/>Scala 3 移行 <https://alp.connpass.com/event/239935/> Scalaを使ったSaaSプロダクト開発の<br/>裏側お見せします! 2022/3/4 --- class: middle <img src="image/xuwei.gif" alt="icon" style="zoom: 0.3" /> - twitter [@xuwei_k](https://twitter.com/xuwei_k) - github [@xuwei-k](https://github.com/xuwei-k) - blog <https://xuwei-k.hatenablog.com> --- class: middle ## 近況 - 相変わらず某社でScala書く仕事してます - もう3年

                              • Open letter of support for community members targeted by Jon Pretty

                                Open letter of support for community members targeted by Jon Pretty We, the undersigned, have become aware that, for some time, Jon Pretty has abused his position of privilege and stature within the Scala community to sexually harass and victimize women. He has used the community’s conferences to target women who are new to the Scala community, offering mentorship, access, and other forms of suppo

                                • Apache Pekko™

                                  Apache Pekko™ is an open-source framework for building applications that are concurrent, distributed, resilient and elastic. Pekko uses the Actor Model to provide more intuitive high-level abstractions for concurrency. Using these abstractions, Pekko also provides libraries for persistence, streams, HTTP, and more. Pekko includes APIs for Java and Scala and is designed to run in JVMs. Apache Pekko

                                  • GitHub - j5ik2o/warikan-domain-scala

                                    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                      GitHub - j5ik2o/warikan-domain-scala
                                    • Validated applicative functorの良さ + Traverse

                                      前提: 型クラス 型クラスの話をしています。型クラスは、ダックタイピングのすごく良いやつです(適当)(コメントで識者がツッコんでくれる) 型クラス(とその具体例であるインスタンス)にはいろいろあるけど、今回はValidatedとTraverseについて話しているよ 言語によって呼び名はいろいろあるけどここではScala(のCatsライブラリ)での呼び名で書いています ValidatedはApplicative、Functorのインスタンスだよ(ApplicativeとFunctorのインスタンスであることを強調してValidated applicative functorと呼ぶことがあるよ) Monadじゃないよ Monad版はEitherが相当するよ TraverseはFunctorにtraverseという操作を導入した型クラスだよ 例えばListはTraverseのインスタンスだよ V

                                        Validated applicative functorの良さ + Traverse
                                      • Scala and the visitor pattern

                                        Scala provides a handful of language features that are designed to make it easy for users to define and work with algebraic data types (ADTs). You write some case classes that extend a sealed trait, you write some functions that pattern match on those case classes, and you're done: you have a nice linked list or rose tree or whatever. Sometimes you can't use case classes to implement your variants

                                        • Hedgehog will eat all your bugs

                                          Hedgehog automatically generates a comprehensive array of test cases, exercising your software in ways human testers would never imagine. Generate hundreds of test cases automatically, exposing even the most insidious of corner cases. Failures are automatically simplified, giving developers coherent, intelligible error messages.

                                          • Github ActionsによるScala製ライブラリの依存ライブラリ更新と定期リリースの自動化 - kubell Creator's Note

                                            どうも、かとじゅん(@j5ik2o)です。 Scala製ライブラリでの依存ライブラリ更新と定期リリースをGithub Actionsを使って自動化するようにしたので、以下にその方法をまとめます。 具体的な例を見たい場合は以下のリポジトリを参照してください。 github.com 自動化した作業 依存ライブラリのバージョンアップのPR作成とマージ リリースノートの生成 JARファイルの公開 ツールの前提条件など sbt-ci-release, sbt-scalafix, sbt-scalafmtのsbtプラグインは必須としています。CIでリリースするだけならsbt-ci-releaseの設定だけでOK project/plugins.sbt 参照 sbt-ci-releaseの設定 git tagに振られたバージョンに基づいてリリースするのでversion.sbtを削除 sbt-releas

                                              Github ActionsによるScala製ライブラリの依存ライブラリ更新と定期リリースの自動化 - kubell Creator's Note
                                            • Coursier · Pure Scala Artifact Fetching

                                              Don't wait for the slowest repositories, and enjoy multiple downloads at the same time from repositories allowing it

                                              • Scala 3のmatch typeで数独solverを作った - xuwei-k's blog

                                                昨日の続き xuwei-k.hatenablog.com 昨日のcheckするだけのものは数秒で終わるのですが、これは手元で compileに2分くらい かかります。 速度に関して改善の余地があるのかどうか?はわかりません。 改善したら、問題が簡単なら数秒で終わるようになりました。 いくつかtweetしましたが、compilerの限界なのでは?と思ったけれど、頑張った結果、いくつかは自分のミスでした。例えば 割り算するべき箇所で余りを取っていた scala.compiletime.ops.any.== は、singleton同士ではないと比較不可能。例えば (1, 2) と (3, 4) といったTupleのまま比較不可能なので、自前でsingletonになるまで必要に応じて再帰的に分解しつつdeepなequalsを実装する必要がある(つらい) 複雑になり過ぎると、上記のようなミスをした場

                                                  Scala 3のmatch typeで数独solverを作った - xuwei-k's blog
                                                • GitHub - zio/zio: ZIO — A type-safe, composable library for async and concurrent programming in Scala

                                                  You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                                    GitHub - zio/zio: ZIO — A type-safe, composable library for async and concurrent programming in Scala
                                                  • Scalaのcatsについて知っておきたい9つのtips(和訳記事) - Qiita

                                                    はじめに Scalaでの開発でcatsを使っているおり、使えそうなので和訳しました。(ただしところどころ日本語的に訳すのが難しい場合は、訳さなくても理解するのに影響がなければ無視し、それ以外は意訳や、直訳した上で括弧内でコメントを残しました) この記事のもとは9 tips about using cats in Scala you might want to knowです。 本編 Scalaの関数型プログラミング(以下、FP)は言語の様々な構文と意味の特性故に、難しいのかもしれない。特に、一度は聞いたことのあるFPの中心的なライブラリの中には、いくつかの特徴的で「何かをするのに適切な方法」が存在する。それは一目瞭然だが、ガイダンスがないと始めたてのときには見つけられない。 そのため、私はこの投稿の中でScalaのFPにおけるいくつかの慣習のtipsを共有することは役立つと考えている。例や特

                                                      Scalaのcatsについて知っておきたい9つのtips(和訳記事) - Qiita
                                                    • Cats の関数覚え書き(Functor, Apply, Applicative, FlatMap) - Qiita

                                                      この記事は MicroAd Advent Calendar 2021 の 1 日目の記事です。 はじめに 現在、弊チームでは Cats 製の WEB アプリを実装(既存のアプリのリプレイス)を進めています。 Cats にはたくさんの型クラスにたくさんの関数が定義されているのですが、それを知った上で実装を行うのと、知らないで実装を行うのではコーディングの難易度に天と地ほどの差があるように感じています。 今回はチームメンバーへの共有も兼ねて、よく使うであろう型クラスの関数について覚書程度ですが使い道などを書いていこうと思います。 flatMap とそれに連なる型クラス Functor Bifunctor FunctorFilter Apply Applicative FlatMap エラー処理に関する型クラス ApplicativeError MonadError cats.kernel 系

                                                        Cats の関数覚え書き(Functor, Apply, Applicative, FlatMap) - Qiita
                                                      • ScalaMatsuri 2024 で Scala の WebAssembly 対応について話しました / スタッフとして参加しました - たにしきんぐダム

                                                        2024年6月に開催された ScalaMatsuri 2024 に参加しました! Scala to WebAssembly: How and Why 今回は久々の大規模オフライン開催で、会場は久しぶりにお台場のプラザ平成でした。この会場でのScalaMatsuriに参加したのは5年前の2019年(と2018年に初参加)だったので、とてもエモい気持ちで会場に向かいました。 今年はスピーカー兼スタッフとしての参加で、スピーカーとしては最近開発しているScalaのWebAssembly対応について話し speakerdeck.com スタッフとしては、プログラムの選定や翻訳・(@scala_jpと@scalamatsuriの)SNS運用・(会場でたまに)通訳などをさせていただきました。大変だったけど楽しかった!来年以降もScalaMatsuri運営に関わっていきたい😎 久々の大規模オフライン開

                                                          ScalaMatsuri 2024 で Scala の WebAssembly 対応について話しました / スタッフとして参加しました - たにしきんぐダム
                                                        • (初心者向け)Scalaでsbtプロジェクトを作るときの勘所 - Lambdaカクテル

                                                          この記事では、Scala初心者がプロジェクトを作るときに分かりにくい(であろう)ポイントを埋めようというものです。 こんな記事を読んだ。 trap.jp 普段Rustを書いている人がScalaを書いてみたという内容の記事で、普段Scalaに振れていない人の視点があってとても良かった。普段我々はScalaを書きすぎているので、初心者がどこでハマるのか?初学者はどのようなポイントを見ているのか?といったことがわからないのだ。 そこでこの記事では、上掲の記事を参考にしつつ、普段自分がScalaプロジェクトを作るときどのようにしているかを説明しようと思う。 プロジェクトを作る 最低限必要なもの sbtはどこからどこまでやってくれるのか プロジェクト作成 その他エコシステムの諸々(コンパイラ、フォーマッタなど) コンパイラ LSP Formatter / Linter scalafmt scalaf

                                                            (初心者向け)Scalaでsbtプロジェクトを作るときの勘所 - Lambdaカクテル
                                                          • Tuples bring generic programming to Scala 3

                                                            Friday 26 February 2021 Vincenzo Bazzucchi, Scala Center Tuples allow developers to create new types by associating existing types. In doing so, they are very similar to case classes but unlike them they retain only the structure of the types (e.g., which type is in which order) rather than giving each element a name. A tuple can also be seen as a sequence and therefore a collection of objects, ho

                                                              Tuples bring generic programming to Scala 3
                                                            • Google パワーで sbt でのダウンロードが33倍速くなる!?

                                                              この記事は Scala Advent Calendar 2022 の7日目が空いていたので、あとから投稿した記事です。アディショナルタイムみたいなものです。タイトルは釣りです(一応33倍速いという根拠はあとのほうに…) ときに2015年、Google のエンジニアらが Maven Central のミラーを公開しました(以下かんたんのため Google ミラーと呼びます)。Google ミラーの目的は、Maven Central 上にある Java や Scala のライブラリなどを、Google のインフラのパワーで高速にダウンロードできるようにすることで、開発者体験を向上するためでした。その後の数年で多少書き方に変化あったようですが、簡素なトップページで Maven でのグローバルな設定方法が掲載されています。 さて、Scala で主流のビルドシステム sbt のグローバルな設定方法に

                                                                Google パワーで sbt でのダウンロードが33倍速くなる!?
                                                              • Scala - Qiita Advent Calendar 2019 - Qiita

                                                                The Qiita Advent Calendar 2019 is supported by the following companies, organizations, and services.

                                                                  Scala - Qiita Advent Calendar 2019 - Qiita
                                                                • ScalaScriptで実装する AlfredからSlackに簡単投稿 | DevelopersIO

                                                                  はじめに こちらのブログ(Scala で簡単スクリプト Ammonite を試す) でScalaで簡単なスクリプトが書けるAmmoniteに入門しました。Ammonite にはScalaで簡単にスクリプトが書ける ScalaScript という機能あるため、何か作ってみたくなりますよね。 以前 Alfredから簡単にSlack分報をPostする 機能をGoで実装しましたが、こちらをScalaScriptで再実装してみます。 完成デモ Alfredを起動して t [メッセージ] で分報チャンネルに投稿します。 実装 準備 Ammonite Ammoniteについて紹介したブログはこちら Alfred プロ Alfredのworkflow機能を使うにはproバージョン(有料)が必要です Slackのトークン Bolt入門ガイドがとても参考になります トークンとアプリのインストール までで大丈夫

                                                                    ScalaScriptで実装する AlfredからSlackに簡単投稿 | DevelopersIO
                                                                  • Scala を覚えてお金に困らなくなった話

                                                                    2010年くらいに Scala というプログラミング言語を勉強し始めて今で約10年。そのおかげで、今ではお金に困らなくなったという昔話。 もちろん、「Scala を覚えておけばお金稼げますよ!そのために、私がやっているセミナーを受講しましょう!」とか、そういう話では無い。 Scala を覚えて、なんでお金に困らなくなったかというと主に理由は3つ。 新しい言語を勉強すること自体によって、あるいはコミュニティの人に影響を受けて色々勉強するようになって、プログラマーとしての実力が上がり、もらえるお金が増えたScala がその後色んな場面で使われるようになって需要が増えたScala コミュニティの人経由で仕事がもらえたビッグデータ(Spark)の仕事はお金が良かった関わった会社でストックオプションをもらって、その会社が上場した 最初の1つは、どの言語を勉強していても多分それなりに同じ効果が得られた

                                                                      Scala を覚えてお金に困らなくなった話
                                                                    • ScalaのEffを使ってDDDのUseCase層をいい感じに書いてみる

                                                                      *Qiitaに掲載していたものと同じ内容をこちらに移転しました(作者は同じです)。 今回のサンプルコードはyu-croco/ddd_on_scalaに掲載していますので、気になる方は覗いてみてください。 経緯 Scala(PlayFramework) x DDDでアプリケーションを実装する際、UseCase層(Application層)を実装する際に辛さが出てくる。 何が辛いかと言うと、型のネストである。 というのも、 UseCase層ではエンティティ操作の過程で仕様周りのバリデーションをやることになりEitherが出てくる 例:ハンターがモンスターから素材を剥ぎ取るためには、モンスターが既に死んでいる必要がある (PlayFrameworkだと特に)Repository層での呼び出してFutureが出てくる そのため、UseCase層での各処理の型合わせが必然的に複雑になる傾向にある。

                                                                        ScalaのEffを使ってDDDのUseCase層をいい感じに書いてみる
                                                                      • ScalaTest

                                                                        Using matchers ScalaTest provides a domain specific language (DSL) for expressing assertions in tests using the word should. Just mix in should.Matchers, like this: import org.scalatest.flatspec._ import org.scalatest.matchers.should._ class ExampleSpec extends AnyFlatSpec with Matchers { ... You can alternatively import the members of the trait, a technique particularly useful when you want to tr

                                                                        • onboarding_for_scala_team.pdf

                                                                          ログイン読み込んでいます…

                                                                            onboarding_for_scala_team.pdf
                                                                          • AWS LambdaでScala 3をContainer imageで動作させる - Lambdaカクテル

                                                                            先日(といっても結構前のことだが)、Scala 3のLTSサポートバージョンである3.3.0がリリースされた。Scala 3の開発が円熟してきているようで嬉しい。これからも元気でいてね。今回はScala 3をAWS LambdaのContainer imageを使って動作させる手法についてお伝えしたい。令和ではお盆の精霊はコンテナに乗ってやってくるぞ。 www.scala-lang.org これまでもこのブログではAWS LambdaでScala 3を動作させる方法を紹介してきたが、アーティファクトのサイズが大きくなると、JARを直接デプロイする方式ではアーティファクトに250MBのサイズ制限が生じるという問題があった。機械学習などを利用するアプリケーションではこのサイズ制限によりLambdaの利用に制約が生まれがちである(ただし、アーティファクトにJVMを含まなくても良いためサイズ効率は

                                                                              AWS LambdaでScala 3をContainer imageで動作させる - Lambdaカクテル
                                                                            • New in Scala 3

                                                                              The exciting new version of Scala 3 brings many improvements and new features. Here we provide you with a quick overview of the most important changes. If you want to dig deeper, there are a few references at your disposal: The Scala 3 Book targets developers new to the Scala language. The Syntax Summary provides you with a formal description of the new syntax. The Language Reference gives a detai

                                                                              • Statement

                                                                                I stand with Yifan I believe Yifan’s story, because it’s consistent with my experience of Jon Pretty as a manipulative, abusive, and dishonest person. I stand by her decision to come forward, and I want to share my account of his interactions with me to corroborate her story and establish that this is a pattern of harmful behavior on his part. Similar to Yifan’s experience, Jon Pretty and I met at

                                                                                • toolkit/docs/problem-matchers.md at master · actions/toolkit

                                                                                  You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                                                                    toolkit/docs/problem-matchers.md at master · actions/toolkit