並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 263件

新着順 人気順

runtime error python exampleの検索結果1 - 40 件 / 263件

  • 【2020年】CTF Web問題の攻撃手法まとめ - こんとろーるしーこんとろーるぶい

    はじめに 対象イベント 読み方、使い方 Remote Code Execution(RCE) 親ディレクトリ指定によるopen_basedirのバイパス PHP-FPMのTCPソケット接続によるopen_basedirとdisable_functionsのバイパス JavaのRuntime.execでシェルを実行 Cross-Site Scripting(XSS) nginx環境でHTTPステータスコードが操作できる場合にCSPヘッダーを無効化 GoogleのClosureLibraryサニタイザーのXSS脆弱性 WebのProxy機能を介したService Workerの登録 括弧を使わないXSS /記号を使用せずに遷移先URLを指定 SOME(Same Origin Method Execution)を利用してdocument.writeを順次実行 SQL Injection MySQ

      【2020年】CTF Web問題の攻撃手法まとめ - こんとろーるしーこんとろーるぶい
    • Announcing AWS Lambda Function URLs: Built-in HTTPS Endpoints for Single-Function Microservices | Amazon Web Services

      AWS News Blog Announcing AWS Lambda Function URLs: Built-in HTTPS Endpoints for Single-Function Microservices Organizations are adopting microservices architectures to build resilient and scalable applications using AWS Lambda. These applications are composed of multiple serverless functions that implement the business logic. Each function is mapped to API endpoints, methods, and resources using s

        Announcing AWS Lambda Function URLs: Built-in HTTPS Endpoints for Single-Function Microservices | Amazon Web Services
      • KeyTrap (CVE-2023-50387)を検証してみた - knqyf263's blog

        DNSは趣味でやっているだけですし有識者のレビューを経ているわけでもないので誤りを含むかもしれませんが、DNS界隈には優しい人しかいないのできっと丁寧に指摘してくれるはずです。 追記:めちゃくちゃ丁寧にレビューしていただいたので修正いたしました。森下さんほどの方に細かく見ていただいて恐れ多いです...(学生時代に某幅広合宿で森下さんの発表を見てDNSセキュリティに興味を持った) 4万文字を超える大作、おつかれさまです。わかりやすく書けていると思いました。 ざっと読んで、コメントしてみました。ご参考まで。https://t.co/bVj5WeFHQr https://t.co/ku5NOx6ua8— Yasuhiro Morishita (@OrangeMorishita) 2024年2月19日 要約 背景 詳細 DNSSECとは? DNSSECの可用性 鍵タグの衝突 攻撃内容 SigJam

          KeyTrap (CVE-2023-50387)を検証してみた - knqyf263's blog
        • 大実験!ChatGPTは競プロの問題を解けるのか (2024年5月版) - E869120's Blog

          1. はじめに 2024 年 5 月 14 日、OpenAI 社から新たな生成 AI「GPT-4o」が発表され、世界に大きな衝撃を与えました。これまでの GPT-4 よりも性能を向上させただけでなく1、音声や画像のリアルタイム処理も実現し、さらに応答速度が大幅に速くなりました。「ついにシンギュラリティが来てしまったか」「まるで SF の世界を生きているような感覚だ」という感想も見受けられました。 しかし、いくら生成 AI とはいえ、競技プログラミングの問題を解くのは非常に難しいです。なぜなら競技プログラミングでは、問題文を理解する能力、プログラムを実装する能力だけでなく、より速く答えを求められる解法 (アルゴリズム) を考える能力も要求されるからです。もし ChatGPT が競技プログラミングを出来るようになれば他のあらゆるタスクをこなせるだろう、と考える人もいます。 それでは、現代最強の

            大実験!ChatGPTは競プロの問題を解けるのか (2024年5月版) - E869120's Blog
          • Chromium にコントリビュートするための周辺知識 | blog.jxck.io

            Intro Chromium にコントリビュートするためには、ソースコードを理解する以外にも、もろもろ必要な周辺知識がある。 ドキュメントはかなり整備されている方ではあるが、そのドキュメントにたどり着くのが難しい場合もある。 レビュアーなどが親切に教えてくれるものをローカルにメモしているが、それも散らばってきたため、ここにまとめることにする。 まずは初期状態で公開するが、どんどん更新していき、長くなっても分割しないで追記を繰り返そうと考えている。 関連サイト 始めて取り組もうとすると、まずどこを見ればわからないところから始まる。 似たようないくつかのサイトがあり、使い分けがされているからだ。 code search https://source.chromium.org/chromium/chromium/src コードをインタラクティブに検索するためのサイト Workspace 風の U

              Chromium にコントリビュートするための周辺知識 | blog.jxck.io
            • PerlからGoへのシステム移行のアシスト 〜Perl XSとUnix Domain Socketを活用〜 - Mirrativ Tech Blog

              こんにちは ハタ です。 Mirrativ では 2020年頃から サーバサイドの技術をPerlからGoへのシステム移行 を行っており、2024年現在でもサグラダファミリアのように移行作業は継続しています PerlとGoという2つの環境を同時に運用していますが、 基本的には 新機能は Go で実装 し、 Perlでは積極的に新規実装を行わない というスタイルで進めていました しかし、既存の機能の一部に手を加えたいとなった場合、まだまだ Perl の実装に手を加えることが一定あり、Perl から Go の機能を呼び出したいというニーズが出てきました (配信やギフトといったビジネスの根幹を支えるレガシーな実装においては顕著) そこで PerlXS を利用することで Perl から Go を直接呼び出せるようにできないかと考え検証を進めることにしました Goの -buildmode=c-shar

                PerlからGoへのシステム移行のアシスト 〜Perl XSとUnix Domain Socketを活用〜 - Mirrativ Tech Blog
              • Building a tiny Linux from scratch

                Last week, I built a tiny Linux system from scratch, and booted it on my laptop! Here’s what it looked like: Let me tell you how I got there. I wanted to learn more about how the Linux kernel works, and what’s involved in booting it. So I set myself the goal to cobble together the bare neccessities required to boot into a working shell. In the end, I had a tiny Linux system with a size of 2.5 MB,

                  Building a tiny Linux from scratch
                • Agentic Coding Recommendations

                  written on June 12, 2025 There is currently an explosion of people sharing their experiences with agentic coding. After my last two posts on the topic, I received quite a few questions about my own practices. So, here goes nothing. Preface For all intents and purposes, here’s what I do: I predominently use Claude Code with the cheaper Max subscription for $100 a month 1. That works well for severa

                    Agentic Coding Recommendations
                  • AWS 環境の可視化を加速する Diagram-as-code とAmazon Bedrockの活用 | Amazon Web Services

                    Amazon Web Services ブログ AWS 環境の可視化を加速する Diagram-as-code とAmazon Bedrockの活用 「このシステム、全体像を見せてもらえますか?」この質問に即座に対応できる組織はどれくらいあるでしょうか。 多くの AWS ユーザーが直面している課題の一つが、インフラストラクチャの可視化です。AWS リソースの構築は Infrastructure as Code (IaC) を実現する AWS CloudFormation や AWS CDK などの発展により自動化が進んだ一方で、それらの構成図を作成する工程は依然として人の手に委ねられていることが多いのが現状です。 以下のような課題を抱えているチームは少なくないでしょう: AWS CloudFormation で管理している本番環境の構成図が古いままで、実態と合っていない 開発環境、ステージ

                      AWS 環境の可視化を加速する Diagram-as-code とAmazon Bedrockの活用 | Amazon Web Services
                    • The Prompt Engineering Playbook for Programmers

                      Developers are increasingly relying on AI coding assistants to accelerate our daily workflows. These tools can autocomplete functions, suggest bug fixes, and even generate entire modules or MVPs. Yet, as many of us have learned, the quality of the AI’s output depends largely on the quality of the prompt you provide. In other words, prompt engineering has become an essential skill. A poorly phrased

                        The Prompt Engineering Playbook for Programmers
                      • GitHub - modelcontextprotocol/servers: Model Context Protocol Servers

                        Official integrations are maintained by companies building production ready MCP servers for their platforms. 21st.dev Magic - Create crafted UI components inspired by the best 21st.dev design engineers. 2slides - An MCP server that provides tools to convert content into slides/PPT/presentation or generate slides/PPT/presentation with user intention. ActionKit by Paragon - Connect to 130+ SaaS inte

                          GitHub - modelcontextprotocol/servers: Model Context Protocol Servers
                        • OOP: the worst thing that happened to programming

                          > BTC: bc1qs0sq7agz5j30qnqz9m60xj4tt8th6aazgw7kxr ETH: 0x1D834755b5e889703930AC9b784CB625B3cd833E USDT(Tron): TPrCq8LxGykQ4as3o1oB8V7x1w2YPU2o5n Ton: UQAtBuFWI3H_LpHfEToil4iYemtfmyzlaJpahM3tFSoxomYQ Doge: D7GMQdKhKC9ymbT9PtcetSFTQjyPRRfkwTdismiss OOP: the worst thing that happened to programming [2/24/2025] In this article, we will try to understand why OOP is the worst thing that happened to prog

                            OOP: the worst thing that happened to programming
                          • Fish 4.0: The Fish Of Theseus

                            About two years ago, our head maintainer @ridiculousfish opened what quickly became our most-read pull request: #9512 - Rewrite it in Rust Truth be told, we did not quite expect that to be as popular as it was. It was written as a bit of an in-joke for the fish developers first, and not really as a press release to be shared far and wide. We didn’t post it anywhere, but other people did, and we go

                            • Rustで将棋の局面画像生成、そしてCDN Edgeで動的生成 - すぎゃーんメモ

                              背景 先行・類似事例 自作のメリット Rustで局面画像生成 盤・駒画像の素材 画像処理 入出力 Generatorと下準備 Publish Web Appで使う CDN Edgeで動かす wasm-packでWebAssembly作成 Deno Deploy Vercel Edge Functions Cloudflare Workers Fastly Compute@Edge その他 まとめ Repository 背景 ATrium という AT Protocol のためのライブラリを自作している が、まったくドッグフーディングしていなかった ので、Blueskyに詰将棋の問題を放流するBotを作ってみることにした gfx氏が作ったBot を参考に というわけで、詰将棋の問題の局面を画像で投稿したい が、あまり自分好みの画像を生成できるライブラリやWebサービス等がない ので、結局それ

                                Rustで将棋の局面画像生成、そしてCDN Edgeで動的生成 - すぎゃーんメモ
                              • プロと読み解くRuby 4.0 NEWS - STORES Product Blog

                                プロと読み解くRuby 4.0 NEWS テクノロジー部門技術推進グループの笹田(ko1)と遠藤(mame)です。Ruby (MRI: Matz Ruby Implementation、いわゆる ruby コマンド) の開発をしています。お金をもらって Ruby を開発しているのでプロの Ruby コミッタです。 本日 12/25 に、恒例のクリスマスリリースとして、Ruby 4.0.0 がリリースされました(Ruby 4.0.0 リリース | Ruby)。今年も STORES Product Blog にて Ruby 4.0 の NEWS.md ファイルの解説をします(ちなみに、STORES Advent Calendar 2025 の記事になります。他も読んでね)。NEWS ファイルとは何か、は以前の記事を見てください。 プロと読み解く Ruby 2.6 NEWS ファイル - クック

                                  プロと読み解くRuby 4.0 NEWS - STORES Product Blog
                                • research!rsc: Coroutines for Go

                                  This post is about why we need a coroutine package for Go, and what it would look like. But first, what are coroutines? Every programmer today is familiar with function calls (subroutines): F calls G, which stops F and runs G. G does its work, potentially calling and waiting for other functions, and eventually returns. When G returns, G is gone and F continues running. In this pattern, only one fu

                                  • サーバレスにおけるRustについて - NTT docomo Business Engineers' Blog

                                    この記事は、 NTT Communications Advent Calendar 2023 22日目の記事です。 はじめに こんにちは、イノベーションセンターの鈴ヶ嶺です。普段は、クラウド・ハイブリッドクラウド・エッジデバイスなどを利用したAI/MLシステムに関する業務に従事しています。 本記事は、各クラウドベンダーのサーバレスにおけるプログラミング言語Rustについて調査・比較した結果を紹介します。 まず初めにサーバレスでRustを利用するメリットをエネルギー効率の観点から説明し、次に各クラウドベンダーの関連記事をピックアップします。 さらに、それぞれのクラウドでRustを使ったサーバレスアプリの代表的な作成方法を紹介して比較します。 Rustのエネルギー効率 Rustは、次の公式ページでも宣伝している通りパフォーマンスを強くアピールしています。 Rustは非常に高速でメモリ効率が高く

                                      サーバレスにおけるRustについて - NTT docomo Business Engineers' Blog
                                    • AWS Security Hub の通知を Amazon Bedrock を使ってアクショナブルにしてみた - カミナシ エンジニアブログ

                                      どうもセキュリティエンジニアの西川です。これがきっと私にとっての今年最後のブログです。今年の AWS re:Invent は自身の登壇があったのでほとんど楽しめませんでした。悔しいのでこうしてブログを帰ってきてからいくつか書いています。カミナシのメンバーの中で私と CTO だけは自腹で AWS re:Invent へ参加していますが、来年の飛行機もすでにとっていたりします。来年ラスベガスでお会いしましょう。 AWS re:Invent の中でもたくさんの Generative AI のセッションがありました。私自身はほとんど参加していなかったのですが、Generative AI の GameDay に出たことをきっかけに Generative AI 意外と難しくないなと思い、Security Hub の通知をアクショナブルに変えてエンジニアの誰しもが対応できるようにしてみようと思ったのが本

                                        AWS Security Hub の通知を Amazon Bedrock を使ってアクショナブルにしてみた - カミナシ エンジニアブログ
                                      • Corepackを使ってNode.jsをアップデートする ⬆️⬆️

                                        Corepackを使ってNode.jsをアップデートする ⬆️⬆️ 自己紹介 Name : azu Twitter : @azu_re Website: Web scratch, JSer.info [.background-color: #FFFFFFF] Node.js 14は2023年4月でEOL Node.js 14.xは2023-04-30、Node.js 16.xは2023-09-11でEOL(End Of Life) 2023年10月からはNode.js 18と20のみがLTSとしてサポートされるバージョンとなる https://github.com/nodejs/release#release-schedule サマリ Node.jsのバージョンアップは面倒だけど ほとんどのBREAKING CHANGEはライブラリにある npmのバージョンアップは面倒 npm 6とnpm

                                        • PacketProxyで探るGemini CLIのコンテキストエンジニアリング 〜AIエージェントを信頼できる相棒に〜 | BLOG - DeNA Engineering

                                          2025.07.18 技術記事 PacketProxyで探るGemini CLIのコンテキストエンジニアリング 〜AIエージェントを信頼できる相棒に〜 by akira.kuroiwa #gemini-cli #ai #security #ai-agent #context-engineering #packetproxy 「なんかよく分からないけど、すごい」で終わらせないために こんにちは、DeNA セキュリティ技術グループの 黒岩 亮 ( @kakira9618 ) です。 AIエージェント、とくに Gemini CLI のようなコーディングを支援してくれるツールは非常に強力で、私たちの開発体験を大きく変えようとしています。しかし、その一方で、こんな風に感じたことはありませんか? 「このファイルの情報、勝手にAIに送られたりしない? 大丈夫かな?」 と、情報管理・セキュリティ面で漠然と

                                            PacketProxyで探るGemini CLIのコンテキストエンジニアリング 〜AIエージェントを信頼できる相棒に〜 | BLOG - DeNA Engineering
                                          • Rust で作る Step Functions が何でこけたかわかる君 - エムスリーテックブログ

                                            こんにちは、AI・機械学習チームの苅野です。エムスリーに転職してそろそろ一ヶ月、今日も楽しくコードを書いています。 この記事では仕事の合間に作った Rust 製の CLI を紹介します。AWS Step Functions のステートマシンが途中で実行に失敗した時に何が原因で何回失敗したかを数えることができます。 とあるプロダクトでの Step Functions Run Task 失敗に対応する Step Functions が何でこけたか一目でわかる CLI を作る その前に: Rust で書いてどうだったか dialoguer でターミナルからステートマシンを選ぶ AWS SDK for Rust でステートマシンの一覧や実行履歴を取得する AWS SDK for Rust をテストする AWS SDK for Rust の tips We are hiring! とあるプロダクトで

                                              Rust で作る Step Functions が何でこけたかわかる君 - エムスリーテックブログ
                                            • LogLog Games

                                              The article is also available in Chinese. Disclaimer: This post is a very long collection of thoughts and problems I've had over the years, and also addresses some of the arguments I've been repeatedly told. This post expresses my opinion the has been formed over using Rust for gamedev for many thousands of hours over many years, and multiple finished games. This isn't meant to brag or indicate su

                                              • Announcing .NET 10 - .NET Blog

                                                Today, we are excited to announce the launch of .NET 10, the most productive, modern, secure, intelligent, and performant release of .NET yet. It’s the result of another year of effort from thousands of developers around the world. This release includes thousands of performance, security, and functional improvements across the entire .NET stack-from languages and developer tools to workloads-enabl

                                                  Announcing .NET 10 - .NET Blog
                                                • Tales of the M1 GPU - Asahi Linux

                                                  Hello everyone, Asahi Lina here!✨ marcan asked me to write an article about the M1 GPU, so here we are~! It’s been a long road over the past few months and there’s a lot to cover, so I hope you enjoy it! What’s a GPU?You probably know what a GPU is, but do you know how they work under the hood? Let’s take a look! Almost all modern GPUs have the same main components: A bunch of shader cores, which

                                                    Tales of the M1 GPU - Asahi Linux
                                                  • WebAssembly: Docker without containers!

                                                    This is a companion article to a talk about Docker+WebAssembly that we gave at "Docker Community All Hands 7, Winter Edition" on Dec 15th, 2022. Introduction Recently Docker announced support for WebAssembly in cooperation with WasmEdge. This article will explain what is WebAssembly, why it is relevant to the Docker ecosystem and provide some hands-on examples to try on. We assume you are familiar

                                                      WebAssembly: Docker without containers!
                                                    • A Guide to Claude Code 2.0 and getting better at using coding agents

                                                      Table of Contents Intro Why I wrote this post The Map is not the territory This post will help you keep up in general Lore time - My Love and Hate relationship with Anthropic Timeline My Codex era Anthropic Redemption Arc + Regaining mandate of heaven Why Opus 4.5 feels goooood This post is not sponsored Pointers for the technically-lite The Evolution of Claude Code Quality of life improvements in

                                                        A Guide to Claude Code 2.0 and getting better at using coding agents
                                                      • What We Learned from a Year of Building with LLMs (Part I)

                                                        It’s an exciting time to build with large language models (LLMs). Over the past year, LLMs have become “good enough” for real-world applications. The pace of improvements in LLMs, coupled with a parade of demos on social media, will fuel an estimated $200B investment in AI by 2025. LLMs are also broadly accessible, allowing everyone, not just ML engineers and scientists, to build intelligence into

                                                          What We Learned from a Year of Building with LLMs (Part I)
                                                        • Rewriting the Ruby parser

                                                          At Shopify, we have spent the last year writing a new Ruby parser, which we’ve called YARP (Yet Another Ruby Parser). As of the date of this post, YARP can parse a semantically equivalent syntax tree to Ruby 3.3 on every Ruby file in Shopify’s main codebase, GitHub’s main codebase, CRuby, and the 100 most popular gems downloaded from rubygems.org. We recently got approval to merge this work into C

                                                            Rewriting the Ruby parser
                                                          • Prototyping in Rust | corrode Rust Consulting

                                                            Programming is an iterative process. As much as we would like to come up with the perfect solution from the start, it rarely works that way. Good programs often begin as quick prototypes. While many experiments remain prototypes, the best programs can evolve into production code. Whether you’re writing games, CLI tools, or designing library APIs, prototyping helps tremendously in finding the best

                                                              Prototyping in Rust | corrode Rust Consulting
                                                            • Go is still not good

                                                              Previous posts Why Go is not my favourite language and Go programs are not portable have me critiquing Go for over a decade. These things about Go are bugging me more and more. Mostly because they’re so unnecessary. The world knew better, and yet Go was created the way it was. For readers of previous posts you’ll find some things repeated here. Sorry about that. Error variable scope is forced to b

                                                              • PHP is Legacy, in 2024

                                                                A trained actor with a dissertation on standup comedy, I came into PHP development via the meetup scene. You can find me speaking and writing on tech, or playing/buying odd records from my vinyl collection. Ready to start building?Experience seamless connectivity, real-time messaging, and crystal-clear voice and video calls-all at your fingertips. Subscribe to Our Developer NewsletterSubscribe to

                                                                  PHP is Legacy, in 2024
                                                                • Choosing the right solution for AWS Lambda external parameters | Amazon Web Services

                                                                  AWS Compute Blog Choosing the right solution for AWS Lambda external parameters This post is written by Thomas Moore, Solutions Architect, Serverless. When using AWS Lambda to build serverless applications, customers often need to retrieve parameters from an external source at runtime. This allows you to share parameter values across multiple functions or microservices, providing a single source o

                                                                    Choosing the right solution for AWS Lambda external parameters | Amazon Web Services
                                                                  • Run WebAssemblies in VS Code for the Web

                                                                    June 5, 2023 by Dirk Bäumer VS Code for the Web (https://vscode.dev) has been available for some time now and it has always been our goal to support the full edit / compile / debug cycle in the browser. This is relatively easy for languages like JavaScript and TypeScript since browsers ship with a JavaScript execution engine. It is harder for other languages since we must be able to execute (and t

                                                                      Run WebAssemblies in VS Code for the Web
                                                                    • Announcing TypeScript 4.8 - TypeScript

                                                                      Today we’re excited to announce the release of TypeScript 4.8! If you’re not yet familiar with TypeScript, it’s a language that builds on JavaScript and adds syntax for types. These types let you put your expectations and assumptions into your code, and those assumptions can then be checked by the TypeScript type-checker. This checking can help avoid typos, calling uninitialized values, mixing up

                                                                        Announcing TypeScript 4.8 - TypeScript
                                                                      • Announcing TypeScript 5.2 - TypeScript

                                                                        Today we’re excited to announce the release of TypeScript 5.2! If you’re not familiar with TypeScript, it’s a language that builds on top of JavaScript by making it possible to declare and describe types. Writing types in our code allows us to explain intent and have other tools check our code to catch mistakes like typos, issues with null and undefined, and more. Types also power TypeScript’s edi

                                                                          Announcing TypeScript 5.2 - TypeScript
                                                                        • The yaml document from hell

                                                                          written by Ruud van Asseldonk published 11 January 2023 For a data format, yaml is extremely complicated. It aims to be a human-friendly format, but in striving for that it introduces so much complexity, that I would argue it achieves the opposite result. Yaml is full of footguns and its friendliness is deceptive. In this post I want to demonstrate this through an example. This post is a rant, and

                                                                          • Gamedev in Lisp. Part 1: ECS and Metalinguistic Abstraction - cl-fast-ecs by Andrew

                                                                            Gamedev in Lisp. Part 1: ECS and Metalinguistic Abstraction In this series of tutorials, we will delve into creating simple 2D games in Common Lisp. The result of the first part will be a development environment setup and a basic simulation displaying a 2D scene with a large number of physical objects. It is assumed that the reader is familiar with some high-level programming language, has a gener

                                                                              Gamedev in Lisp. Part 1: ECS and Metalinguistic Abstraction - cl-fast-ecs by Andrew
                                                                            • Elasticsearch Query Language (ES|QL) now generally available - Elasticsearch Labs

                                                                              Want to get Elastic certified? Find out when the next Elasticsearch Engineer training is running! Elasticsearch is packed with new features to help you build the best search solutions for your use case. Dive into our sample notebooks to learn more, start a free cloud trial, or try Elastic on your local machine now. Today, we are pleased to announce the general availability of ES|QL (Elasticsearch

                                                                                Elasticsearch Query Language (ES|QL) now generally available - Elasticsearch Labs
                                                                              • TypeScript and the dawn of gradual types

                                                                                The FullScreenMario project burned brightly for a few short weeks in October 2013 after Boing Boing lauded it as “a pretty impressive example of what HTML5, in-browser functionality can do.” A few days later, it went viral on Reddit and by November, attention turned to scrutiny, and Nintendo took the project down with a DMCA request. Josh Goldberg speaks of his former project with a bit of pride—i

                                                                                  TypeScript and the dawn of gradual types
                                                                                • kyju.org - Piccolo - A Stackless Lua Interpreter

                                                                                  Piccolo - A Stackless Lua Interpreter 2024-05-01 History of piccolo A "Stackless" Interpreter Design Benefits of Stackless Cancellation Pre-emptive Concurrency Fuel, Pacing, and Custom Scheduling "Symmetric" Coroutines and coroutine.yieldto The "Big Lie" Rust Coroutines, Lua Coroutines, and Snarfing Zooming Out piccolo is an interpreter for the Lua language written in pure, mostly safe Rust with a