タグ

Scalaに関するpaulowniaのブックマーク (28)

  • 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を使っているプロジェクトにメンバーがジョインする時に勧めている資料まとめ | DevelopersIO

    はじめに 業務のメインプロジェクトではScalaを使うことが多く、チームに新しく加わったメンバーのオンボーディングではScala言語自体やライブラリ(主にtypelevel系)の資料を紹介する機会が少なくありません。毎回リンクのリストを作り、コメントを添えて共有するのですが、回数も増えてきたので記事にしてみることにしました。 Scala言語の入門 ScalaText 『Scala スケーラブルプログラミング』(第三版) 『Scala関数型デザイン&プログラミング ―Scalazコントリビューターによる関数型徹底ガイド』 1つ目のScalaTextは有名なドワンゴさんの研修資料が日Scalaコミュニティに寄贈にされたものです。2つ目以降はScalaTextの冒頭でも言及がありますが、入門としては鉄板かなと思います。他のプログラミング言語を修得されているのであればScalaTextを一通り

    Scalaを使っているプロジェクトにメンバーがジョインする時に勧めている資料まとめ | DevelopersIO
  • Effective Scala

    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, パターンマ

    Effective Scala
  • ScalikeJDBC

    ScalikeJDBC Just Write SQL And Get Things Done 💪 This library seamlessly wraps JDBC APIs, offering intuitive and highly flexible functionalities. With QueryDSL, your code becomes inherently type-safe and reusable. ScalikeJDBC is not just practical; it’s production-ready. Utilize this library confidently in your real-world projects. Working on JDBC Layer Whether you prefer it or not, JDBC stands a

  • scalikejdbc-cookbook/ja at master · scalikejdbc/scalikejdbc-cookbook

    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

    scalikejdbc-cookbook/ja at master · scalikejdbc/scalikejdbc-cookbook
  • sbt Reference Manual — sbt Reference Manual

    sbt Reference Manual 始める sbt sbt のインストール macOS への sbt のインストールWindows への sbt のインストールLinux への sbt のインストール 例題でみる sbtディレクトリ構造実行IDE との統合ビルド定義マルチプロジェクト・ビルドタスク・グラフスコープ値の追加スコープ委譲 (.value の照会)ライブラリ依存性プラグインの使用カスタムセッティングとタスクビルドの整理まとめ付録: bare .sbt ビルド定義 インフォメーション 変更点 sbt 1.0.0 各論 プラグインとベストプラクティス 一般的なベストプラクティスsbt プラグインをテストする How to ソースファイル/リソースファイルの生成逐次実行 Def.sequential を用いて逐次タスクを定義するDef.taskDyn を用いて動的タスクを定義する

  • Effective Scala

    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, パターンマッチ

  • scalafmtでScalaコードを整える | DevelopersIO

    体と心はサウナで、コードはフォーマッタで整えましょうということで、scalafmtについて簡単に紹介します。 はじめに 最近は毎週のドラマ「サ道」 が楽しみな佐々木です。 サウナで整ったらコードも整えたいということで最近使い始めたscalafmtについて簡単に紹介します。 scalafmtとは 他の言語にもあるようなソースコードのフォーマッタです。 公式サイトには次の2つのフレーズが掲げられています。 Focus on what matters Spend more time discussing important issues in code review and less time on code style. Scalafmt formats code so that it looks consistent between people on your team. Integrat

    scalafmtでScalaコードを整える | DevelopersIO
  • Implicit Parameters | Scala Documentation

    A method can have contextual parameters, also called implicit parameters, or more concisely implicits. Parameter lists starting with the keyword using (or implicit in Scala 2) mark contextual parameters. Unless the call site explicitly provides arguments for those parameters, Scala will look for implicitly available given (or implicit in Scala 2) values of the correct type. If it can find appropri

  • Implicit 入門

    class: center, middle # Implicit 入門 Scala Matsuri 2018 03/16 --- 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-code" height="120" style="margin-left

  • ターミナルのsbtで起動したプログラムをIntelliJのデバッガでデバッグする - $shibayu36->blog;

    最終的に結構簡単な設定で出来たのだけど、いろんな情報に右往左往させられてしまったので、自分用にメモをとっておく。 やりたいこと Scalaで開発する時、基的にターミナルでsbtを起動して、runとかtestとかを実行している。その時、挙動を動かしながら確認するために、ステップ実行を行いたい時がある。 ステップ実行しながらデバッグする時、IntelliJのデバッガが便利なのでそれを使いたい。 作戦 ターミナルで、sbtをJVMのデバッグオプション付きで立ち上げて、そのプロセスにIntelliJのデバッガでアタッチするという方法を取る。 IntelliJの標準のScala開発環境で、「Enable debbuging for SBT shell」という設定もあるのだけど、これがなかなかうまく動かなかった。そこでこちらのやり方は諦めて、上記した方法を取ることにした。 やり方 sbtをJVMのデ

    ターミナルのsbtで起動したプログラムをIntelliJのデバッガでデバッグする - $shibayu36->blog;
  • Play vs Rails

    Play Framework and Ruby on Rails are web application frameworks that help developers build web applications. Both frameworks provide tools and libraries for common tasks like routing, database access, templates and more. Some key similarities include using MVC patterns, supporting SQL/NoSQL databases via libraries, and including tools for unit testing and deployment. Some differences are Play uses

    Play vs Rails
  • Charming Python: Functional programming in Python, Part 3

    IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.

    Charming Python: Functional programming in Python, Part 3
  • Java使いをScalaに引き込むサンプル集 | mwSoft

    前書き Scalaという言語をご存知ですか? Javaと同じくコンパイルされるとclassファイルになり、実行時はJVM上で動作する、オブジェクト指向+関数型のプログラミング言語です。 Scalaを開発したのはJavaのgenericsの設計を手がけたり、javacの開発をしていた経歴も持つMartin Odersky氏。 Scalaは後発の言語ということもあって、Javaを書いている時に感じる冗長さに対する様々な解が用意されています。 記事では、ScalaJavaのコードを比較しながら、JavaユーザがScalaに移った際に得られるメリットを提示していきます。 尚、序盤のサンプルコードはJavaユーザに伝わりやすいように、returnを明記したり、メソッドは必ず{ }で囲むなど、極力Javaっぽい記述をしています。 だいたいJavaと同じような書き方ができます ScalaJava

  • Play! framework 概要 Tipsもあるよ! - ikeike443のブログ

    Play! Advent Calendar 2011 一日目ということで、軽めの話をします。 おさらい:Play!とは Play!はJavaで軽量に素早く開発できるフレームワークです。 Play!についてよく知らない人が圧倒的多数だと思いますので、ものすごく簡単に説明しますね。 Play!はJavaEEの仕様を捨ててWebとフォーリンラブすることに決めたフレームワークなので、Servlet特有の変なセッション仕様なんてないですし、えっと、セッションレプリケーションってなんですか? ってなノリのフレームワークです。 もちろん、warにパッケージングする必要もないです。 EclipseのECJを使って動的コンパイルを行うことで、ほんとうの意味でのホットデプロイを実現しています。というか、デプロイしないんですけど。。まあ、ほとんどスクリプト言語のようにJavaを使えるわけです。再起動無しで変更が

    Play! framework 概要 Tipsもあるよ! - ikeike443のブログ
    paulownia
    paulownia 2011/12/01
    名前は知ってたけど〜、Scala版の2.0リリースされたら使ってみるかな〜
  • 『Scalaで学ぶ関数脳入門』――オブジェクト指向プログラマが“関数脳”を手に入れるコツ:晴読雨読@エンジニアライフ:エンジニアライフ

    オブジェクト指向プログラマが次に読む Scalaで学ぶ関数脳入門 テクノロジックアート(著) 長瀬嘉秀、町田修一(監修) 技術評論社 2010年11月 ISBN-10: 4774144363 ISBN-13: 978-4774144368 3339円(税込) ■関数型言語への注目が高まっている 近年、関数型言語への注目が高まっているように感じる。関数型言語自体の歴史は古く、1958年にMITのジョン・マッカーシー氏によって考案されたLISPが最初期の関数型言語だ。LISPは、FORTRANに次いで2番目に古い高級言語でもある。 いくらか私の主観を交えて言えば、プログラミング言語の主流は、長らくJavaやC#などの「オブジェクト指向言語」だった。CPUの進化の方向性が「高速化」から「並列化」へとシフトしつつある中で、プログラミング言語においても、いかに「並列処理」や「並行処理」を容易に実装

    『Scalaで学ぶ関数脳入門』――オブジェクト指向プログラマが“関数脳”を手に入れるコツ:晴読雨読@エンジニアライフ:エンジニアライフ
  • Scala的な考え方 - Scalaがとっつきにくいと思っている人へ - ( ꒪⌓꒪) ゆるよろ日記

    Javaな人から見ると、「Scalaって難しい」ってイメージがありますね。俺も最初はそう思ってました。今もですけど。 で、考えてみたんですが、何が難しいって考え方・イディオムになじみがないのが原因かと思ったんです。 ここでは、俺が今までScalaをやってきて得た考え方を紹介します。「Scalaをちょっとやってみたんだけど、とっつきにくくて…」と思われている方は、ぜひご一読ください。 参考資料: Scala入門 - Scalaで書きはじめたJava使い向け - Scala勉強会@東北 Dropbox - 404 神は言われた。「リストあれ。」 Lisperは、リストをどう作るかをまず考えるらしいです。適切なリストが出来たら、プログラムはもうできたも同然だと。同じ考え方は、Scalaでも通用すると思います。 大まかに、こんな流れで考えてます。(リストは最初から与えられることもあるでしょう) 「

    Scala的な考え方 - Scalaがとっつきにくいと思っている人へ - ( ꒪⌓꒪) ゆるよろ日記
  • 第19回 アクターで楽々並行プログラミング(1)

    有限会社ITプランニング勤務のプログラマーScala、OCaml、F#などの静的型付け関数型言語を利用したシステム開発業務に従事。定理証明支援器Coqやモデル発見器Alloyといった形式手法ツールの業務への応用にも興味を持っている。 Scalaの標準ライブラリは、Java程大きくありませんが、パーサーコンビネーターを筆頭に小粒でもぴりりと辛い逸品が揃っています。この記事でご紹介する「アクター」もその一つ、マルチスレッドのスパゲッティをおいしいペペロンチーノに変えてくれる、魔法のスパイスです。new Threadとしたくなったら、一歩立ち止まってscala.actorsパッケージの扉を叩いてみてください。 なお、稿では2回にわたって、アクターとは何なのか、アクターを使うとどのような事が可能なのかをご紹介する予定です。並行処理に興味があったり、なんらかの形で並行処理に触れたりしたことがあれ

    第19回 アクターで楽々並行プログラミング(1)
  • Twitter、分散フレームワーク「Gizzard」を公開 | gihyo.jp

    2010年4月6日、Twitterは独自に開発した分散フレームワーク「Gizzard」をGitHubにオープンソースとして公開しました。Gizzardは「シャーディング」と呼ばれる、1台に格納するとパフォーマンスに影響を及ぼす大容量なデータベースを複数台に分割することで解決を図る手法をサポートするフレームワークです(図1⁠)⁠。TwitterのバックエンドにScalaが使われていることが以前話題となりましたが、このGizzardもScalaで書かれています。 図1 Gizzardのシステム構成モデル 出典:http://github.com/twitter/gizzard Gizzardはミドルウェアとして動作し、RailsPHPなどで動くWebフロントエンドからのリクエストを受け取り、My-SQLやRedisのようなインメモリDB、Luceneなど各種データストアへ渡します。Twitt

    Twitter、分散フレームワーク「Gizzard」を公開 | gihyo.jp
  • Scala開眼

    1階受付:インストール等 / 1階案内版:コマンド / 2階:書き方 / 3階:文と式 / 4階:関数 / 5階:オブジェクト指向 / 6階:型 / 7階:注釈等 / 屋上:言語仕様要約 / 雲:scalaパッケージ概観 / 青空:その他の付属パッケージ概観 なお、以上の解説はJavaの文法とコマンドや標準ライブラリ等を一応知っていることを前提(現行のScalaはなおJavaライブラリへの依存度が高くScalaだけで完結できる状態では無い。なお、Scalaのコンパイラ自体はJava1.4用のコードも吐けるが、標準ライブラリが多く1.5を前提としている)とし、その違いだけをとりあえずは書き留めるものである。もっぱら文法やライブラリ参照用であることを目指しているので、例や特長等は次のリンクを参照されたい(なおただし、原著者たちの配慮にもかかわらず、それらの例は関数型言語に関する事前の概要的把握