並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 62件

新着順 人気順

javascript compare two stringsの検索結果1 - 40 件 / 62件

  • Bracket pair colorization 10,000x faster

    September 29, 2021 by Henning Dieterichs, @hediet_dev When dealing with deeply nested brackets in Visual Studio Code, it can be hard to figure out which brackets match and which do not. To make this easier, in 2016, a user named CoenraadS developed the awesome Bracket Pair Colorizer extension to colorize matching brackets and published it to the VS Code Marketplace. This extension became very popu

      Bracket pair colorization 10,000x faster
    • Optimizing Javascript for fun and for profit

      I often feel like javascript code in general runs much slower than it could, simply because it’s not optimized properly. Here is a summary of common optimization techniques I’ve found useful. Note that the tradeoff for performance is often readability, so the question of when to go for performance versus readability is a question left to the reader. I’ll also note that talking about optimization n

      • AIエージェントのUXを進化させる「A2UI」でアプリを構築 - Taste of Tech Topics

        こんにちは。大塚です。 普段は生成AIを利用したサービスの開発に携わっているのですが、直近の仕事では、数理最適化の手法を扱う機会がありました。 実は、大学の授業で数理最適化をかじっており、教授がよく 「人の勘や経験に頼っている部分を数式に落とし込むことで、合理的な意思決定ができるようにしよう。」 といっていたことを思い出しました。 まさに今、それを仕事で実践できており、面白くなってきました。 さて、今回のテーマは最適化ではなく、AIエージェントのUIについてです。 現在の生成AIアプリのUIといえば、「チャット」形式がほとんどの状況だと思いますが、チャットのアプリは汎用的な一方で、入力を制御したり、画像や動画の表示が難しかったりと、限界を感じることってありませんか? そんな悩みを解決してくれる、「A2UI(Agent to UI)」という、AIエージェント用のUIプロトコルが、2025年1

          AIエージェントのUXを進化させる「A2UI」でアプリを構築 - Taste of Tech Topics
        • Announcing TypeScript 4.7 - TypeScript

          Today we’re excited to announce the availability of TypeScript 4.7! If you’re not yet familiar with TypeScript, it’s a language that builds on JavaScript and adds syntax for types. Types help describe what kinds of values you’re working with and what kinds of functions you’re calling. TypeScript can use this information to help you avoid about mistakes like typos, missing arguments, or forgetting

            Announcing TypeScript 4.7 - TypeScript
          • 缶つぶし機とソフトウェア移行技術 - Refactoring to Rust の読書感想文 - じゃあ、おうちで学べる

            はじめに ——あるいは、「知っている」と「理解している」の間 Rustのことは、知っていた。学習もしていた。実務でも使っていた。 でも、それは知っているつもりだった。 知ってるつもり 無知の科学 (ハヤカワ文庫NF) 作者:スティーブン スローマン,フィリップ ファーンバック早川書房Amazon 日々Rustで開発し、BoxとRcとArcを使い分け、tokio::spawnでタスクを生成し、?演算子を当たり前のように書いている。FFI?PyO3使えばいいでしょ。WebAssembly?wasm-bindgenがあるじゃない。技術的には、確かに「使える」レベルにはあった。 でも、心のどこかで感じていた違和感があった。 オートバイのエンジンを分解できる人と、エンジンが動く原理を理解している人は違う。コードが動くことと、なぜそう書くべきかを理解することも違う。私は前者だった。メカニックではあった

              缶つぶし機とソフトウェア移行技術 - Refactoring to Rust の読書感想文 - じゃあ、おうちで学べる
            • All JavaScript and TypeScript Features of the last 3 years

              TypeScript as envisioned by Stable DiffusionThis article goes through almost all of the changes of the last 3 years (and some from earlier) in JavaScript / ECMAScript and TypeScript . Not all of the following features will be relevant to you or even practical, but they should instead serve to show what’s possible and to deepen your understanding of these languages. There are a lot of TypeScript fe

                All JavaScript and TypeScript Features of the last 3 years
              • June 2022 (version 1.69)

                Update 1.69.1: The update addresses these issues. Update 1.69.2: The update addresses these issues. Downloads: Windows: x64 Arm64 | Mac: Universal Intel silicon | Linux: deb rpm tarball Arm snap Welcome to the June 2022 release of Visual Studio Code. There are many updates in this version that we hope you'll like, some of the key highlights include: 3-way merge editor - Resolve merge conflicts wit

                  June 2022 (version 1.69)
                • Weird Lexical Syntax

                  I just learned 42 programming languages this month to build a new syntax highlighter for llamafile. I feel like I'm up to my eyeballs in programming languages right now. Now that it's halloween, I thought I'd share some of the spookiest most surprising syntax I've seen. The languages I decided to support are Ada, Assembly, BASIC, C, C#, C++, COBOL, CSS, D, FORTH, FORTRAN, Go, Haskell, HTML, Java,

                    Weird Lexical Syntax
                  • Go 1.21 Release Notes - The Go Programming Language

                    Introduction to Go 1.21 The latest Go release, version 1.21, arrives six months after Go 1.20. Most of its changes are in the implementation of the toolchain, runtime, and libraries. As always, the release maintains the Go 1 promise of compatibility; in fact, Go 1.21 improves upon that promise. We expect almost all Go programs to continue to compile and run as before. Go 1.21 introduces a small ch

                      Go 1.21 Release Notes - The Go Programming Language
                    • AST vs. Bytecode: Interpreters in the Age of Meta-Compilation

                      233 AST vs. Bytecode: Interpreters in the Age of Meta-Compilation OCTAVE LAROSE, University of Kent, UK SOPHIE KALEBA, University of Kent, UK HUMPHREY BURCHELL, University of Kent, UK STEFAN MARR, University of Kent, UK Thanks to partial evaluation and meta-tracing, it became practical to build language implementations that reach state-of-the-art peak performance by implementing only an interprete

                      • Speeding up the JavaScript ecosystem - Rust and JavaScript Plugins

                        Over the past year (2024) there has been a strong movement to rewrite JavaScript tools in Rust to make them faster. Rust is well suited for this as it runs much closer to hardware and doesn't rely on garbage collection. This makes it an ideal candidate for computationally intensive tasks. Linting in its basic form is such a task, as it involves parsing and traversing lots of source code. But there

                          Speeding up the JavaScript ecosystem - Rust and JavaScript Plugins
                        • Announcing TypeScript 4.7 RC - TypeScript

                          Today we’re excited to announce our Release Candidate (RC) of TypeScript 4.7! Between now and the stable release of TypeScript 4.7, we expect no further changes apart from critical bug fixes. To get started using the RC, you can get it through NuGet, or use npm with the following command: npm install typescript@rc You can also get editor support by Downloading for Visual Studio 2022/2019 Following

                            Announcing TypeScript 4.7 RC - TypeScript
                          • A new way to bring garbage collected programming languages efficiently to WebAssembly · V8

                            Show navigation A recent article on WebAssembly Garbage Collection (WasmGC) explains at a high level how the Garbage Collection (GC) proposal aims to better support GC languages in Wasm, which is very important given their popularity. In this article, we will get into the technical details of how GC languages such as Java, Kotlin, Dart, Python, and C# can be ported to Wasm. There are in fact two m

                            • React Labs: What We've Been Working On – March 2023 – React

                              In React Labs posts, we write about projects in active research and development. We’ve made significant progress on them since our last update, and we’d like to share what we learned. React Server Components React Server Components (or RSC) is a new application architecture designed by the React team. We’ve first shared our research on RSC in an introductory talk and an RFC. To recap them, we are

                                React Labs: What We've Been Working On – March 2023 – React
                              • Patterns for Building LLM-based Systems & Products

                                Patterns for Building LLM-based Systems & Products [ llm engineering production 🔥 ] · 66 min read Discussions on HackerNews, Twitter, and LinkedIn “There is a large class of problems that are easy to imagine and build demos for, but extremely hard to make products out of. For example, self-driving: It’s easy to demo a car self-driving around a block, but making it into a product takes a decade.”

                                  Patterns for Building LLM-based Systems & Products
                                • HTML: The Programming Language

                                  Introduction HTML, the programming language, is a practical, turing-complete[1], stack-based programming language based on HTML, the markup language. It uses elements defined in HTML, the markup language, in order to do computations. To give you a sense of what HTML, the programming langauge, looks like, below is a sample program that prints the values from 1 to 10 to standard out (console.log) A

                                  • A Walk with LuaJIT

                                    The following is a chronicle of implementing a general purpose zero-instrumentation BPF based profiler for LuaJIT. Some assumptions are made about what this entails and it may be helpful to read some of our other work in this area. One major change from prior efforts is that instead of working with the original Parca unwinder we are now working with the OpenTelemetry eBPF profiler. If you missed t

                                      A Walk with LuaJIT
                                    • Delimiter-first code

                                      Summary I argue for wider usage of delimiter-first in the code three friends [tic, tac, toe] becomes three friends ・tic ・tac ・toe. A new top-level syntax for programming languages is proposed to show advantages of this method. New syntax is arguably as simple, but more consistent, better preserves visual structure and solves some issues in code formatting. Related: comma-first formatting A well-kn

                                      • Using localStorage in Modern Applications - A Comprehensive Guide | RxDB - JavaScript Database

                                        When it comes to client-side storage in web applications, the localStorage API stands out as a simple and widely supported solution. It allows developers to store key-value pairs directly in a user's browser. In this article, we will explore the various aspects of the localStorage API, its advantages, limitations, and alternative storage options available for modern applications. What is the local

                                          Using localStorage in Modern Applications - A Comprehensive Guide | RxDB - JavaScript Database
                                        • Data Fetching Patterns in Single-Page Applications

                                          When a single-page application needs to fetch data from a remote source, it needs to do so while remaining responsive and providing feedback to the user during an often slow query. Five patterns help with this. Asynchronous State Handler wraps these queries with meta-queries for the state of the query. Parallel Data Fetching minimizes wait time. Fallback Markup specifies fallback displays in marku

                                            Data Fetching Patterns in Single-Page Applications
                                          • Comprehensive guide to JavaScript performance analysis using Chrome DevTools

                                            Comprehensive guide to JavaScript performance analysis using Chrome DevTools Let's see how to navigate the Chrome Devtools Performance tab to effectively analyse and improve the performance of your JavaScript while avoiding common errors. Our use case will be improving the rendering FPS of a real-world canvas library. A few weeks ago a colleague of mine and I were looking at the canvas engine comp

                                              Comprehensive guide to JavaScript performance analysis using Chrome DevTools
                                            • State of Node.js Performance 2023

                                              The year is 2023 and we’ve released Node.js v20. It’s a significant accomplishment, and this article aims to use scientific numbers to assess the state of Node.js’ performance. All the benchmark results contain a reproducible example and hardware details. To reduce the noise for regular readers, the reproducible steps will be collapsed at the beginning of all sections. This article aims to provide

                                              • Why Google Sheets ported its calculation worker from JavaScript to WasmGC  |  web.dev

                                                Google Sheets is one of the first products at Google to use WasmGC on Chrome. The move was announced in 2022, and the Sheets and Chrome teams partnered on standardization, engineering, and tooling to provide real-time feedback on optimizations. This partnership set a precedent for how engineering teams at Google can effectively work with Chrome to have more Google apps running on WasmGC. The chall

                                                  Why Google Sheets ported its calculation worker from JavaScript to WasmGC  |  web.dev
                                                • MAI-Thinking-1: Building a Hill-Climbing Machine

                                                  MAI-Thinking-1: Building a Hill-Climbing Machine The Microsoft AI Team 1 Abstract Progress in AI is driven not by a single model, but by the ability to continually improve upon the current state of models. Achieving this requires treating model development as a system-level optimization problem, for which the solution is building a hill-climbing machine for rapid improvement. Our process includes

                                                  • News from WWDC24: WebKit in Safari 18 beta

                                                    Jun 10, 2024 by Jen Simmons, Jon Davis, Karl Dubost, Anne van Kesteren, Marcos Cáceres, Ada Rose Canon, Tim Nguyen, Sanjana Aithal, Pascoe, and Garrett Davidson ContentsWebXRCSSWeb apps for MacSafari ExtensionsSpatial mediaHTMLMediaWebRTCPasskeysHTTPSJavaScriptWeb APICanvasWebGLWeb InspectorWKWebViewApple PayDeprecationsBug Fixes and moreHelp us Beta TestFeedback The last year has been a great one

                                                      News from WWDC24: WebKit in Safari 18 beta
                                                    • Prettier's CLI: A Performance Deep Dive · Prettier

                                                      Hey, I'm Fabio and I've been contracted by the Prettier team to speed up Prettier's command line interface (CLI). In this post we'll take a look at the optimizations I've discovered, the process that lead to finding them, some exciting numbers comparing the current CLI with the new one, and some guesses about what could be optimized next. Installation​ The new work-in-progress CLI for Prettier has

                                                        Prettier's CLI: A Performance Deep Dive · Prettier
                                                      • Land ahoy: leaving the Sea of Nodes · V8

                                                        V8’s end-tier optimizing compiler, Turbofan, is famously one of the few large-scale production compilers to use Sea of Nodes (SoN). However, since almost 3 years ago, we’ve started to get rid of Sea of Nodes and fall back to a more traditional Control-Flow Graph (CFG) Intermediate Representation (IR), which we named Turboshaft. By now, the whole JavaScript backend of Turbofan uses Turboshaft inste

                                                        • research!rsc: Floating-Point Printing and Parsing Can Be Simple And Fast (Floating Point Formatting, Part 3)

                                                          Introduction A floating point number f has the form f=m·2e where m is called the mantissa and e is a signed integer exponent. We like to read numbers scaled by powers of ten, not two, so computers need algorithms to convert binary floating-point to and from decimal text. My 2011 post “Floating Point to Decimal Conversion is Easy” argued that these conversions can be simple as long as you don’t car

                                                          • V Language Review (2022)

                                                            V is a programming language promising to be “Simple, fast, safe, compiled. For developing maintainable software.” V has a controversial past but what is the state of V in 2022? Is V worth checking out? In this post, we’ll take a look at V as it exists in May 2022. TLDR Read the summary Rules of engagement I’ll be using the current version of V built from git which is 50ab2cfd1ae02d4f4280f38c60b8db

                                                            • Introducing Zod Codecs

                                                              Zod 4.1 introduced a new z.codec() API for defining bi-directional transformations in Zod. The problem with transformsZod's .transform() method is great for one-way data conversion: const stringToNumber = z.string().transform(val => parseFloat(val)); stringToNumber.parse("42"); // 42But what if you need to go both ways? Say, you're storing dates as ISO strings in a database but want to work with D

                                                                Introducing Zod Codecs
                                                              • Short list of C esoterica

                                                                Mini-post: Digraphs and Trigraphs | ENOSUCHBLOG C alternative tokens - Wikipedia Why are there digraphs in C and C++? - Stack Overflow Purpose of Trigraph sequences in C++? A brief description of Normative Addendum 1 Designated initializer # These allow you to specify which elements of an object (array, structure, union) are to be initialized by the values following. The order does not matter! str

                                                                • Unicode is harder than you think · mcilloni's blog

                                                                  Reading the excellent article by JeanHeyd Meneide on how broken string encoding in C/C++ is made me realise that Unicode is a topic that is often overlooked by a large number of developers. In my experience, there’s a lot of confusion and wrong expectations on what Unicode is, and what best practices to follow when dealing with strings that may contain characters outside of the ASCII range. This a

                                                                  • 8.x バリデーション Laravel

                                                                    イントロダクションIntroduction Laravelは、アプリケーションの受信データをバリデーションするために複数の異なるアプローチを提供します。すべての受信HTTPリクエストで使用可能なvalidateメソッドを使用するのがもっとも一般的です。しかし、バリデーションに対する他のアプローチについても説明します。Laravel provides several different approaches to validate your application's incoming data. It is most common to use the validate method available on all incoming HTTP requests. However, we will discuss other approaches to validation as well

                                                                    • Go 1.22 Release Notes - The Go Programming Language

                                                                      Introduction to Go 1.22 The latest Go release, version 1.22, arrives six months after Go 1.21. Most of its changes are in the implementation of the toolchain, runtime, and libraries. As always, the release maintains the Go 1 promise of compatibility. We expect almost all Go programs to continue to compile and run as before. Changes to the language Go 1.22 makes two changes to “for” loops. Previous

                                                                        Go 1.22 Release Notes - The Go Programming Language
                                                                      • bytecode interpreters for tiny computers ⁑ Dercuano

                                                                        Introduction: Density Is King (With a Tiny VM) I've previously come to the conclusion that there's little reason for using bytecode in the modern world, except in order to get more compact code, for which it can be very effective. So, what kind of a bytecode engine will give you more compact code? Suppose I want a bytecode interpreter for a very small programming environment, specifically to minim

                                                                        • I made JSON.parse() 2x faster

                                                                          Part of my job is to make JavaScript things go fast. Speed is a feature, and when working in an interpreted language, squeezing every last bit of performance can be the difference between a great product and unusable garbage. Anyway, how cool would it be to make JavaScript itself go faster? I’m not a C++ programmer, but that didn’t stop me before, so I thought I’d give it a try anyway! The objecti

                                                                            I made JSON.parse() 2x faster
                                                                          • Lit for React Developers  |  Google Codelabs

                                                                            1. Introduction What is Lit Lit is a simple library for building fast, lightweight web components that work in any framework, or with no framework at all. With Lit you can build shareable components, applications, design systems, and more. What you'll learn How to translate several React concepts to Lit such as: JSX & Templating Components & Props State & Lifecycle Hooks Children Refs Mediating St

                                                                            • Next.js vs. Nuxt.js: Ultimate guide - LogRocket Blog

                                                                              Editor’s note: This post was reviewed for accuracy on 21 March 2024 by Oyinkansola Awosan to reflect the current versions of each framework — Next.js 14.1.4 and Nuxt.js 3.11.1 — as well as to specify use cases for each and summarize their similarities and differences in a comparison table. It was last updated on 11 April 2023. You can read more about Nuxt.js and Next.js in our archive. Next.js and

                                                                                Next.js vs. Nuxt.js: Ultimate guide - LogRocket Blog
                                                                              • Using LangChainJS and Cloudflare Workers together

                                                                                We are incredibly stoked that our friends at LangChain have announced LangChainJS Support for Multiple JavaScript Environments (including Cloudflare Workers). During Developer Week 2023 we wanted to celebrate this launch and our future collaborations with LangChain. “Our goal for LangChain is to empower developers around the world to build with AI. We want LangChain to work wherever developers are

                                                                                  Using LangChainJS and Cloudflare Workers together
                                                                                • Thomas Gazagnaire :: A CSS Engine in OCaml

                                                                                  I have rewritten my website in OCaml more times than I can count (from ocaml-cow to Canopy to custom MirageOS unikernels). This time, the styling was the problem: I use Tailwind CSS, and I wanted the entire pipeline (Markdown to styled HTML to CSS) to be a single dune build with no Node.js dependency. That meant porting Tailwind's CSS generation to OCaml. To make sure the port was correct, I neede

                                                                                    Thomas Gazagnaire :: A CSS Engine in OCaml