並び順

ブックマーク数

期間指定

  • から
  • まで

361 - 400 件 / 4337件

新着順 人気順

scalaの検索結果361 - 400 件 / 4337件

  • Google、脆弱性検出ツール「OSS-Fuzz」のJavaVM対応を発表。Java/Kotlin/Scalaなどの脆弱性を検出可能に

    Google、脆弱性検出ツール「OSS-Fuzz」のJavaVM対応を発表。Java/Kotlin/Scalaなどの脆弱性を検出可能に Googleは、脆弱性検出ツールとしてオープンソースで公開している「OSS-Fuzz」をJavaVM言語にも対応させたことを明らかにしました。 OSS-FuzzはGoogleが2016年にオープンソースとして公開しました。 参考:Google、脆弱性検出のためのファジング(Fuzzing)を機械的に実行する「OSS-Fuzz」、ベータ公開 OSS-Fuzzは、ファジング(Fuzzing)と呼ばれる、「検査対象のソフトウェアに『ファズ(英名:fuzz)』と呼ばれる問題を引き起こしそうなデータを大量に送り込み、その応答や挙動を監視することで脆弱性を検出する検査手法」を実行してくれるツールです。 今回、ドイツのCode Intelligence社のファジングツー

      Google、脆弱性検出ツール「OSS-Fuzz」のJavaVM対応を発表。Java/Kotlin/Scalaなどの脆弱性を検出可能に
    • 技術ごとのスペシャリスト制度に関して - Adwaysエンジニアブログ

      どうも、大曲です。 リモートワークにも慣れて来ました。 今回は技術に特化した人材のための「技術ごとのスペシャリスト制度」の背景や責任部分を紹介します。 初めはコントリビューターという名前にしていたのですが、浸透しなかったりしてこの名前になりました。 ※アドウェイズ全体の制度ではありません。あくまで自分が管轄している組織の話です。 この制度が出来るまでのタイムライン 最初は自分一人で動きや成果を検証しつつ作っていきました。 徐々に関わる人を増やしていき最終的に2020/04に制度として確立させました。 そのため、この制度にたどり着くまで1年以上かかりました。 この制度に関わった人の人数の変化。 各技術ごとの取り組みの動き。 現在はScala、Vue.js(TypeScriptも含む)、Ansibleの3つの言語でこの制度に基づいて改善などを行なっています。 目的 特定の技術(主に言語)に特化

        技術ごとのスペシャリスト制度に関して - Adwaysエンジニアブログ
      • オブザーバビリティの成熟度を表す4つのステップについて解説

        Observability(可観測性)に関するオンラインイベント「Observability Japan Online」の第1回が2020年3月17日に開催されました。最初のセッション「オブザーバビリティ成熟モデルについて。」では、New RelicでSenior Customer Success Managerを務めるkatzchang氏が、オブザーバビリティの成熟度合を4段階で表したモデルについて説明。オブザーバビリティとモニタリングの違いや、オブザーバビリティが成熟することによって何ができるようになるのかについて、段階を追って解説しました。 Observability成熟モデルについて katzchang氏(以下、katzchang):では、話をしていきます。今日は、New RelicでObservability成熟モデルというのがあるので、その話をします。New Relicのことは

          オブザーバビリティの成熟度を表す4つのステップについて解説
        • Scalaプログラマが圏論を学ぶためのオススメ文献 - 3選 - Qiita

          圏論は数学の一分野です。これを学ぶのには「数学書」を手に取るのが王道なのですが、残念ながらこれは大部分のプログラマに理解できる言葉では書かれていません。「定義・命題・証明」の積み重ねで書かれています1。ここで大半のScalaプログラマは苦い顔をすると思います。もう少し分かりやすいScalaプログラマ向けの圏論入門がないかと探してみると「Haskell」向けの記事が大量に引っかかるでしょう。ここで多くのScalaプログラマは心を折られてしまいます。「圏論」はまだScalaプログラマには早すぎたんだと・・・ 本記事ではそんなあなたに贈る3つの文献をご紹介したいと思います。 (本記事は自分のブログからの転載記事です。) はじめに 本記事は圏論に興味があるScalaプログラマを対象にしています。特にプログラマにとって実用的な圏論の知識をScalaを通して身につけたい方にオススメします。 プログラマ

            Scalaプログラマが圏論を学ぶためのオススメ文献 - 3選 - Qiita
          • Javaの記法を初心者向けに大幅改良、「魅力を高めて若い世代の心をつかむ」

            Javaは、企業のITシステムの開発になくてはならないプログラミング言語としての地位を確立している。一方で、PythonやJavaScriptといった若い世代に人気がある言語と比較すると、煩雑な記法が多く堅苦しいイメージは否めない。 こうしたイメージを一新してJavaの生産性を高める試みが「Project Amber(プロジェクト・アンバー)」だ。同プロジェクトではこれまで、Javaプログラムの可読性を高めるために数々の記法の改良を行ってきた。 その成果の1つとして、2023年秋に公開予定の「JDK(Java Development Kit) 21」に導入されるのが、Javaプログラムの実行の起点である「mainメソッド」の大幅な簡略化だ。Javaの新機能は「JEP(JDK拡張提案)」として管理されており、mainメソッドの簡略化は「JEP 445」で規定されている。 Javaの開発にかか

              Javaの記法を初心者向けに大幅改良、「魅力を高めて若い世代の心をつかむ」
            • オープンソース脆弱性管理ツールyamoryを使ってみた!

              オープンソース脆弱性管理ツールyamoryを使ってみた!投稿者: adachin 投稿日: 2019/09/012019/09/01 ビズリーチさんがセキュリティ事業を始めたということで、新サービスである、オープンソース脆弱性管理ツール「yamory(ヤモリー)」がリリースされました。実際に3年前くらいにRuby/Railsで作った掲示板アプリ(メンテしてない)にどのくらい脆弱性があるのか、Vuls推進している私にとってセキュリティツールは興味があるので試してみましたが、これは笑えないレベル….というわけで簡単にブログします。 ■オープンソース脆弱性管理ツール「yamory」とは https://www.bizreach.co.jp/pressroom/pressrelease/2019/0827.html https://yamory.io/ GitHubで連携して、利用している開発言語

                オープンソース脆弱性管理ツールyamoryを使ってみた!
              • JavaScript/WebAssemblyをCDNエッジで実行するCloudflare Workersが、Python、Scala、Kotlin、Dart、Reasonへの対応を発表

                JavaScript/WebAssemblyをCDNエッジで実行するCloudflare Workersが、Python、Scala、Kotlin、Dart、Reasonへの対応を発表 Cloudflareは、JavaScript/WebAssemblyをCDNエッジで実行するサーバレス基盤「Cloudflare Workers」が、Python、Scala、Kotlin、Dart、Reasonの各言語に対応したことを発表しました。 #ServerlessWeek continues at Cloudflare. Today, we’re excited to announce that you can also build applications on Cloudflare Workers using Python, Scala, Kotlin, Reason and Dart htt

                  JavaScript/WebAssemblyをCDNエッジで実行するCloudflare Workersが、Python、Scala、Kotlin、Dart、Reasonへの対応を発表
                • Best Practices for Working with Configuration in Python Applications - Preferred Networks Research & Development

                  Home Blog Best Practices for Working with Configuration in Python Applications Most computer applications can be configured to behave a certain way, be it via command line flags, environment variables, or configuration files. For you as a software developer, dealing with configuration comes with challenges such as parsing untrusted input, validating it, and accessing it on all layers of your progr

                    Best Practices for Working with Configuration in Python Applications - Preferred Networks Research & Development
                  • AWS版「GitHub Copilot」な「Amazon CodeWhisperer」が正式版に 個人ユーザーは無料、VSCodeに対応

                    参考:AWSも、プログラミングを機械学習で支援する「Amazon CodeWhisperer」プレビュー公開。コメントを書くとコードを提案 コメントや書きかけのコードからコードを自動生成 Amazon CodeWhispererは、オープンソースリポジトリ、Amazon内部リポジトリ、APIドキュメント、フォーラムなどから収集した数十億行のコードを基にした機械学習から、プログラマが書き始めたコードの続きや、コメントの内容からコードを提案してくれるサービスです。 コードを生成してくれる代表的なAIサービスであるGitHub Copilotの、AWS版と言ってよいでしょう。 下記は、1行目と2行目に自然言語で書かれたコメントから、3行目以降のコードが自動生成された様子です。 特にAmazon内部のリポジトリを基に学習されているため、AWSのサービスを活用するコードの生成は得意とされています。例

                      AWS版「GitHub Copilot」な「Amazon CodeWhisperer」が正式版に 個人ユーザーは無料、VSCodeに対応
                    • 機械学習をコモディティ化する AutoML ツールの評価 - RAKUS Developers Blog | ラクス エンジニアブログ

                      こんにちは、開発エンジニアの amdaba_sk(ペンネーム未定)です。 昨年度まで、ラクスの開発部ではこれまで社内で利用していなかった技術要素を自社の開発に適合するか検証し、ビジネス要求に対して迅速に応えられるようにそなえる 「開(か)発の未(み)来に先(せん)手をうつプロジェクト(通称:かみせんプロジェクト)」というプロジェクトがありました。本年度からは規模を拡大し、「技術推進プロジェクト」と名称を改めて再スタートされました。 本記事では、昨年度かみせんプロジェクトとしての最後のテーマとなった機械学習テーマの延長として 2020 年度上期に行った「AutoML ツールの調査と評価」について取り組み結果を報告します。 (ちなみに機械学習テーマは前年度から継続していたこともあり、上期で終了となってしまいました。残念……) なお過去の報告記事はかみせんカテゴリからどうぞ。技術推進プロジェクト

                        機械学習をコモディティ化する AutoML ツールの評価 - RAKUS Developers Blog | ラクス エンジニアブログ
                      • Why Dark didn't choose Rust

                        Welcome again HN! Dark is a programming language, structured editor, and infrastructure—all in one—whose goal is to make it 100x easier to build backend services. Check out the website, our What is Dark post, and How Dark deploys in 50ms for more. Thanks for checking us out! This is the third or a 3-part series: Leaving OCaml and Dark's new backend will be in F#. You can enjoy this without reading

                          Why Dark didn't choose Rust
                        • Web フロントエンドチームの紹介 - ドワンゴ教育サービス開発者ブログ

                          はじめに こんにちは。N 予備校 Web フロントエンド開発チームの三橋です。 この記事では Web フロントエンドチームについてご紹介します。 メンバー(実施時点 9 名)にカジュアル面談でよくご質問いただく項目を含めたアンケートに協力してもらいました。 チームメンバーの雰囲気を知りたい チームメンバーがどんな働き方をしているか知りたい という方に読んでいただきたい内容になっています。 概要 新卒/中途 中途採用されたメンバーがこの 1~2 年で増えて、現在では新卒採用の方に比べて中途採用の方が多くなりました。 年齢のボリュームゾーン 30 代が 5 名と最多ですが、年齢に関係なく疑問を投げかけたり提案したりしている気がしますね。 お住まい エンジニアは原則として テレワーク なので、東京都が最多ですが地方にお住まいの方もおられます。 普段のコミュニケーションは Slack でテキストベ

                            Web フロントエンドチームの紹介 - ドワンゴ教育サービス開発者ブログ
                          • なんとなく使わないGradle

                            はじめに 最近スパイスカレーを食べるのはもちろん、作るのにもハマっている小林(@mako-makok)です。 近所のお気に入りのお店の閉店が決まってしまい、悲しみに暮れていますが頑張ってアドカレの記事を書きました。 この記事は株式会社ログラスProductチームの2022年12/18(日)の記事です。 株式会社ログラス Product チーム のカレンダー | Advent Calendar 2022 - Qiita なぜ今更Gradleかというと、最近社内で構築しているSheetlinというライブラリがあります。 ニッチな話になりますが、Sheetlin のインターフェース設計に関する話をKotlin Fest Reject Conference 2022でしてきたので、よろしければこちらもご覧ください。 そんなSheetlinですが、ビルドツールはGradleを利用しています。 私も雰

                              なんとなく使わないGradle
                            • TypeScript における型の集合性と階層性

                              宣伝 (本を作成しました) この記事についての発展的研究内容を以下の本としてまとめました。この記事を読んで興味が湧いたら、ぜひ読んでみてください。 はじめに 前回の記事 では TypeScript における型の拡大 (Widening) について解説しました。Narrowing の記事を書く前に (Widening を深く理解するためにも) 必要な知識や考え方がいくつかあると思ったので、今回は型の集合性と階層性について見ていきたいと思います (短いですが内容的に切り出してもかなり興味深いので)。 この記事の最後で別の型の変数同士で代入できるかどうかを示す「Assignability (代入可能性あるいは割当可能性)」について解説しますが、集合と階層の概念で考えることで見通しが非常によくなり、型一般についてもスッキリと理解できることが多くなります。また、never や unknown といっ

                                TypeScript における型の集合性と階層性
                              • Kafka Brokerのcompaction動作の詳細とチューニング方法について - Repro Tech Blog

                                Reproでチーフアーキテクトとして働いているid:joker1007です。 今回、Kafka Brokerのcompaction動作について調査しチューニングすることでパフォーマンス改善の成果が得られたため、そのノウハウをブログにまとめておきました。 かなりマニアックな内容なので、需要は多くないと思いますが、私が調査した限りでは日本語で同じ様な内容のブログ記事はほとんど存在しなかったため、Kafkaを自前で運用している人にとっては役に立つ内容かもしれません。 compactionとは (参考: https://kafka.apache.org/documentation/#compaction) Kafkaの基本的なデータ削除ポリシーは一定時間が経過したら過去のデータをそのまま削除するdeleteというポリシーを使う。 これは、log.retention.hoursという設定でコントロー

                                  Kafka Brokerのcompaction動作の詳細とチューニング方法について - Repro Tech Blog
                                • TypeScriptで型安全性を破壊する方法をまとめたリポジトリを作った

                                  実用的な静的型付き言語には、たいていの場合危険なことをするバックドアが存在するものですが[1]、TypeScriptには一見してわからない場所にバックドアが存在するという特徴があります。 というわけで、様々な方法でunsafe_cast<T, U>(x: T): Uを書いてみました。便利。 謝辞: テクニックの多くはtkr氏の記事に依っています。 脚注 ScalaのasInstanceOf[T], HaskellのunsafeCoerce, OCamlのObj.magic, ... ↩︎

                                    TypeScriptで型安全性を破壊する方法をまとめたリポジトリを作った
                                  • エスカレーター ラテン語で「e=(ここから)外に」「scala=梯子(でよじのぼ..

                                    エスカレーター ラテン語で「e=(ここから)外に」「scala=梯子(でよじのぼる)」「tor=するもの」。 直訳すると「上の階によじのぼるもの」といった感じか。 エレベーター ラテン語で「e=(ここから)外に」「levare=持ちあげる」「tor=するもの」。 直訳すると「上の階に持ち上げるもの」といった感じか。 scalaは「梯子」という意味。 scale(スケール)は「目盛り」や「ものさし」の意味、また「音階」という意味もある。 vectorに対するscalar(スカラー)は「量を増大・減少させる大きさ」。 つまり「梯子」から「段階的な変化」を意味するようになった。 ちなみにエスカレーターという言葉から「エスカレート(徐々に激しくなる)」という動詞が生まれた。逆ではない。 levareは、「軽い」という意味のlevisに由来する。 たとえば「levitation(レビテーション)」は

                                      エスカレーター ラテン語で「e=(ここから)外に」「scala=梯子(でよじのぼ..
                                    • 『関数型ドメインモデリング』はF#の本なのか? - 詩と創作・思索のひろば

                                      関数型ドメインモデリング ドメイン駆動設計とF#でソフトウェアの複雑さに立ち向かおう 日本語版出版に際し、訳者の猪股さんにご恵贈いただきました。ありがとうございます! すでに原著の『Domain Modeling Made Functional』を読んでいて、そのときの感想は以前に書いたとおり。そこからの差分としては、はてな社内でこの本の輪読をはじめたこと。輪読がはじまったその週に日本語版の出版が告知され嘆息する一同でしたが、日本最速で輪読を開始できたのは間違いないと思う。 この本の特徴をひとつ挙げろと言われれば、実装に使われている言語がF#であること、というのが大方の回答になるとおもうが、一方でこの本をやるのにF#を実践する必要はない、と考えている。そういうわけで今回輪読における実装言語にはGoとTypeScriptを指名しており、その後Scala勢力も増えたのだけど、進度的には実際にコ

                                        『関数型ドメインモデリング』はF#の本なのか? - 詩と創作・思索のひろば
                                      • トイルを自動化したら、チームにひろまった話 - エムスリーテックブログ

                                        こんにちは。Scalaとまどマギのマミさんが大好きな安江です。この記事ではとある日常業務のトイルを自動化したこと、その後の広まりについて紹介したいと思います。 ここにトイルがあるじゃろ? 自動化、その前に 簡単に捨てられるようにする 既存の手作業の仕組みも残す 最初に一番インパクトがある適用箇所を狙う これをこうして…こうじゃ その後の広まり We are hiring! ここにトイルがあるじゃろ? 私が所属するチームでは、コードレビューする際、GitLabのマージリクエスト機能に加えて、JIRAにコードレビュー用の課題を作成するワークフローになっています。業務進捗をJIRAの課題で管理しているので、JIRA上では各人が通常の業務に加えて、どれだけコードレビューを抱えているかを把握できるようになっています。 コードレビューを依頼する時、レビュアはチームメンバーからランダムで選出します。JI

                                          トイルを自動化したら、チームにひろまった話 - エムスリーテックブログ
                                        • Interesting Programming Languages

                                          Interesting Programming Languages an opinionated collection of programming languages. Created: Feb 19, 2020 by Pradeep Gowda Updated: May 17, 2024 Tagged: programming-language An opinionated collection of programming languages. This is a list of what I consider interesting. Requests to add to this list are welcome, but there is no guarantee I’ll include them. As you can see many mainstream program

                                          • 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を採用
                                            • VSCodeの拡張機能としてJupyter NotebookをベースにJavaScript/Mermaid/SQLなど多言語対応にした「Polyglot Notebooks」が正式リリース

                                              VSCodeの拡張機能としてJupyter NotebookをベースにJavaScript/Mermaid/SQLなど多言語対応にした「Polyglot Notebooks」が正式リリース Jupyter Notebookはシンプルなエディタ画面にPythonやScala、Rなどのコードを打ち込んですぐに実行できる、インタラクティブなコード実行環境で、特にデータサイエンティストなどで重宝されているツールです。 結果も同じNotebook上に表やグラフ形式で表示可能なのに加えて、Markdown/LateX/HTMLなどを記述することでリッチなテキスト表現と画像や動画の埋め込みなどもできます。 このJupyter Notebookをベースに、C#やF#、JavaScript、Mermaid、SQLなど、さらに多くのプログラミング言語やマークアップ言語への対応を行ったVisual Studio

                                                VSCodeの拡張機能としてJupyter NotebookをベースにJavaScript/Mermaid/SQLなど多言語対応にした「Polyglot Notebooks」が正式リリース
                                              • コンパイル時計算でラムダ計算の構文解析器・評価器・型推論器を実現 (Scala 3編) - 貳佰伍拾陸夜日記

                                                またか. またなのか. 何回目だ. ということで, ラムダ計算のインタプリタの実装としては4回目くらい*1, コンパイル時計算でやるものとしても3回目くらいになってしまうけど, ラムダ計算の処理系をまた書いてしまった. 今回の目的は, Scala 3にはmatch typesという機能があり, これだけでチューリング完全なのではないか, というのを検証するため. また, 文字列リテラル型を操作する型レベル関数が3.1.2-RC1にきていて, これを使えば構文解析器だって書ける. 経緯 過去の事例 関数と返り値 パターンマッチと再帰呼出し Scala 3の型レベル言語 match types リテラル型操作 ラムダ計算の実装 評価 印字 構文解析 型推論 (型検査) おわりに 経緯 もともとは, id:xuweiさんが文字列リテラル型でコンパイル時に動作する構文解析器を実装していたのが始まり

                                                  コンパイル時計算でラムダ計算の構文解析器・評価器・型推論器を実現 (Scala 3編) - 貳佰伍拾陸夜日記
                                                • まつもとゆきひろ×福村彰展 対談「メドピアとRubyに共通する強いコミュニティ 」 | Forkwell Press | フォークウェルプレス

                                                  2016年にメイン言語をPHPからRubyに移行したメドピア株式会社(以下、メドピア)は、大きな転換期を迎えました。 Rubyの生みの親として世界的に名の知れるまつもとゆきひろ(松本行弘)氏を技術アドバイザーに迎えたのです。 「コミュニティの熱量の高さがRubyを選んだ決め手」と語るメドピア株式会社CTO福村氏とまつもと氏に、アドバイザー就任の経緯やメドピアの目指す事業の方向性、Rubyの今後の可能性について伺いました。 Rubyを選んだ決め手はコミュニティの圧倒的な熱量 メドピアは、2004年に現役医師が創業したヘルステック企業。「集合知により医療を再発明する」というビジョンを掲げ、医師や薬剤師などの医療従事者をサポートしながら、その専門家ネットワークと「集合知」を活用して様々なシナジーを生み出しています。 なかでもコアサービスとなる医師専用コミュニティサイト「MedPeer」の会員数は

                                                    まつもとゆきひろ×福村彰展 対談「メドピアとRubyに共通する強いコミュニティ 」 | Forkwell Press | フォークウェルプレス
                                                  • ZodでAlways-Valid Domain Modelを実現する

                                                    課題意識 特定の商品を数量を指定して購入できるECサービスのドメインモデルを表現とします。TypeScriptで構築する際に、「数量」を単にnumber型で扱うことは可能ですが、よりロバストな設計を目指す上で以下の2つの方法論があります。 Refinements(値の制約を表す): 「数量」は一般的に自然数です。1度の注文で指定できる上限を設けるビジネスルールがあると仮定します。この場合、number型に「自然数」「上限付き」の制約を加えた値として表現します。 Branded Types: (同じ構造の型を区別する): 「価格」などの他のnumber型と混同されないように、これらの数値を型レベルで区別したいです。JavaやC#に見られる公称型の概念をTypeScriptで模倣するBranded Typesのテクニックを用いることで、これらの誤った利用を型システムで防ぐことができます。 Br

                                                      ZodでAlways-Valid Domain Modelを実現する
                                                    • Databricks + BigQueryでSSOTを実現しようとしている話 - バイセル Tech Blog

                                                      テクノロジー戦略本部データサイエンス部の近藤です。 バイセルはリユース事業を営む会社で急激な成長を遂げていますが、どちらかというと今まではテクノロジーにあまり頼ることなく成長してきました。 そんな中、テクノロジーをちゃんと導入していけばどこまで成長するのか試してみたく、2022年7月にバイセルに入社しました。 バイセルではSSOTの実現のために、RDBのデータをBigQueryにニアリアルタイムで同期する実装を進めていますが、 新たにDatabricksの導入を決めました。 バイセルにどういう課題があり、なぜDatabricksを導入するのかをお話しします。 SSOTとは バイセルの今の課題と未来 どうやって課題を解決するのか なぜApache Sparkなのか Databricksの利点 Databricks導入後の世界 データサイエンス部の野望 SSOTとは データマネジメントでは「S

                                                        Databricks + BigQueryでSSOTを実現しようとしている話 - バイセル Tech Blog
                                                      • Scala 3 マクロ入門 · eed3si9n

                                                        2021-09-06 / scala はじめに マクロは楽しくかつ強力なツールだが、使いすぎは害もある。責任を持って適度にマクロを楽しんでほしい。 マクロとは何だろうか? よくある説明はマクロはコードを入力として受け取り、コードを出力するプログラムだとされる。それ自体は正しいが、map {...} のような高階関数や名前渡しパラメータのように一見コードのブロックを渡して回っている機能に親しんでいる Scala プログラマには「コードを入力として受け取る」の意味が一見分かりづらいかもしれない。 以下は、僕が Scala 3 にも移植した Expecty という assersion マクロの用例だ: scala> import com.eed3si9n.expecty.Expecty.assert import com.eed3si9n.expecty.Expecty.assert scala

                                                        • Hindley-Milner型推論をCで実装した話 - free(malloc(sizeof(MRM)));

                                                          SecHack365 2019 Advent Calendar 14日目の記事です(大遅刻). what is this きっかけ 実装したもの 型と型推論について 型? 型付け規則はこわくない 型環境 型付け規則を読む 整数 変数 ラムダ抽象 関数適用 let式 let rec式 型推論? Hindley-Milner Type System Hindley-Milner型推論 型の連立方程式 多相性 実装 感想 参照したリンクとか what is this 型理論とか全く知らない人がHindley-Milner型推論器(+ REPL)をCで実装したお話. 記事に誤謬などを発見したらコメントとかDM,リプライください(@cmpl_error). きっかけ 今年の4月からHindley-Milner型推論という型推論アルゴリズムがあるのはなんとなく知っていて,実装してみたいなーという気持ち

                                                            Hindley-Milner型推論をCで実装した話 - free(malloc(sizeof(MRM)));
                                                          • GoにはなぜXという機能がないのか? 〜テスト関数ごとの暗黙的な初期化処理の実現を考察する | gihyo.jp

                                                            つきなみGo GoにはなぜXという機能がないのか? 〜テスト関数ごとの暗黙的な初期化処理の実現を考察する はじめに 筆者はGoだけではなく、Scalaなど他言語を扱った経験もあり、しばしばGoには他の言語にあるXという機能がなぜないのだろう?と考えることがあります。 たとえば、テスト関数ごとに暗黙的に呼ばれる初期化関数の定義があります。データベースに対するDrop・Create・Insertなどの処理をテストごとに実行したい場合に定義できると便利でしょう。同じ処理を都度書いているとテストケースが増えてきた時にメンテナンス性が下がってしまったり、初期化処理を追加し忘れてしまう恐れなどもあります。 しかし、Goにはこのようなテスト関数ごとに暗黙的に実行される初期化処理を定義できません。Goが他言語に劣っているようにもみえますが、本当にそうなのでしょうか? 公式のFAQにもあるように、とある機能

                                                              GoにはなぜXという機能がないのか? 〜テスト関数ごとの暗黙的な初期化処理の実現を考察する | gihyo.jp
                                                            • 2023年のはてなスタッフのアウトプットまとめ - Hatena Developer Blog

                                                              こんにちは、id:onk です。 2023年は、インパーソンの技術カンファレンスが戻ってきた 1 年だったなぁと思います。私が参加した 100 名程度以上の規模のものだけでも、以下のように参加していました。 2023/02/18 福岡Rubyist会議03 2023/03/04 鹿児島Ruby会議02 2023/03/19 YAPC::Kyoto 2023 2023/05/11-13 RubyKaigi 2023 2023/07/13 開発生産性Conference 2023/08/03 CloudNative Days Fukuoka 2023 (病欠) 2023/09/09 Osaka RubyKaigi 03 2023/09/29 PIXIV MEETUP 2023 2023/10/15 大江戸Ruby会議 10 2023/10/27-28 Kaigi on Rails 2023 2

                                                                2023年のはてなスタッフのアウトプットまとめ - Hatena Developer Blog
                                                              • 「ChatGPT」のプログラミングの実力--主要12言語でコードを書かせてみた

                                                                David Gewirtz (Special to ZDNET.com) 翻訳校正: 川村インターナショナル 2023-05-03 08:30 「ChatGPT」がコードを記述できることは、この数カ月の間に誰もが知るところとなった。筆者が「PHP」と「WordPress」で何度も実施したテストから、ChatGPTのコーディング機能の長所と短所の両方が明らかになっている。 しかし、ChatGPTのコーディングの知識はどれほどのものなのだろうか。本記事では、古典的なプログラミングの課題である「Hello, world」を、O'Reilly Mediaの2023年の人気ランキングでトップ12に入った言語に与える。 「Hello, world」のコードは1行で終わることが多いため、少しひねりを加えてみた。「Hello, world」を10回表示させ、カウンターの値を毎回1つずつ上昇させる。また、時

                                                                  「ChatGPT」のプログラミングの実力--主要12言語でコードを書かせてみた
                                                                • 「年収が高いプログラミング言語」ランキングNo.1が決定! 2位の「Scala」を抑えた20代の1位は?【2020年版】(ねとらぼ) - Yahoo!ニュース

                                                                    「年収が高いプログラミング言語」ランキングNo.1が決定! 2位の「Scala」を抑えた20代の1位は?【2020年版】(ねとらぼ) - Yahoo!ニュース
                                                                  • Recursion Schemeによるドドスコ問題の恐るべき解法 - Lambdaカクテル

                                                                    さる8月1日、計算機科学の根幹を揺るがすドドスコ問題が出題され、エンジニアたちは震撼した(意味: 面白問題が出たので、なるべくヘンテコな解法を使って己の技巧を誇示するためにエンジニアたちは競ってコードを書きはじめた)。 【問題】配列{"ドド","スコ"}からランダムに要素を標準出力し続け、『その並びが「ドドスコスコスコ」を3回繰り返したもの』に一致したときに「ラブ注入♡」と標準出力して終了するプログラムを作成せよ(配点:5点)— ((🐑++)) (@Sheeeeepla) 2022年8月1日 そこで、関数型テクニックをなんとかねじこんだ解法を作ったのでここに示す。 import higherkindness.droste.Coalgebra import higherkindness.droste.data.list.{ListF, ConsF, NilF} import higherk

                                                                      Recursion Schemeによるドドスコ問題の恐るべき解法 - Lambdaカクテル
                                                                    • 【入門】Kotlinとは?Javaとの違いから文法、実行サンプルまで紹介 | AKKODiS(アコーディス)コンサルティング株式会社

                                                                      【入門】Kotlinとは?Javaとの違いから文法、実行サンプルまで紹介 公開日:2020.08.20 スキルアップ Kotlin(コトリン)は2011年に開発されたオブジェクト指向型言語で、Javaを簡潔かつ安全になるよう改良を加えた産業利用向けの汎用言語としてリリースされました。そのためJava仮想マシン上で動作し、文法などもJavaに近いものになっています。Javaと同様に素早くコンパイルでき、同程度の速度で動作するとされています。Androidの開発言語として公式認定され、スマートフォンアプリの開発現場でのシェアが広がりつつある言語の一つです。 今回はこのKotlinについて、Javaの違いや文法を解説しながら、実行サンプルを紹介していきます。 KotlinはJetBrains社が開発したプログラミング言語で、2011年7月に産業用汎用言語として発表されました。その後、2012年に

                                                                        【入門】Kotlinとは?Javaとの違いから文法、実行サンプルまで紹介 | AKKODiS(アコーディス)コンサルティング株式会社
                                                                      • 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連発 - 貳佰伍拾陸夜日記
                                                                        • ○ー○ー○○ー○ー○ーに当てはまる言葉をWikipediaから探してくるツールを自作した - Lambdaカクテル

                                                                          anond.hatelabo.jp 特定のリズムにあてはまる日本語を頑張って探したくなることがたまにある。そして、定期的に↑のような記事が流行っては、仕事が手につかなくなる!このままでは、○ー○ー○○ー○ー○ーを考える時間によって日本のGDPが押し下げられてしまう。 そこで機械の力を借りて特定のリズムを持った言葉を探せるようにした。 github.com 自分のマシンだと、だいたい2分で目当ての言葉を探してくれるようになった。 使い方 仕組み 素材選び リズム形式 実装 で、○ー○ー○○ー○ー○ーはなんなの 航空機抵当法 ローラースルーGOGO 西洋の命数法 包頭軌道交通 西寧軌道交通 No Need 2 Worry 総合治療効用 結語 使い方 基本的にリポジトリに書いてあるけれど、やることは2つ。Scalaなのでsbtが必要。 Wikipediaのデータを落としてきて解凍する sbt "

                                                                            ○ー○ー○○ー○ー○ーに当てはまる言葉をWikipediaから探してくるツールを自作した - Lambdaカクテル
                                                                          • いろいろな言語の連想配列系リテラル記法を比較してみた|TechRacho by BPS株式会社

                                                                            参考: いろいろな言語での Map, Dictionary 的なものの名前 - Qiita 上の記事を見ていて、連想配列系の構文でどんなリテラル記法が使われているのかが気になったので、リテラル記法に絞って順不同(思い付いた順とも言う)で調べてみました。メジャーな言語のほか、新し目の言語もチェックしてみました。 あくまで連想配列系構文の基本的なリテラル記法を知りたかったので、細かな機能やヘルパー関数などについては省略しています。サンプルコードが洗練されてないのはご容赦🙇。 参考: 連想配列 - Wikipedia map/dict/hash専用のリテラルがある言語とない言語でざっくり分けました。また、メソッドなどを用いるアクセスは最小限にとどめています。検証には主に以下のサイトを使いました。 サイト: LabStack 間違いがありましたら@hachi8833までお知らせください。 専用の

                                                                              いろいろな言語の連想配列系リテラル記法を比較してみた|TechRacho by BPS株式会社
                                                                            • 経験の浅い社員の意見も真摯に受け止めてくれるので、自信がつきやすい | はてなで働く lunastera にアンケート [#22] - Hatena Developer Blog

                                                                              はてなで働くエンジニアにアンケートシリーズ第22回は、ブックマークチームのWebアプリケーションエンジニア、id:lunasteraに話を聞きました。 はてなブックマークのアーキテクチャの出来に感動して入社へ UXを重視し、フロントエンド周りやユーザー体験の改善に関するタスクを好む 自分の活動によって周囲の人の行動に影響を及ぼすことができた 「マネジメント星人?」と思うくらいうまいメンターから吸収したい 自分の意見が改善につながったから、自分の中だけに考えを留めるのはもったいない はてなブックマークのアーキテクチャの出来に感動して入社へ ── Q1. はてなidとその由来を教えてください id:lunastera です。元々は era(読み方は「イーラ」「えーら」「えら」)という名前で活動していたのですが、3文字なので、大抵のサービスではIDやアカウントとしては取得できないという問題があり

                                                                                経験の浅い社員の意見も真摯に受け止めてくれるので、自信がつきやすい | はてなで働く lunastera にアンケート [#22] - Hatena Developer Blog
                                                                              • マイクロソフト、Visual Studio Codeに「Jupyter」拡張機能を追加 Python以外でも導入可能に | Ledge.ai

                                                                                米マイクロソフト(Microsoft)は現地時間11月11日、「Visual Studio Code(VS Code)」用の新しい「Jupyter」拡張機能を発表した。Visual Studio Codeに、データ分析用のツール「Jupyter Notebook」を導入できる。 Visual Studio Codeの「Python」拡張機能では、1年以上前からJupyterをサポートしていた。一方で、Jupyterは「R」「Julia」「Scala」など、Python以外のプログラミング言語でも使用されている。このような状況を踏まえ、マイクロソフトは今回の発表にいたったとしている。 >>GitHub >>ニュースリリース Visual Studio Code用のPython拡張機能に「debugpy 1.0」が追加なお、米マイクロソフトは現地時間10月28日、Windows、Linux、m

                                                                                  マイクロソフト、Visual Studio Codeに「Jupyter」拡張機能を追加 Python以外でも導入可能に | Ledge.ai
                                                                                • ChatGPTの新機能であるGPTsを使って私のコピーを作ってみた - Qiita

                                                                                  Supershipの名畑です。映画「ゴジラ-1.0」を見た後にインターネット上で他の方々の感想を読んだのですが、様々な観点があるものだなと勉強になりました。 はじめに 「New models and developer products announced at DevDay」で様々なアップデートを発表したOpenAIですが、そのうちの一つとしてGPTsがございます。ものすごく話題ですね。(CEO退任のニュースの方が話題になってしまっている感もありますが……続報からすると、OpenAIで働き続ける線もあるのですかね) GPTsは端的に言えば「自分だけのChatGPTを作成して公開することができる」というものであり、サイトを見ると Starting today, you can create GPTs and share them publicly. Later this month, we

                                                                                    ChatGPTの新機能であるGPTsを使って私のコピーを作ってみた - Qiita