星が聞いてくるなら、しかたがないってみんなが考えはじめちゃったけど!?それなら、おねいさまは…あ な た の 邪 魔 を し ち ゃ お う か な あ ! ! !通り道のうたきょく・どうが : おねいさまうた : さとうささらちゃん
正規表現マッチングの実装手法の1つとしてPike VMと呼ばれるものがあります。 これはGo言語の正規表現実装やRustのregex crateで使われている手法であり、正規表現rrrと入力文字列wwwに対してO(∣r∣×∣w∣)O(|r| \times |w|)O(∣r∣×∣w∣)の計算量でマッチングができるのが特徴です。 Earley法はJay Earleyの提案した文脈自由文法 (CFG) の構文解析手法の1つです。 すべてのCFGを構文解析できる手法で最悪計算量はO(∣w∣3)O({|w|}^3)O(∣w∣3)ですが、無曖昧であればO(∣w∣2)O({|w|}^2)O(∣w∣2)で、決定的であればO(∣w∣)O({|w|})O(∣w∣)で構文解析ができます。 実装してみると分かりますが、Pike VMとEarley法には類似している点があり、Earley法をPike VMの発展系の
2023/7/12にGithub Merge QueueがGAになりました。 https://github.blog/changelog/2023-07-12-pull-request-merge-queue-is-now-generally-available/ 機能のパッと見はPRをただキューに積んでくれるだけで「何が嬉しいんだろう?」と思う人も多そうなので、何が嬉しいのか事例付きで紹介できればと思います。 TL;DR 「PRの時点ではコンフリクトも無いしCIも通っているがマージしたらCI落ちた」というのが割とよくある 上記の対策として「マージ前にmain rebaseしてCIを再度回し、問題無いことを確認してからマージする」という作業を手動で行うしか無い Merge Queueを使用することでマージ後のCIチェックを自動化し、問題ある場合はマージせずに差し戻すことが可能になる Tab
はじめに 私が個人で昨年の 6 月ごろから開発している関数型プログラミング言語を紹介する。言語の名前は「Plato」である。 この言語は昨年の U22 プログラミングコンテスト最終発表会でも発表した。コンテスト後、コンパイラの構成と実装に関して調査し直して、コードを一から書き直した。コンパイラは Haskell で書かれているため、本稿の内容も Haskell の知識をベースとしている。また、型理論の知識もある程度求められる。ただ、大雑把に書いているため、大雑把に読めばよく、このブログの読解に正確さは必要無い。 このブログでは、まず Plato のチュートリアルを示し、実際に何ができるのかを説明する。次に型検査や中間言語の仕様などコンパイラの実装手法を大まかに説明する。最後に今後実現したい機能などについて述べる。理論的に面白いものや有用な機能については、後日それ専用の記事を書く予定。 チュ
この記事の概要 ユーザーから嫌われている広告の1つに「スワイプ広告」というものがある。 誤タップをしやすいことが理由だが、あまりにもこの広告だけ誤タップするため調べたところ 実は誤タップしたように見せかけて意図的に広告先に遷移させる広告であるということがわかった。 スワイプ広告とは、左右にスワイプすると画像がついてくるタイプの広告である。 スワイプ広告とは スワイプ広告とは、主にアフィリエイトサイトで見られる広告形式の一つである。 ユーザーは指で画面上の広告を左右にスワイプすることで、広告画像を切り替えることができる。 スワイプによるインタラクティブ性を活かし、複数のメッセージやメディアを使い、魅力的な広告体験を提供することが特徴である。 なぜ悪名高いのか しかし、スワイプ広告はユーザーから嫌われている。その理由は、誤タップを誘発しやすいからである。 誤って広告をタップして画面が遷移してし
2023年8月4日、内閣サイバーセキュリティセンター(NISC)と気象庁はそれぞれ電子メール関連のシステム・機器から不正通信の痕跡が確認され、メールデータの一部が外部に流出した可能性があると公表しました。ここでは関連する情報をまとめます。 政府組織に対しゼロデイ攻撃 NISCと気象庁及び気象研究所、国立科学博物館、教職員支援機構が各々運用を行っていた電子メール関連システム・機器に脆弱性が存在しており、その脆弱性に関連した不正通信が確認された。 今回確認された不正通信により、メールデータの一部が外部に流出した可能性がある。両組織ではメールアドレス等の個人情報が漏えいした可能性を排除できないとして個人情報保護委員会に報告した他、対象者にも個別に連絡を行う。公表時点では流出可能性のある情報の悪用は確認されていないが、NISCでは約5,000件の個人情報が対象に含まれており、流出可能性のある事案が
はじめに collationとは二つの文字の間の順序を定義するものです。こう言われるととても単純に聞こえるのですが、MySQLのcollationの詳細な動作は実は結構複雑です。 この記事はcollationの挙動に関する体系的な解説と様々な具体例を元にcollationに対する理解を深め、collationの問題のトラブルシューティングの筋道を立てる事を目的としています。なお、この記事は大まかなcollationの動作の説明を目的としており、全てを網羅しているわけではありません。詳細な動作はMySQLの公式ドキュメントの方が丁寧ですので実際のトラブルシューティングではドキュメントもご活用ください。 なお、この記事での検証はMySQL8.0.31を利用しています。 collationの基礎 collationは冒頭で説明したように二つの文字の順序関係や同値関係を決めるものです。collat
はじめに ここ1年ぐらいかけて、Fixという名前のプログラミング言語を作っています。 コアとなる機能の実装がある程度落ち着き、実際にFixを使ってプログラムを書けるようになってきたので、そろそろ言語の紹介をしてみようと思います。 本記事はFixのチュートリアルではなく、どういう思想で設計されていて、どういう特徴を持つ言語なのか、という点を紹介するものです。 意見・提案・助言などをいただけるとうれしいです。 リポジトリはこちらです。 ※ コメントやコミットメッセージは一応拙い英語で書いていますが、日本語でissueを立てたりdiscordで意見・質問してもらっても大丈夫です。 ※ 急いで作った部分もあるため、コンパイラのコードは結構汚いです。ご容赦ください。 現状、Fixをローカルで実行するためにはLLVMのインストールが必要で時間がかかりますが、Fix playgroundを使えばブラウザ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く