並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 373件

新着順 人気順

scalaの検索結果1 - 40 件 / 373件

  • 独自scalafixのruleを同じsbt project内部に置く際の設定方法 - xuwei-k's blog

    個人的に、すごい細かい使い捨て含めるとおそらくもう1000個くらいはrule書いたことあるので、おそらく現状では日本一scalafix rule書いていると思うのですが、 慣れるとそのくらい気軽に書けてすぐ役に立って便利なので、既存の他人が書いたruleを使うだけではなく、独自に書くことを強くすすめていきたいです。 しかし、それにあたって、sbtのproject構成が思ったより面倒なので、それの解説をします。 タイトルの通りあくまで「同じsbt project内部に置く」場合の話をします。 gitやsbtのprojectそのものを完全に分けてしまえば、もちろん考えることが減って楽になる点もありますが、分けることによるデメリットもあるので、個人的には(scalafixに限らないですが)わりとmonorepoというか、同じprojectで頑張ることを推奨したいです。 (OSSにはしないような社

      独自scalafixのruleを同じsbt project内部に置く際の設定方法 - xuwei-k's blog
    • 【2024年6月】フリーランス案件の単価における市場動向【フリーランスボード】

      INSTANTROOM株式会社(本社:東京都渋谷区、代表取締役:曽根弘介)が運営する、フリーランスエンジニア・ITフリーランスの案件検索サイト「フリーランスボード(https://freelance-board.com)」は2024年6月のフリーランス案件の単価における市場動向の調査結果を発表いたします。 ◆数字で見る「フリーランス市場動向」 フリーランスボードでは2024年6月6日時点の141,500件の掲載案件を対象に開発言語・フレームワーク・職種別の月額平均単価を調査いたしました。 ■フリーランス案件の月額平均単価 2024年6月のフリーランス案件の月額平均単価は71.5万円、最高単価は320万円です。 ▼掲載中のフリーランス案件はコチラから https://freelance-board.com/jobs ■開発言語別の月額平均単価 開発言語別の月額平均単価は上表の結果となりました

        【2024年6月】フリーランス案件の単価における市場動向【フリーランスボード】
      • 拡張可能レコードのライブラリrecord4sについてScalaMatsuri 2024で発表しました - 貳佰伍拾陸夜日記

        ScalaMasturi 2024で, 拙作の拡張可能レコードのライブラリrecord4sについて発表してきました. 発表で触れられなかった点も補足しながら, 内容を文章にしておこうと思います. とくにrecord4s以外のレコード実装との比較についてはこの記事での完全書き下ろしです. モチベーション Scala 3の標準機能による解決 理想 record4s Tips メソッドの定義 例を使ってJSONをデコード 内部実装 フィールドアクセス レコードの結合 重複キー問題 Scalaの他のレコード実装 shapelessのRecord scala-records Karlsson & Haller '18 record4sのArrayRecord Named Tuples 他の言語での例 PureScript TypeScript Haskell パフォーマンス レコード作成の実行時間

          拡張可能レコードのライブラリrecord4sについてScalaMatsuri 2024で発表しました - 貳佰伍拾陸夜日記
        • 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 対応について話しました / スタッフとして参加しました - たにしきんぐダム
          • じゃあ何すか、COBOL以外では4.8 - 4.7 - 0.1できないってことっすか / ScalaとSpireで安心安全な計算ライフを実現しよう - Lambdaカクテル

            先日こういうツイートが流れてきた。 Q:なぜ金融系では未だにCOBOLが使われるんですか? A:お手元にExcelがありましたら任意のセルに「=4.8-4.7-0.1」って入れてみてください。— 遊撃部長F/S&RWAs (@fstora) 2024年6月6日 Q:なぜ金融系では未だにCOBOLが使われるんですか? A:お手元にExcelがありましたら任意のセルに「=4.8-4.7-0.1」って入れてみてください。 普段我々がゴリゴリ馬車馬のように使っているソフトウェアでよく利用されている浮動小数点型、すなわちfloatやdoubleなどは特定の算術に弱いことが知られている。というかもうこの手の話題はあまりに拡散されてしまったので、なぜかネット民はみんな知っている基礎教養、三毛別羆事件とかデーモンコアみたいな感じになっている。 ちなみにこれはCOBOLかそうではないか、という軸が問題になっ

              じゃあ何すか、COBOL以外では4.8 - 4.7 - 0.1できないってことっすか / ScalaとSpireで安心安全な計算ライフを実現しよう - Lambdaカクテル
            • ScalaMatsuri 2024 感想 - p-kino’s blog

              昨年に引き続きScala Matsuri 2024に参加してきた。 色々あって体調を崩してしまっており長時間の外出に少々不安はあったが、それを押し切って来る価値はあったし、幸い何も起こらずに済んだのでよかった1。 オフライン会場ではレシーバとイヤホンが借りられ、それを使うと同時通訳で発表を聞けたのだが、特にリスニングがさっぱりな私としてはとても体験がよかった。 通訳者の方はもちろん、レシーバをアルコールティッシュで拭いて衛生を確保されていたスタッフの方も大変だっただろうから感謝したい。 特に印象に残ったセッションのうち、ある程度消化できたものについて忘れない内に書いていく。 Ironライブラリで守られた型安全性 (Raphaël Lemaitreさん) スライド: https://scalamatsuri.rlemaitre.com 篩型と呼ばれる、型に述語を記述することで受け付ける値を制

                ScalaMatsuri 2024 感想 - p-kino’s blog
              • Introduction to safe programming with numeric library / 数値ライブラリで始める安全なプログラミング

                Calculating charges is a universal concern in application, accuracy of numeric type is critical. This session introduce practice of typelevel/spire to solve complex calculations where formula, rounding, serialization are applied. 料金計算はアプリケーションにおける普遍的な関心事であり数値型の精度の考慮が重要です。私達のチームでは複雑な料金計算において段階的に計算式・端数処理・シリアライズを適用するケースに対して、typelevel/spireを導入し課題の解決にトライしています。本セッションでは実例を元に数値をより安全に扱う方法を紹介し、最小限のテストでバグの少な

                  Introduction to safe programming with numeric library / 数値ライブラリで始める安全なプログラミング
                • record4s --- Extensible Records for Scala 3, and Domain Modeling with Structural Types

                  In this talk, we learn about the basics of my library called "record4s", which provides type-safe extensible records for Scala 3. It runs on JVM, JS, and Native platforms. You will see how it is implemented efficiently by using Scala 3 macros, and how record types as structural types, which work without reflection in Scala 3, are helpful in domain modeling. record4s --- Scala 3のための拡張可能レコード、そして構造的型

                    record4s --- Extensible Records for Scala 3, and Domain Modeling with Structural Types
                  • 過去のGitHub Actionsのbuild時間を取得して集計してグラフにする - xuwei-k's blog


                    使shellscriptjq !? xuwei-k.hatenablog.com GitHub Actions90 yaml build
                      過去のGitHub Actionsのbuild時間を取得して集計してグラフにする - xuwei-k's blog
                    • Scala3の開発体験がScala2時代に比べてめちゃくちゃ良くなっていた話 - Qiita

                      ドワンゴのN予備校という教育サービスでプログラミング講師をしている @sifue といいます。N高等学校/S高等学校のプログラミング講師もしており、学内のツール開発や運用などもしたりしています。 最近は生成AIが流行ったこともあって、Pythonだったり、UIが必要なものはどうしてもTypeScriptとReactで実装することも多いのですが、久しぶりにScalaを使っての開発をしてみました。 自身は、Scalaでの開発はニコニコ生放送のサービスを開発するときに使っていた他、N予備校内で提供している大規模Webアプリの教材やドワンゴが当初作成していたScalaテキストの作成などにも関わらせてもらいました。 その当時のScalaは2.12であったわけなのですが、その後2.13が出て、さらに今はScala3系になって3.3.1までバージョンが進み、開発環境が変わってすごく使い勝手がよくなったと

                        Scala3の開発体験がScala2時代に比べてめちゃくちゃ良くなっていた話 - Qiita
                      • ハマったポイントたくさんあったけどPlay3.0/Scala3.3へバージョンアップできたよ - エムスリーテックブログ

                        こんにちは。エムスリーエンジニアリンググループでScalaとマミさんが好きな安江です。今回は私が所属している製薬企業向けプラットフォームチームのPlay製プロダクトのPlay/Scalaバージョンアップのお話です。当初Play2.8にバージョンアップしていたのですが、その最中にPlay2.9/Play3.0やScala LTSが出たりもしました。最終的にPlay3.0/Scala3.3にバージョンアップできて本番稼働できたサービスもあるので、そのバージョンアップの経緯をご紹介します。 Play2.8への道のり Play3.0へのバージョンアップ ハマり1:依存ライブラリがPlay2系に依存している ハマり2:ScalikeJDBCの依存関係 ハマり3:サーバーバックエンドの変更 ハマり4:sttpのバックエンドの変更 ハマり5:if式が値を返さない まとめ We are hiring !!

                          ハマったポイントたくさんあったけどPlay3.0/Scala3.3へバージョンアップできたよ - エムスリーテックブログ
                        • ChatGPTをプログラミング言語開発に役立てる - kmizuの日記

                          久し振りの更新です。巷では先日リリースされたばかりのGPT-4oの話題でもちきりですが、私も当日深夜2時のライブストリーミングを見てその後すぐにGPT-4oを試しています。性能に関する雑感としては 全般的にはGPT-4-Turboより頭が良い Claude 3 Opusと比較すると、お堅い & 無難な回答を返す傾向あり ただし、Opusよりハルシネーションは起きにくい印象 画像認識の性能が凄い 辺りでしょうか。特に最後の点は特筆すべきことで、GPT-4-Turboの画像認識よりだいぶ性能が向上したおかげで今までだとやりにくかったことも簡単にできるようになっています。その際たるものが先日バズった GPT-4oの画像認識力と理解力をもってすればいけるやろと思ってやってみたら実際いけた。 ペーパープロトタイピングから最初のHTML書き起こすのにかなり使えるのでは。 つーか指示そのものを画像の中に

                            ChatGPTをプログラミング言語開発に役立てる - kmizuの日記
                          • Tagged Type(Branded Type)を使って飛行機の不時着や人工衛星紛失を防ごう / Scala 3ではTagged Typeを簡単に作れる - Lambdaカクテル


                            Tagged Type TypeScriptBranded TypeAI Tagged Type ID Double
                              Tagged Type(Branded Type)を使って飛行機の不時着や人工衛星紛失を防ごう / Scala 3ではTagged Typeを簡単に作れる - Lambdaカクテル
                            • Direct-style Effects Explained

                              Direct-style Effects Explained By Noel Welsh on 24 Apr 2024 Direct-style effects, also known as algebraic effects and effect handlers, are the next big thing in programming languages. At the same time I see some confusion about direct-style effects. In this post I want to address this confusion by explaining the what, the why, and the how of direct-style effects using a Scala 3 implementation as a

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

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

                                  (初心者向け)Scalaでsbtプロジェクトを作るときの勘所 - Lambdaカクテル
                                • ScalaにGoroutineがやってくる!非同期処理ライブラリOxで遊んだ - Lambdaカクテル


                                  Channel()Ox調  github.com Ox OxsttpSoftwareMillScala github.com OxChannelGoroutineScalaGo (v0.0.25) import ox.* import ox.channels.* import scala.concurrent.durat
                                    ScalaにGoroutineがやってくる!非同期処理ライブラリOxで遊んだ - Lambdaカクテル
                                  • GitHub - gvcgo/version-manager: 🔥🔥🔥 A general version manager for multiple sdks, such as Java, Go, Node.js, Deno, Bun, .Net, Python, PyPy, PHP, Rust, Kotlin, Scala, Groovy, Flutter, Julia, Zig, V, Typst, Android SDKs. A much better choice than vfox, fn

                                    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 - gvcgo/version-manager: 🔥🔥🔥 A general version manager for multiple sdks, such as Java, Go, Node.js, Deno, Bun, .Net, Python, PyPy, PHP, Rust, Kotlin, Scala, Groovy, Flutter, Julia, Zig, V, Typst, Android SDKs. A much better choice than vfox, fn
                                    • ちっちゃなScalaコンテナを作つコツ(6 MiBだぞ) - Lambdaカクテル

                                      おなじみの画像 JavaやScalaといったJVM言語のDockerイメージは、JVMを同梱しなければならない都合で肥大化しがちである。特に何もしなくても、例えば一般的なamazoncorretto:21のイメージサイズは217.7 MBもある。 hub.docker.com これにさらにビルド済みのJARファイルが載ってくるので、結構大きくなってしまうのだ。 そこで、Scalaのコンテナイメージのサイズをなんとか小さくできないかと、考えた。すると、JVMを使ったまま70 MiBくらいに縮めることができた。 github.com コンテナイメージのサイズを小さくするために、何をしたかを書いていく。ちなみに題材としたアプリケーションはちょっとしたHello, Worldをするだけのもので、ライブラリはCatsに依存させた。 JVM使う編 マルチステージビルドを行う Alpineなどの軽量ラン

                                        ちっちゃなScalaコンテナを作つコツ(6 MiBだぞ) - Lambdaカクテル
                                      • Lensを始めとするOpticsがプログラミングをどう変えるか / 複雑なデータのモデリングをサボるには - Lambdaカクテル

                                        仕事でLensを使う機会があった。Lensは複雑で入り組んだデータ構造の読み書きに非常に効果的な手法であるにもかかわらず、関数型プログラマ以外にはあまり知られていないように思える。 そこでこの記事では、Lensとは何なのか、なにが良いのか、具体的にどのようなケースでLensが役立ったか、そしてLensの亜種について紹介する。業務でも使ってます! AIくんが考えるLens 前提条件 Lensとは Lensの使いどころ データをモデリングする場合 (とても つらい) Lensを使う場合: Lensはアクセスパスである Lensと愉快な仲間たち Lensの合成 -- andThenでひっつけよう Lens Law Monocleの便利機能 Lensの自動生成でサボる Focusでもっとサボる Lensがもたらしたもの まとめ あわせて読みたい 前提条件 この記事ではLensを紹介する言語としてS

                                          Lensを始めとするOpticsがプログラミングをどう変えるか / 複雑なデータのモデリングをサボるには - Lambdaカクテル
                                        • 株式会社ドワンゴ会場提供でScalaわいわい勉強会 #2を開催しました #scala_waiwai - Scalaわいわいブログ

                                          Scalaわいわいランドは2024年2月27日にScalaわいわい勉強会2を開催しました。 scala-tokyo.connpass.com ハッシュタグは前回に引き続いて #scala_waiwai となっております。現場の様子はTwitter(X)でご確認いただけます。 発表資料紹介 今回は発表3本、LT3本の構成となりました。発表順に紹介します。 @nomadblacky: ReckonerのScalaプロジェクトにおけるオブザーバビリティの取り組み speakerdeck.com 一番最初の発表はオブザーバビリティの話。最近は OpenTelemetry が広がりを見せており、Scalaでもotel4sといったライブラリが出ていたり、そもそもOpenTelemetryのリファレンス実装がJavaで書かれていたりと、結構Scalaユーザにとっては嬉しい環境が整っているんですよね。Op

                                            株式会社ドワンゴ会場提供でScalaわいわい勉強会 #2を開催しました #scala_waiwai - Scalaわいわいブログ
                                          • Scala CLIのDockerイメージを使うと本当に簡単にシングルバイナリを生成できて便利 - Lambdaカクテル

                                            Scala CLIのおもしろい使い方を見付けたのでメモ。これまでと比べてはるかにScalaのちょっとしたスクリプトのシングルバイナリを生成できるようになるので、本当にGolangみたいに簡単にちょっとしたツールを作れるようになった。 scala-cli package Scala Nativeはシングルバイナリを生成できる Dockerイメージを利用すると便利 用途 クロスコンパイルはまだできなそう まとめ 過去の記事 scala-cli package Scala CLIにはpackageというサブコマンドがあり、これを利用するとScala ScriptをそのままUber JAR(直接実行できるJARファイル)にビルドできるのでなかなか便利だ。 しかもなんと--nativeオプションを使うことでバックエンドがScala Nativeに切り替わり、ネイティブバイナリを生成できるようになる。

                                              Scala CLIのDockerイメージを使うと本当に簡単にシングルバイナリを生成できて便利 - Lambdaカクテル
                                            • 本当の初心者が「Scalaわいわい勉強会」に参加するまで - PCで苔を育てる人

                                              大学でC言語の授業を終えた私の耳に、どこからともなく聞こえてくる。 「どうやら、関数型言語というのがすごいらしい」 同様の現象は世界各地で確認されている。 「オブジェクト指向の次は関数型だ」 「なんでも、デバッグと並列化がしやすいらしい」 そんな又聞きに又聞きを重ねた霞の正体を確かめるべく、人々はその魅惑のパラダイムシフトの門を叩いた。 かく言う私もその1人であり、大学の図書館にある関数型言語のエリアを目指して階段を上がった。 当時の私は自信に満ちていた。授業でC言語を学んだ後は、C++はもちろん、C#やJavaScript、Pythonなどのプログラミング言語を試し、時にはFortranなどという古代語にも手を染めた。「完全に理解した」などと思い上がることはなかったが、どの言語も触り始めてからまとまったプログラムを作成するまでにそれほど時間はかからなかった。結局のところ、それらは最初に学

                                                本当の初心者が「Scalaわいわい勉強会」に参加するまで - PCで苔を育てる人
                                              • JSONの差分を取ってJSON Patchを得るにはdiffsonがおすすめ - Lambdaカクテル

                                                こういうツイートを見た。 Scala (or Java) で、jsonのdiffをpatchファイルみたいな感じでわかりやすいテキストで出力してくれるライブラリないかなあ。そしてjacksonに依存してないといいな— Arthur (@Arthur1__) 2024年1月13日 現代のプログラミングではJSONの差分を取ったり、逆にパッチを当てるということがよくある。可能ならそれがPretty Printできると良い。 JSONの差分をScalaで取る方法についていくつか調べてみたのでメモ。 JSONの差分をどう表現する? JSON Patch diffson diffsonでJSON Patchを生成する diffsonでJSON Patchを適用する diffsonでJSON Merge Patchを生成する diffsonでJSON Merge Patchを適用する JSON Pat

                                                  JSONの差分を取ってJSON Patchを得るにはdiffsonがおすすめ - Lambdaカクテル
                                                • 2023年買ったもの(技術書とか) - Magnolia Tech

                                                  2023年のお買い物、技術書編です。 技術書以外はこちら blog.magnolia.tech とりあえずノータイムで買っちゃえ!損は無いよ!という3冊 他に、類似の本がないか、有ってもこっち買っておけばよくね?という3冊 なっとく!関数型プログラミング なっとく!関数型プログラミング 作者:Michał Płachta翔泳社Amazon Scalaをベースとした関数型プログラミングの学習本。オブジェクト指向言語であり、関数型プログラミング言語であるScalaの特性を生かして、命令型から宣言型のコードの書き方への変え方を学んでいくスタイル。 前半の凄まじい丁寧な学習のステップと、後半の「ここまで一気にやらなくても良くない?」の落差もすごいけど、ページ数の厚さに躊躇せず、前半1/3くらいを時間をかけて丁寧に学習するくらいが良いと思います。 周りに良い先生が居れば別ですが、そうでなければこの本

                                                    2023年買ったもの(技術書とか) - Magnolia Tech
                                                  • Playframework 3.0.0にアップデートしてみた - Assured Tech Blog


                                                     Scala Advent Calendar 2023 201220 AssuredScalaPlayframework3.0.02.8.x3.0.0   PekkoDI(Dependency Injection) ExecutionContext Docker   Playframework2.9.03.0.0
                                                      Playframework 3.0.0にアップデートしてみた - Assured Tech Blog
                                                    • 平均年収の高い「プログラミング言語」 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位は?
                                                      • ScalaMatsuri 2024開催決定!CFPも募集開始! #ScalaMatsuri - ScalaMatsuri運営ブログ

                                                        全国のScalaを愛する皆様、お久しぶりです。 毎年大盛況を収めるScalaMatsuriを、2024年も開催することが決定しました!また、同時に本イベントにおけるセッションも同時に募集を開始します! ScalaMatsuri 2024の開催概要 ScalaMatsuri 2024のセッション募集 セッション応募フォーム ScalaMatsuri 2024 で聞きたいセッションのカテゴリーのアンケート結果について オフライン開催のScalaMaturi 2024 を一緒に再始動させましょう 〆 ScalaMatsuri 2024の開催概要 ScalaMatsuriはアジア最大規模のScalaをテーマとした技術カンファレンスであり、開催国の日本のみならず、世界中からスピーカーと参加者が集まるイベントです。 Scalaに関わる情報共有、知識共有、新しい繋がりの構築など、幅広い場を提供します。前

                                                          ScalaMatsuri 2024開催決定!CFPも募集開始! #ScalaMatsuri - ScalaMatsuri運営ブログ
                                                        • 関数型プログラミング: map結果を引数とのペアにしたいときはStateが便利だったりする(StateTもあるよ) - Lambdaカクテル

                                                          この記事では、Scala 3と関数型ライブラリであるCatsを時折使いつつ、Stateモナドを利用することでmap結果にうるおいを与えられるという話題を紹介します。 よくある処理: mapしてからペアにする まあまあよくある: メソッドはたまに値返さないことがある まあまあよくある: メソッドが非同期の場合もある Stateモナド 通常の関数をStateに持ち上げる Stateでmapする StateT登場!! 一般化する まとめ プログラミング言語で最も頻繁に使われるデータ構造といえば、タプル、とりわけ2つの要素を持つタプルであるペアかもしれない。 【タプルとは?】 タプルとは、いくつかの型を並べて組にし、1つの型として扱えるようにしたものです。例えば、StringとIntをくっつけた(String, Int)というタプルを考えることができます。 タプルを構成する型の数によって、3-タプ

                                                            関数型プログラミング: map結果を引数とのペアにしたいときはStateが便利だったりする(StateTもあるよ) - Lambdaカクテル
                                                          • Scala 3でデータ指向プログラミングは可能か - かとじゅんの技術日誌

                                                            Scala 3におけるデータ指向プログラミング(以下DOP)について深掘りする。久々にScalaの話題を取り上げるが、これはScala Advent Calendar 2023の14日目の内容でもある。 早速だけど、DOPの基本原則は意外とシンプルだ。 コード(動作)をデータから切り離す データを汎用的なデータ構造で表現する データをイミュータブル(不変)として扱う データスキーマをデータ表現から切り離す イミュータブルなデータは採用することは多いと思うが、これをそのまま実践している人はどのくらいいるだろうか。Scalaではクラス中心の関数型プログラミングが主流だと思うし、私もそうしている。 DOPの詳細は下記の本(以下DOP本)を参照してほしい。 データ指向プログラミング 作者:Yehonathan Sharvit翔泳社Amazon ちなみに留意すべき点がある。DOP本とJavaのPro

                                                              Scala 3でデータ指向プログラミングは可能か - かとじゅんの技術日誌
                                                            • Scala 3のマクロTips 100連発 - 貳佰伍拾陸夜日記

                                                              この記事はScala Advent Calendar 2023の12日目だ! Scala 3のマクロを書く上で役に立つ, メタれたTipsたちを紹介するぜ! 勢いに任せて書いていくからサンプルコードがちゃんと動かなかったらごめんな. 一応, Scala 3.3.1を想定しているぞ. マクロ 1. メソッドをマクロとして定義する 2. マクロの本体を実装する 3. マクロ実装の記法の意味を知る 4. マクロで生成されるコードの内容を確認する 5. 引数の式を評価せずに使う 6. 返り値の型をマクロの実行結果によって決める 7. マクロの返り値の型を制限する 8. マクロの返り値の型を書かない 9. マクロで計算された型をテストする 10. マクロで計算された型をScalaTestでテストする 式 11. 定数式の値を得る 12. 定数式でなければコンパイルエラーにする 13. 定数値の式を作

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

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

                                                                  あらゆるプログラミング言語の最先端を行くScala 3のマクロ - 貳佰伍拾陸夜日記
                                                                • AWS Lambda FunctionをScala.jsで書いて爆速Scalaを満喫しよう - Lambdaカクテル


                                                                  Scala Advent Calendar 20235 qiita.com Scala Scala使ScalaJavaScriptAWS Lambda !!! Scala Scala()  Scala.jsLambda Scala.js   Scala.jsLambda  Lambda   Scala.js
                                                                    AWS Lambda FunctionをScala.jsで書いて爆速Scalaを満喫しよう - Lambdaカクテル
                                                                  • Scalaはもうだめなのか?…というかJVM言語がもうだめじゃん?|sugitani

                                                                    AndroidのためのJava/Kotlinはスコープ外とします まず断っておくと、俺はScalaが好きだ。 自分が作ったScalaプロダクトは二個現存している。うち一つはまだまだ自分が開発している。というか今は会社を作って1人でプロダクトを作っている身なのだが、それもScala3+ZIO2でゴリゴリ書いている。 でも残念、もうScalaというかJVM言語がオススメできません。TypeScriptかGoかRustをオススメします。 どういうこと?まずこの記事を見ていただくのが一番分かりやすい。 https://aws.amazon.com/jp/builders-flash/202310/java-serverless-saas-backend/?awsf.filter-name=*all 素晴らしいエントリーだ。読みに行かないせっかちな方のために概要を紹介する JavaプロダクトをAWS

                                                                      Scalaはもうだめなのか?…というかJVM言語がもうだめじゃん?|sugitani
                                                                    • 『データ指向プログラミング』読んだ / OOP以前とDOPとの対比と差分などについて - Lambdaカクテル

                                                                      先々月あたりに邦訳が出た『データ指向プログラミング』を読んだ。めちゃくちゃざっくり言うとオブジェクト指向における「データと振舞いの一体化」というドグマを手放させるもので、めちゃくちゃざっくり見るとC言語的な構造化プログラミングの世界に回帰するようにも見えることから、世間的には色々な評価があるらしい。 イミュータビリティが良い、みたいな話は重々承知なので適宜飛ばしながら読んだ。また、lodashまわりの話は単なるライブラリ紹介であり、特筆することがないので飛ばした。 こういう感じで言及されている zenn.dev slides.com 自分なりに読んで思ったことをまとめる。面白い本だったし、自分の思想にも近しいものがある。僕は普段ScalaやTSを書いているので、その観点からの感想が多いです。OOPの歴史に詳しいわけではないので、不足があったらすみません。 OOP以前の世界との差異 イミュー

                                                                        『データ指向プログラミング』読んだ / OOP以前とDOPとの対比と差分などについて - Lambdaカクテル
                                                                      • Java/Scalaの最新版Webアプリケーションフレームワーク「Play Framework 3.0」正式リリース。Akkaに代わりApache Pekkoを採用

                                                                        Java/Scalaの最新版Webアプリケーションフレームワーク「Play Framework 3.0」正式リリース。Akkaに代わりApache Pekkoを採用 Play Framework開発チームは、JavaとScalaに対応したWebアプリケーションフレームワークの最新版となる「Play Framework 3.0」の正式リリースを発表しました。 Houston, Play developers here. The eagle has landed! Play 2.9 (https://t.co/ars6Le2VUw) and 3.0 (https://t.co/Eus82EOS9c) are available now! To everyone out there helping and sponsoring: You are the best! THANK YOU SO MU

                                                                          Java/Scalaの最新版Webアプリケーションフレームワーク「Play Framework 3.0」正式リリース。Akkaに代わりApache Pekkoを採用
                                                                        • OpenAIのAudio Transcription APIで遊んだ - Lambdaカクテル


                                                                          OpenAIAPI OpenAIAPIAPI使 openai.itshinan.jp API使(wavflac使)   Scala    AP
                                                                            OpenAIのAudio Transcription APIで遊んだ - Lambdaカクテル
                                                                          • Release 📣 Play 3.0.0 · playframework/playframework

                                                                            The Play Team is thrilled to announce the release of Play 3.0.0! 🎉 This release brings highly anticipated new features, including support for the latest Java LTS versions and Scala 3. It continues our commitment to making Play more modular, flexible, and secure. Play 3.0, together with Play 2.9, represents a significant milestone as they are the first major releases in almost four years and the f

                                                                              Release 📣 Play 3.0.0 · playframework/playframework
                                                                            • 株式会社はてな後援、Scalaわいわい勉強会を開催しました! #scala_waiwai - Scalaわいわいブログ

                                                                              さる2023年10月13日にプログラミング言語Scalaの勉強会『Scalaわいわい勉強会』を開催しました。この記事では会場の様子や勉強会の理念、その他もろもろを紹介します(この記事はid:Windymeltとid:tanishiking24による共同執筆です)! わいわいしている様子(活況でした) Scala Tokyo meetup is back! 🤩 26 engineers gathered for 2 presentations and 4 LTs. The meetup was friendly and lively, and everyone looked forward to the next one! Thanks to @hatenatech for providing the nice venue and food🍣🍱 #Scala #scala_waiwai

                                                                                株式会社はてな後援、Scalaわいわい勉強会を開催しました! #scala_waiwai - Scalaわいわいブログ
                                                                              • ペーパーバック版の『Functional Programming in Scala, Second Edition』を買った - Magnolia Tech

                                                                                既にセールの時に電子書籍版で買っていた『Functional Programming in Scala, Second Edition』、ペーパーバック版の方も追加で買った。 Functional Programming in Scala, Second Edition (English Edition) 作者:Pilquist, Michael,Chiusano , Paul,Bjarnasson, RúnarManningAmazon ソフトウェア関係の技術書がこの先、どのくらい需要があるのか、タイムリーに改版されるのか、更には日本で翻訳版が出版されるのか......市場のことはよく分からないけど、「この本はずっと手元に置いておく価値が有る」と思ったものはなるべく紙の書籍で手元に置くようにしている。 電子書籍だと、すっかりその存在を忘れてしまって、最後まで読まなくなってしまうのと、情報

                                                                                  ペーパーバック版の『Functional Programming in Scala, Second Edition』を買った - Magnolia Tech
                                                                                • Scalaわいわい勉強会 参加した - ふんわり放牧


                                                                                  scala-tokyo.connpass.com  Scala  Scala10github.com 1JVM id:Windymelt  Scala*1   OKScala2023 - Lambda 
                                                                                    Scalaわいわい勉強会 参加した - ふんわり放牧