Lexical tokenization explained while building a lexer for a toy programming language
It's not highly theoretical and walks through actual lexer implementation in code submitted by /u/Xaneris47 [link] [留言]
找到 16010 篇相关文章
It's not highly theoretical and walks through actual lexer implementation in code submitted by /u/Xaneris47 [link] [留言]
DevOps has always evolved with technology. Cloud changed how teams manage infrastructure. Containers changed how applications are deployed. CI/CD changed how software is released. Observability changed how teams monitor systems. Now AI is starting to change DevOps again. The next stage of DevOps is not only automation. It is intelligence. * DevOps Was Built on Automation * Automation is one of the strongest foundations of DevOps. DevOps teams automate: • Builds • Tests • Deployments • Infrastructure provisioning • Monitoring alerts • Rollbacks • Scaling • Security checks This has helped teams deliver software faster and more reliably. But most automation still works through fixed rules. For example: if CPU crosses a threshold, send an alert. If a build passes, deploy to staging. If a container fails, restart it. This works well for known situations. But modern systems are more complex. Microservices, cloud platforms, Kubernetes, APIs, databases, queues, and third-party dependencies create huge amounts of operational data. When something goes wrong, fixed rules are not always enough. * Why Intelligence Matters * Modern DevOps teams do not just need more automation. They need better understanding. AI can help teams identify patterns, detect unusual behavior, summarize logs, group related alerts, and suggest possible causes during incidents. This is where AIOps becomes important. AIOps means using AI for IT operations. It helps DevOps and SRE teams move from reactive operations to smarter operations. Instead of only asking, “What alert fired?” teams can start asking: • What changed recently? • Which services are aff ected? • Are these alerts connected? • Is this behavior unusual? • Has this happened before? • What is the likely root cause? This does not mean AI will replace DevOps engineers. It means AI can support engineers with faster insights. * What This Means for DevOps Engineers * DevOps engineers should pay attention to AI because their role is evolving. Traditi
I Spent Two Weeks Pitting Qwen 3 Max Against DeepSeek V4 I want to tell you about a rabbit hole I fell into recently. It started the way most of my projects do — someone on a Discord server I frequent asked a simple question: "Should I use Qwen 3 Max or DeepSeek V4 for my internal_compare workflow?" I had opinions, sure, but I wanted real numbers. So I cleared my calendar, fired up a couple of GPU instances, and started benchmarking. What I found surprised me, and it also reinforced something I've been saying for years: the open source ecosystem is winning, and the walled gardens of the proprietary AI world are starting to look pretty silly. Let me walk you through what I learned, the actual numbers I got, and why I keep coming back to open weight models with permissive licenses (looking at you, Apache 2.0 and MIT). Why I Care About This in the First Place I've been burned too many times by closed source vendors changing their pricing overnight, deprecating models without warning, or locking features behind enterprise tiers. You know the drill. The moment your application depends on a proprietary API, you're renting infrastructure you can't inspect, can't fork, and can't run on your own hardware. That's not a partnership — that's a leash. When a model ships under Apache or MIT, I can download the weights, audit the architecture, fine-tune it on my own data, and deploy it wherever I want. Nobody can rug-pull me. Nobody can raise prices because some quarterly earnings call didn't go their way. That's freedom, and freedom matters more than people think when you're building anything serious. So when I started this comparison, I was already rooting for the open weight contenders. But I wanted to be honest about the results, even if they complicated my bias. The Lineup I Tested Global API currently exposes 184 models through a single unified endpoint, which is honestly wild. I picked five that I thought represented the interesting tradeoffs between cost, capability, and o
Forward manufacturing RFQs by email, no portals required Discussion | Link
The only AI tool designed specifically for resume writing Discussion | Link
In this session, Sam Newman interviews Kief Morris and Adrian Mouat, both experts in their field. They explore the current reality of security in the container world, how infrastructure automation is impacted by latest trends, and whether platform teams are actually working. submitted by /u/goto-con [link] [留言]
After months of manual trading on Polymarket, I got tired of missing fast momentum moves on BTC, ETH,...
In April, for the first time ever, an Earth observation satellite found what it was looking for, all on its own.
submitted by /u/parametric-ink [link] [留言]
A proposed FCC rule would kill burner phones: phones whose accounts are not attached to a particular person. The FCC plans to do this by legally forcing the country’s telecoms to store a wealth of personal information about essentially all phone customers, including a government issued identification number and their physical address, alarming privacy advocates and civil rights activists who compare the measures to those from authoritarian countries where it can be difficult to buy a mobile phone plan without giving up your identity. The proposed change would drastically shake up how people obtain phone plans in the U.S., and have all sorts of privacy and cybersecurity knock-on effects. The FCC is proposing the data collection partly as a way to combat scammers, with telecoms being required to collect other information on business and foreign customers like the intended use case of their bulk phone plan purchase and their IP address. But the changes would mean telecoms collect data on all new and renewing customers, and the FCC provides a long list of other things that the collected data could help authorities with...
On paper, the Honor Magic V6 sounds like a tremendous leap forward for foldable phones: It's the thinnest one yet, with the biggest battery, and the best water-resistance ever. In practice, only the bigger battery feels like a meaningful improvement. The other upgrades are only fractionally superior to what came before. This isn't entirely Honor's […]
Martin Kleppmann, an associate professor at Cambridge and author of Designing Data-Intensive Applications, discusses the evolution of data systems over the last decade, mainly the shift from monolithic databases to modular building blocks. Kleppmann underlines the importance of moving from cloud-centric data storage systems to decentralised data storage similar to Bluesky’s AT protocol. By Martin Kleppmann
Both kratom and one of its active components, 7-OH, have opioid-like effects and are widely available across the US. As health secretary RFK Jr. aims to get 7-OH banned, proponents of both are fighting.
Even the aging iPhone 11 will feel a little more responsive soon, thanks to improvements in an unsung iOS feature.
A new report warns that Miami, Kansas City, Philadelphia, Dallas, and Houston could be particularly hot places to play during the 2026 World Cup.
In recent months hackers have attempted to extort money from porn stars with big followings, in some cases filling their feeds with pro-MAGA and crypto content.
Vos tests API passent en local. Le vrai enjeu est de les exécuter automatiquement à chaque pull request, fusion et build nocturne, sans clic manuel. Pour cela, vous avez besoin d’un exécuteur CLI : il lance vos tests en mode headless, retourne un code de sortie exploitable par la CI et génère un rapport lisible par votre pipeline. Essayez Apidog aujourd'hui Deux outils reviennent souvent pour ce cas d’usage : le CLI Bruno et le CLI Apidog . Les deux exécutent des tests API depuis GitHub Actions, GitLab CI, Jenkins ou tout environnement Node.js. Les deux font échouer la build lorsqu’un test échoue. La différence principale se situe avant l’exécution : où vivent les tests, comment ils sont créés et comment la CI y accède. Cet article compare les deux outils au niveau commande, avec des exemples directement intégrables dans un pipeline. En bref CLI Bruno ( @usebruno/cli , binaire bru ) exécute des fichiers .bru présents dans votre dépôt Git. Il est open source, fonctionne hors ligne et ne nécessite ni compte ni jeton. CLI Apidog ( apidog-cli , binaire apidog ) exécute des scénarios de test créés visuellement dans Apidog, récupérés par ID avec un jeton d’accès. Les deux génèrent des rapports JUnit, JSON et HTML. Les deux retournent un code non nul en cas d’échec, ce qui permet à la CI de bloquer une fusion ou un déploiement. Choisissez Bruno si vous voulez des tests versionnés comme du code, dans le dépôt. Choisissez Apidog si vous voulez créer, chaîner et exécuter des scénarios visuels sans maintenir manuellement des fichiers de test. Le problème : des tests qui existent mais ne tournent pas Un test API lancé manuellement finit souvent par devenir obsolète. Il a été écrit, validé une fois, puis oublié pendant que l’API évoluait. La solution n’est pas seulement d’ajouter plus de tests. Il faut les exécuter automatiquement à chaque changement avec un signal clair : succès ou échec ; rapport exploitable ; code de sortie lisible par la CI. Un exécuteur CLI doit donc rempli
We Built ARK Because Our Customer Support Was Spread Across 4 Apps The Problem A few months ago, our small team was drowning. Not in customers (well, a little) — but in tabs. WhatsApp open in one window. Instagram DMs in another. A live chat widget buried in a third. Email in a fourth. Every time a customer reached out, someone had to figure out: which channel did this come from, has anyone replied already, and what was the context of the last conversation? The result was predictable: slower replies, repeated questions to customers, and a support workflow that didn't scale past a handful of conversations a day. Why Existing Tools Didn't Fit We looked at the usual suspects — Intercom, Zendesk, Front. They're solid products, but they're built for large support teams with big budgets and dedicated admins. We needed something simpler: a single inbox, AI doing the repetitive work, and a setup that doesn't take weeks to configure. What We Built ARK pulls every customer conversation — WhatsApp, Instagram, Messenger, email, live chat — into one inbox. On top of that, AI handles three things: Drafting replies based on conversation history and context Summarizing long threads so anyone on the team can jump in without reading 40 messages Routing conversations to the right person automatically based on topic or channel The goal wasn't to replace human support — it was to remove the busywork so the team can focus on actually helping people. Where We Are Now ARK is live with a 7-day free trial (auto-renews after that). We're still early, and we're shaping the roadmap based on real feedback from teams managing support across multiple channels. If you're dealing with the same multichannel chaos we were, I'd love to hear how you're handling it — and what's still missing from the tools you've tried. 🔗 https://byark.ai/
Do you really need a full framework to handle a few API endpoints or webhooks? Laravel and Symfony are excellent tools — for large applications. But when you're building a focused microservice, a webhook receiver, or a lightweight REST API, bootstrapping a full-stack framework means carrying hundreds of files, a massive autoloader, and a dependency tree you'll never fully use. That's the problem webrium/core was built to solve: a minimalist, zero-dependency PHP micro-framework written entirely from scratch, designed to stay out of your way. Installation composer require webrium/core That's it. No configuration files to publish, no service providers to register. The Entry Point Every webrium application starts with the same three lines: <?php require_once __DIR__ . '/vendor/autoload.php' ; use Webrium\App ; use Webrium\Route ; App :: initialize ( __DIR__ ); // ... your routes here App :: run (); App::initialize() sets the root path and loads the global helper functions. App::run() initializes error handling and dispatches the current request through the router. Routing The router supports all standard HTTP methods. Route handlers can be closures, a Controller@method string, or an [Controller::class, 'method'] array. Basic routes: Route :: get ( '/status' , fn () => [ 'status' => 'alive' ]); Route :: post ( '/items' , fn () => [ 'created' => true ]); Route :: put ( '/items/{id}' , fn ( $id ) => [ 'updated' => $id ]); Route :: patch ( '/items/{id}' , fn ( $id ) => [ 'patched' => $id ]); Route :: delete ( '/items/{id}' , fn ( $id ) => [ 'deleted' => $id ]); Route handlers return an array — the framework automatically encodes it as JSON and sends the correct Content-Type header. Dynamic parameters: Route :: get ( '/users/{id}/posts/{postId}' , function ( $id , $postId ) { return [ 'user_id' => $id , 'post_id' => $postId , ]; }); Named routes: Route :: get ( '/users/{id}' , fn ( $id ) => [ 'id' => $id ]) -> name ( 'users.show' ); // Generate the URL elsewhere: $url = rout
Hey developers! I have been working on a side project to help people discover the best AI tools in one place. It is a curated directory designed to be clean, fast, and user-friendly. You can check it out live here: GetNexusAI Tech Stack Used: Next.js / React Tailwind CSS Vercel for hosting Why I Built This: Finding the right AI tool among thousands of options can be overwhelming. I wanted to create a simple dashboard where users can easily filter and find exactly what they need without the clutter. I Need Your Help! Since I just launched it, I would love to get your honest feedback: How is the loading speed and UI/UX? What features should I add next (e.g., user reviews, bookmarking tools)? If you have built an AI tool, let me know so I can feature it! Check the website here: https://getnexusai.tech