This action will delete this post on this instance and on all federated instances, and it cannot be undone. Are you certain you want to delete this post?
This action will delete this post on this instance and on all federated instances, and it cannot be undone. Are you certain you want to delete this post?
This action will block this actor and hide all of their past and future posts. Are you certain you want to block this actor?
This action will block this object. Are you certain you want to block this object?


A Simple Runtime Invariant Miner: A tutorial on how to build a Daikon like program invariant miner for Python.

At ICST workshops today, giving a keynote on how test generation and dynamic analysis will boost AI agents: https://conf.researchr.org/details/ise-2026/ise-2026/1/The-power-of-experimentation

A tutorial of the #RPNI algorithm for inferring regular input grammars when given only accepted and rejected examples (positive and negative examples). I had posted the L* algorithm before.
This is part of my ongoing effort to document various algorithms relating to grammars including various algorithms for parsing, random sampling of fixed size strings, and grammar fuzzing.
Note: Pyodide takes a little time to initialize, but it should be faster to initialize than spinning up the binder service from Jupyter (but slower to execute).
https://rahul.gopinath.org/post/2025/10/24/rpni-learning-regular-languages/



I am at São Paulo attending ISSRE'25If you are around, please come, say "Hi" :)


Honors! Today at #ICSE2025, I received the #ACM #SIGSOFT Influential Educator Award “for significant contributions and important innovations in automated software engineering education” (such as https://fuzzingbook.org). Thanks to all!

I am reviewing a student transcript from Xi'an International University. Has any one taken this particular course before?


Reading John Ousterhout's conversation with "Uncle Bob", regarding long methods, I do see value in shorter methods for a reason that does not seem to be mentioned here. Given a long method, typical languages do not allow me to reason about what part of the method state (all variables that have been declared so far in that method) has an impact on a given section of the code. The larger the code section, the larger the cognitive burden. When I break up a large function into smaller functions even if those functions are not used elsewhere, I provide a contract that none of these variables that are not in the function have an impact on the function, and none of the variables that are declared within the function have an impact outside this function. This allows me to reduce my cognitive load.

Should I trust Adobe Acrobat or Latex?
For 12pt Latex article
\documentclass[12pt]{article}
\usepackage{times}This is what Adobe shows (11.96pt).