並び順

ブックマーク数

期間指定

  • から
  • まで

361 - 400 件 / 571件

新着順 人気順

algorithmの検索結果361 - 400 件 / 571件

  • 2023 年を振り返る | blog.jxck.io

    Intro 例年通り 2023 年を振り返る。 blog 今年書いたのは全部で 43 本。今年はアドベントカレンダーを一人でやったため、過去最高のエントリ数になった。 Entry ブログは 15 本書いた。 2023-01-07: 次世代 CSS 仕様が与えるコンポーネント時代の Web への影響 2023-02-28: 誇りを被った仕様の針に意図を通す 2023-03-24: OpenAI API を用いた文書校正(誤字脱字検出) 2023-05-02: 技術書籍をシンタックスハイライトする話 2023-05-17: IETF RFC における ABNF と Parsing Algorithm の関係 2023-05-28: URL バーの表示の変遷 2023-06-01: AbortSignal.any(), AbortSignal.timeout(), そして addEvnetLis

      2023 年を振り返る | blog.jxck.io
    • Building Basecamp project stacks with Hotwire

      It’s been two decades since Rails changed the way we build web apps. As the demand for richer and richer UIs grew, teams came up with different frontends to deliver on those expectations. Client-side frameworks such as Angular, Ember, and React emerged as popular choices. One of Rails’ strengths has always been to empower individual programmers to not just contribute to, but to ship entire full st

        Building Basecamp project stacks with Hotwire
      • Critical libwebp Vulnerability Under Active Exploitation - Gets Maximum CVSS Score

        Google has assigned a new CVE identifier for a critical security flaw in the libwebp image library for rendering images in the WebP format that has come under active exploitation in the wild. Tracked as CVE-2023-5129, the issue has been given the maximum severity score of 10.0 on the CVSS rating system. It has been described as an issue rooted in the Huffman coding algorithm - With a specially cra

        • 書評|AIはリベラルの夢をみるか?|"A Hacker’s Mind” by Bruce Schneier - カタパルトスープレックス

          ブルース・シュナイアーはセキュリティーの第一人者で「シュナイアーの法則」で知られています。 自分自身が破れないアルゴリズムを作って安心しているのは素人同然だ。 Anyone, from the most clueless amateur to the best cryptographer, can create an algorithm that he himself can't break. 今回紹介するのはブルース・シュナイアーの最新著書である"A Hacker's Mind"です。本書ではコンピューターだけではなく、金融機関や行政、政治、さらには人の認知システムまで網羅的な「システム」に対するハッキングを網羅的に捉えています。そして、最後にAIが普及するとハッキングにどのような変化が起きるのか、それに備えて何をすべきなのかが語られます。 A Hacker's Mind: How th

            書評|AIはリベラルの夢をみるか?|"A Hacker’s Mind” by Bruce Schneier - カタパルトスープレックス
          • AI Prompt Engineering Is Dead

            Since ChatGPT dropped in the fall of 2022, everyone and their donkey has tried their hand at prompt engineering—finding a clever way to phrase your query to a large language model (LLM) or AI art or video generator to get the best results or sidestep protections. The Internet is replete with prompt-engineering guides, cheat sheets, and advice threads to help you get the most out of an LLM. In the

              AI Prompt Engineering Is Dead
            • Compiling Pattern Matching

              Colin James obscurecolin [at] gmail (dot) com I am a computer programmer. I'm primarily interested in compilers for strict functional languages. Introduction This post intends to provide a brief overview of the algorithm described in Luc Maranget’s “Compiling Pattern Matching to Good Decision Trees”. I’m fond of this formalisation as it has a straightforward implementation and results in reasonabl

              • Accessing GPT-4 level Mathematical Olympiad Solutions via Monte Carlo Tree Self-refine with LLaMa-3 8B

                This paper introduces the MCT Self-Refine (MCTSr) algorithm, an innovative integration of Large Language Models (LLMs) with Monte Carlo Tree Search (MCTS), designed to enhance performance in complex mathematical reasoning tasks. Addressing the challenges of accuracy and reliability in LLMs, particularly in strategic and mathematical reasoning, MCTSr leverages systematic exploration and heuristic s

                • How bad are search results? Let's compare Google, Bing, Marginalia, Kagi, Mwmbl, and ChatGPT

                  Marginalia does relatively well by sometimes providing decent but not great answers and then providing no answers or very obviously irrelevant answers to the questions it can't answer, with a relatively low rate of scams, lower than any other search engine (although, for these queries, ChatGPT returns zero scams and Marginalia returns some). Interestingly, Mwmbl lets users directly edit search res

                  • A24: The Rise of a Cultural Conglomerate | The Generalist

                    Even with big ambitions, only a small percentage of startups make it. Mercury Raise is here to change that. Introducing the comprehensive founder success platform built to remove roadblocks at every step of the startup journey. Looking to fundraise? Get your pitch in front of hundreds of the right investors with Investor Connect. Craving the company of people who get it? Join our Slack community o

                      A24: The Rise of a Cultural Conglomerate | The Generalist
                    • Inside Bluesky’s Engineering Culture

                      Programming note: this week, there will be no The Pulse on Thursday. I’m attending Craft Conference in Budapest, Hungary and delivering my annual conference talk the same day. My keynote is titled “What’s Old is New Again.” I’ll share the recording in the newsletter, once it will become available. I hope you enjoy this detailed deepdive on a lean and nimble startup (Bluesky) for the week! Bluesky

                        Inside Bluesky’s Engineering Culture
                      • 写真から動画、そしてショート動画へ。若者とメディアの関係性はどう変わった? | ウェブ電通報

                        なぜ若者は写真アプリに夢中になるのか、その利用実態から見えてきたこと(2015年12月25日) ウェブ電通報10年振り返り企画、今回はZ世代に人気のコミュニケーションアプリ潮流に見る、若者とメディアの関係編です! ウェブ電通報がスタートしてからも、若者が利用するコミュニケーションアプリのトレンドやメディアとの関わり方は常に変化してきました。こうしたコミュニケーションツールの潮流に関しては、電通総研メディアイノベーション研究部によるウェブ電通報のコラム「ドミニク・チェンさんと考えるビジュアルコミュニケーションの未来」連載が注目を集めました。 Instagram、Twitter、Vine、Facebook、YouTube、Snapchat、MixChannel…ビジュアルコミュニケーションアプリの使い分け方を探る (前略) 設樂:その一方で自慢的な写真が多いところで敬遠するユーザーも。Inst

                          写真から動画、そしてショート動画へ。若者とメディアの関係性はどう変わった? | ウェブ電通報
                        • SEO Visibility Shifts from Review Sites to eCommmerce & User-Generated Content Sites in 2024

                          Several recent Google algorithm updates and other adjustments to Google’s algorithms have led to substantially different search results in mid-2024 compared to the prior year. Google launched a number of significant, confirmed updates – most notably, the September 2023 Helpful Content Update and March 2024 Core Update – which reduced “unhelpful” content in the search results by 45%, while simultan

                            SEO Visibility Shifts from Review Sites to eCommmerce & User-Generated Content Sites in 2024
                          • Garbage Collection Without Unsafe Code

                            Many people, including myself, have implemented garbage collection (GC) libraries for Rust. Manish Goregaokar wrote up a fantastic survey of this space a few years ago. These libraries aim to provide a safe API for their users to consume: an unsafe-free interface which soundly encapsulates and hides the library’s internal unsafe code. The one exception is their mechanism to enumerate the outgoing

                            • MLOps roadmap 2024

                              The MLOps engineer role is different from an ML engineer role. Even though the role varies from company to company, in general, ML engineers focus more on bringing individual projects to production, while MLOps engineers work more on building a platform that is used by machine learning engineers and data scientists. To build such platforms, lots of different skills are required. Here is a roadmap

                                MLOps roadmap 2024
                              • [Multi-AS Segment Routing 検証連載 #15] IGP Flexible Algorithm Interoperability Updates - NTT Communications Engineers' Blog

                                サマリ 概要 Multi-vendor Flex-Algorithm 動作確認検証 1. リンクに対するメトリックの定義 2. リンクに対する color の定義 3. FAD の設定 4. Algorithm に参加するための設定 5. FAD の確認 6. BGP Import ポリシーの設定と確認 7. traceroute による VPN の通信経路確認 まとめ サマリ Flexible Algorithm による VPN 経路の TE を SR OS で実現 IOS XR + Junos + SR OS の Multi-vendor 環境で TE と Delay metric を含めた Algorithm の定義と動作検証に成功 この記事は Multi-AS SR 検証連載の第 15 回です。目次は こちら 概要 イノベーションセンターの吉田 晴信です。 普段の業務では Mult

                                  [Multi-AS Segment Routing 検証連載 #15] IGP Flexible Algorithm Interoperability Updates - NTT Communications Engineers' Blog
                                • Memory Profiling Part 1. Introduction | Easyperf

                                  Subscribe to my newsletter, support me on Patreon or by PayPal donation. I would love to hear your feedback! I wrote this blog series for the second edition of my book titled “Performance Analysis and Tuning on Modern CPUs”. It is open-sourced on Github: perf-book. The book primarily targets mainstream C and C++ developers who want to learn low-level performance engineering, but devs in other lang

                                  • 【2023年8月速報】Googleがコアアップデートの展開を開始 -webma-

                                    コアアップデート到来です! 本日2023年8月23日(水)に、Googleはコアアップデートの展開を開始しました。 今回のコアアップデートは、約5ヶ月ぶり、2023年に入って2回目のアップデートです。 この記事では、2023年8月23日時点での速報をお届けします。 2023年8月のコアアップデートがリリース【August 2023 Core Update】Googleは、日本時間午前2時39分にコアアップデートの実施を発表しました。 「Google Search Central」のX(旧Twitter)アカウントで以下のように告知しています。 Today we released the August 2023 core update. We'll update our ranking release history page when the rollout is complete: ht

                                      【2023年8月速報】Googleがコアアップデートの展開を開始 -webma-
                                    • 4 billion if statements

                                      I recently stumbled upon this screenshot while researching social media on the train. Of course, it was followed by a cascade of spiteful comments, criticizing this fresh programmer’s attempt to solve a classical problem in computer science. The modulus operation. Now, in a world where AI is replacing programmers by the minute, taking their jobs and revolutionizing the way we think about code, may

                                      • You Don't know Jack about Application Performance - ACM Queue

                                        May 24, 2023 Volume 21, issue 2 PDF You Don't know Jack about Application Performance Knowing whether you're doomed to fail is important when starting a project. David Collier-Brown You can't just measure a program's performance, Dave. You have to run a benchmark! That's what I hear all the time when I ask about the performance of some program. Well, it's only sort of true. If you want to know at

                                        • What's New in DevTools (Chrome 118)  |  Blog  |  Chrome for Developers

                                          New section for custom properties in Elements > Styles The Elements panel now supports the @property CSS at-rule. It lets you define CSS custom properties explicitly and register them in a stylesheet without running any JavaScript. To inspect your registered custom properties, in Elements > Styles, hover over the property name and see its descriptors in a tooltip. In the tooltip, click the link to

                                            What's New in DevTools (Chrome 118)  |  Blog  |  Chrome for Developers
                                          • From the river to the sea - Wikipedia

                                            Map showing Israel and the Palestinian Territories as outlined by the Oslo Accords. The Jordan River is on the right, and the Mediterranean Sea is on the left. "From the river to the sea" (Arabic: من النهر إلى البحر, romanized: min an-nahr ʾilā l-baḥr; Palestinian Arabic: من المية للمية, romanized: min il-ṃayye la-l-ṃayye, lit. 'from the water to the water')[1][2] is a political phrase that refers

                                              From the river to the sea - Wikipedia
                                            • 世界一わかりやすいゼロ知識証明 Vol.1: A Gentle Primer on Ethereum

                                              執筆に際して、フィードバックとレビューをしてくださった堤隆道さんに感謝します。 Special thanks to Takamichi Tsutsumi for feedback and review. 1. はじめに 「すべて偉大なものは単純である。」 『音と言葉』・フルトヴェングラー 日本語で書かれた技術系記事の課題 トピックに限らず、日本語で特定の技術に関して検索をかけると、検索結果が英語での検索に比べて圧倒的に少ないことに加えて、検索結果の99%は以下のいずれかに該当することがわかるでしょう。 幅広い読者層を意識するあまり、解説が表面的すぎる 解説自体は詳しいが、数学や技術に偏りすぎていて、読者層が限定される 海外の有名な記事の直訳 検索結果の絶対量については、テクノロジー分野が英語圏を中心として発展してきたことに起因するため、日本語化に至るまでに多少のタイムラグがあるのは仕方がな

                                              • Vector databases (1): What makes each one different?

                                                Yahoo! JapanThere’s clearly a LOT of activity in the Bay Area, California when it comes to vector databases! Also, there’s a large amount of variation in funding and valuations, and it’s clear that there exists no correlation between the capabilities of a database and the amount it’s funded for. Choice of programming language#Fast, responsive and scalable databases are typically written these days

                                                • Databases in 2023: A Year in Review | OtterTune

                                                  I am starting this new year the same way I ended the last: taking antibiotics because my biological daughter brought home a nasty sinus bug from Carnegie Mellon’s preschool. This was after my first wife betrayed me and gave me COVID. Nevertheless, it is time for my annual screed on last year’s major database happenings and trends since a lot has happened. My goal is to keep my trenchant opinions f

                                                    Databases in 2023: A Year in Review | OtterTune
                                                  • RWKV-World-V2をPythonから日本語で操作する|shi3z

                                                    RKWV-World-V2の出来があまりにも良いのでPythonで使う方法をメモっておきます。 基本的にこのGradioの内容をいつものLLMベンチマークの形式にしただけ import os, gc, copy, torch from datetime import datetime from huggingface_hub import hf_hub_download from pynvml import * ctx_limit = 2000 title = "RWKV-5-World-1B5-v2-20231025-ctx4096" os.environ["RWKV_JIT_ON"] = '1' os.environ["RWKV_CUDA_ON"] = '1' # if '1' then use CUDA kernel for seq mode (much faster) from r

                                                      RWKV-World-V2をPythonから日本語で操作する|shi3z
                                                    • Evolving the Go Standard Library with math/rand/v2 - The Go Programming Language

                                                      The Go Blog Evolving the Go Standard Library with math/rand/v2 Russ Cox 1 May 2024 Since Go 1 was released in March 2012, changes to the standard library have been constrained by Go’s compatibility promise. Overall, compatibility has been a boon for Go users, providing a stable base for production systems, documentation, tutorials, books, and more. Over time, however, we’ve realized mistakes in th

                                                        Evolving the Go Standard Library with math/rand/v2 - The Go Programming Language
                                                      • Flow field pathfinding

                                                        You may know me for my interactive tutorials. But before that, I was writing visual but non-interactive tutorials. In particular, there wasn't a lot of information about A* on the web, so I decided to collect all my notes about pathfinding together in one place in the 1990s. But then in the 2010s I started making interactive pages. The newer pages are narrower in scope; I covered a broader set of

                                                        • Flash Attentionを使ってLLMの推論を高速・軽量化できるか? - Qiita

                                                          概要 Optimizing your LLM in production こちらのHugging Faceのブログ記事では大規模言語モデル(LLM)に関する色々な技術が紹介されているのですが、その中でHugging Face形式のモデルのattentionをFlash Attentionに置き換える簡単な方法も紹介されていたので、日本語LLMで試してみました。推論速度およびGPUメモリ消費量が改善するかを検証しています。 Flash Attention 近年の深層学習モデルでは、LLMはもちろん画像・音声などの他の分野でもTransformerアーキテクチャがデファクトスタンダードとなっています。 Transformerアーキテクチャの中でコアとなるのが、Scaled Dot-Product Attention (SDPA)です。SDPAの解説は世にあふれているので詳細は他に譲りますが、S

                                                            Flash Attentionを使ってLLMの推論を高速・軽量化できるか? - Qiita
                                                          • Modular Crypt Format — Passlib v1.7.4 Documentation

                                                            Modular Crypt Format¶ A explanation about a standard that isn’t See also Deprecated (as of 2016) in favor of the PHC String Format In the opinion of the main Passlib author, the modular crypt format (described below) should be considered deprecated when creating new hashes. The PHC String Format is an attempt to specify a common hash string format that’s a restricted & well defined subset of the M

                                                            • アルゴリズムによる価格操作が独占禁止法に違反している場合があるとFTCが警告

                                                              アメリカ連邦取引委員会(FTC)がアルゴリズムを使用した価格操作について「違法な場合がある」と述べ、どのようなアルゴリズムの使用が違法になるのかというガイドラインを提供しました。 Price fixing by algorithm is still price fixing | Federal Trade Commission https://www.ftc.gov/business-guidance/blog/2024/03/price-fixing-algorithm-still-price-fixing アメリカ合衆国の不動産賃貸市場においては、クライアントから「実際の賃料」「空室情報」「改修予定」などのデータを収集してベストな価格戦略を提案するアプリケーションの使用が広まっています。今回FTCが違法だと認定したのは価格戦略の算出において他のクライアントのデータを使用するアプリケーシ

                                                                アルゴリズムによる価格操作が独占禁止法に違反している場合があるとFTCが警告
                                                              • Threadsのアルゴリズムについてのメモ

                                                                この「MAU 1.5億」という数字は他の主要 SNS と比較するとまだ数分の一程度の規模ではあるものの、徐々に無視できないサイズになってきている。2024年2月の段階で1.3億だったので1ヶ月あたり1,000万人増のハイペース。Threads は2023年7月のリリースなので、わずか3四半期で1.5億の規模まで成長したことになる。 ちなみに偉大な先輩というか元ネタである X (旧Twitter) に目を向けてみると、2024年3月の時点で DAU が2.5億、MAU は5.5億という規模感なので両者のあいだにはまだ 3倍以上の開きがあるわけだが、Threads が順調に利用者を伸ばしている一方で、X は公表している数字に1年以上変化がなく、横ばいの状態がつづいているようだ。

                                                                  Threadsのアルゴリズムについてのメモ
                                                                • Application Load Balancer でmTLSを使ってTLSクライアント認証をやってみた トラストストア検証編 #AWSreInvent | DevelopersIO

                                                                  Application Load Balancer でmTLSを使ってTLSクライアント認証をやってみた トラストストア検証編 #AWSreInvent ロードバランサー側でクライアント証明書の検証をしたい こんにちは、のんピ(@non____97)です。 皆さんはロードバランサー側でクライアント証明書の検証をしたいなと思ったことはありますか? 私はあります。 re:Invent 2023期間中のアップデートでALBがmTLSをサポートしました。これによりクライアント認証が簡単に行えるようになります。 早速DevelopersIOでも記事が挙がっていますね。 上述の記事ではパススルー構成を試しています。パススルー構成はALBのバックエンド側でクライアント証明書を検証するパターンです。 個人的にはできれば、面倒なクライアント証明書の検証はALBにオフロードしたいところです。 そんな願いを叶え

                                                                    Application Load Balancer でmTLSを使ってTLSクライアント認証をやってみた トラストストア検証編 #AWSreInvent | DevelopersIO
                                                                  • 新たなモジュール型マルウェア「RatelS」に見るPlugXの面影 | LAC WATCH

                                                                    ラックの脅威分析チームは、2023年3月頃から、日本国内の組織を対象とした標的型攻撃を複数観測しています。 この攻撃は、中国圏を拠点とする攻撃者グループによるものとみられ、モジュール型の新しいマルウェア「RatelS」が利用されていました。RatelSは、他のRATと同様に侵入組織の端末を遠隔操作し、機密データを窃取することができるマルウェアです。また、RatelSを解析してみると、このマルウェアにはPlugXのコードや機能などにいくつかの類似点があることが判明しました。 そこで今回は、PlugXの後継とも考えられる、モジュール型マルウェアRatelSについて詳しく紹介します。 攻撃の概要 RatelSは、図1に示すフローで、DLLサイドローディングを悪用して実行されます。正規の実行ファイルによって読み込まれたRatelS Loader(VERSION.dll)は、実行ファイルと同じディレ

                                                                      新たなモジュール型マルウェア「RatelS」に見るPlugXの面影 | LAC WATCH
                                                                    • 第209回 MySQLのALTER TABLEステートメント実行時の注意点 | gihyo.jp

                                                                      今回はALTER TABLEステートメント実行時の注意点について紹介します。 MySQLを運用していると、サービスの仕様変更や新機能のために既存のテーブルに対してテーブル定義を変更することが多いと思います。その際によく起こる問題や注意点に説明します。 ALTER TABLEステートメント まずは、簡単にALTER TABLE ステートメントについて紹介します。テーブル定義を変更するにはALTER TABLEステートメントを利用します。MySQL 5.6以降からInnoDBのテーブルにおいて、オンラインDDLが可能になっています。本連載においても第30回 InnoDBオンラインDDLについてにて紹介しています。 オンラインDDLでは、DDL実行に最小限の時間のロックを取得することで、そのDDLと並列で実行されるDMLの待機も最小限になります。そのため、サービス無停止でALTER TABLEス

                                                                        第209回 MySQLのALTER TABLEステートメント実行時の注意点 | gihyo.jp
                                                                      • 深層学習と新しい心理学(明治学院大学 研究員:池田功毅、九州大学准教授:山田祐樹、慶応義塾大学教授:平石界) |「こころ」のための専門メディア 金子書房

                                                                        深層学習と新しい心理学(明治学院大学 研究員:池田功毅、九州大学准教授:山田祐樹、慶応義塾大学教授:平石界) 近年の深層学習(ディープラーニング)の発展には目を見張るものがあります。この発展の前で心理学は、何ができるのでしょうか? 深層学習技術が発展した世界における新しい心理学の可能性について、お三方の先生にご執筆いただきました。 科学的な心理学の目標は、心を科学的に理解・予測し、その成果を社会に役立てていくことだと言われます (e.g. 鹿取 et al., 2020)[1]。しかしこの記事の著者である私たちは、当の心理学者であるにもかかわらず、ここのところ再現可能性危機やらエビデンスレベルやらと、心理学の科学性やその社会的役割について疑問を呈し、不安を感じさせるような議論ばかり行ってきました (池田 & 平石, 2016; 平石, 2022; 平石 & 中村, 2022; 山田, 20

                                                                          深層学習と新しい心理学(明治学院大学 研究員:池田功毅、九州大学准教授:山田祐樹、慶応義塾大学教授:平石界) |「こころ」のための専門メディア 金子書房
                                                                        • Linuxのメモリ割り当てアルゴリズムを追う Buddy Memory Allocation編

                                                                          はじめに この記事はコネヒトAdvent Calendar2023の5日目の記事です。 世界中で広く使われているLinuxがどのようなメモリ割り当てアルゴリズムを使って物理メモリを管理しているのか、その仕組みには以前から興味がありました。 そこで、Linuxでメモリ割り当てアルゴリズムとして使用されている、Buddy Memory AllocationとSlab Allocationを自作しているOSに実装したのですが、日本語の記事や情報があまりなく実装するのに結構時間がかかってしまいました。(両者とも日本語版Wikipediaにすら載っていませんでした)なので、日本語の情報が少ないのならばこの機会に残しておこうと思い、この記事を書くことにしました。 本記事では、Buddy Memory Allocationに焦点を当て、その仕組みを紹介していきたいと思います。 ↓ 後編の記事です 前提

                                                                            Linuxのメモリ割り当てアルゴリズムを追う Buddy Memory Allocation編
                                                                          • Making a Secure Chat in Rust

                                                                            PreludeHello! Today, we are going to make a secure chat in Rust. “Secure” means that we don’t want attackers/eavesdroppers to be able to find out the contents of our messages (privacy), and we also want to make sure that we know who we’re talking to on the other side (authentication). To do this, we are going to use some common cryptographical concepts. I’ll explain all the cryptographical concept

                                                                            • githublog/2024/5/10/cordic.md at main · francisrstokes/githublog

                                                                              This post is an adaptation of a twitter thread I put together a few days ago. CORDIC is an algorithm for computing trig functions like sin, cos, tan etc on low powered hardware, without an FPU (i.e. no floating point) or expensive lookup tables. In fact, it reduces these complex functions to simple additions and bit shifts. I'll cut right to the chase and tell you why I love this algorithm so much

                                                                                githublog/2024/5/10/cordic.md at main · francisrstokes/githublog
                                                                              • How Google is killing independent sites like ours - HouseFresh

                                                                                Google regularly launches updates to its algorithm to continuously improve search results quality. Think of these updates as a refresh of the system where rankings change: some websites see an improvement while others see a decline. At HouseFresh, we keep an eye on Google’s news and documentation because these updates can literally make or break ... Read more

                                                                                  How Google is killing independent sites like ours - HouseFresh
                                                                                • Text Editor Data Structures: Rethinking Undo

                                                                                  Undo and redo have been a staple operation of text editors probably since the first typo was ever made, yet there has not been a lot of innovation around refining the idea of what undo and redo could be. Let’s explore what I mean… On The Subject of Undo Undo In order to understand how to change undo we first need to understand what the fundamental operation of ‘undo’ is supposed to do. I have alwa

                                                                                    Text Editor Data Structures: Rethinking Undo