Rahul Gopinath
rahul@gopinath.org
Lecturer at the University of Sydney, Australia. ശ്രീദേവി's Dad. I work in the junction between Software Engineering and Cybersecurity. Interested in Program Analysis, Automatic Repair, Mutation Analysis, Specification Mining, Grammar Based Generators and Parsing. My website is at https://rahul.gopinath.org

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

image.png 60.11 KB

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).

I will be giving a lecture at the Fuzzing Summerschool at NUS, Singapore

https://bsky.app/profile/mrigger.bsky.social/post/3lgb6rp22zs2l #Fuzzing #SoftEng 

My student @MaxCamillo (of GDBFuzz fame) passed his PhD exam today and will henceforth be known as Dr. Eisele. Congratulations!

My student Björn Mathis passed his PhD exam today! In his work, he developed new methods for fuzzing and analyzing parsers, mining input grammars, and more: scholar.google.com/citations?u

My talk "How to Compare Fuzzers" at SAPLING'24 yesterday is available on line here #SoftwareEnginnering #MutationTesting #Fuzzing

image.png 863.41 KB

I will be giving a talk at SAPLING'24 at ANU Canberra on comparing fuzzers. If you are at Canberra, please do drop in, and say Hi.

How is the participation in Activitpub vs Bluesky these days? Has Bluesky [actually won]? Any one has an insight into what is the status now?

@prophet asked this on X.

"i'm going to regret asking, but does anyone have a *rigorous* definition of strong/weak typing as orthogonal to static/dynamic? specifically, if your explanation contains the term "type conversions", please explain what that means, especially in dynamically typed languages"

I wonder if a software testers perspective can help here. For me, a strong test suite is the one that finds most bugs. Assuming that the most significant source of error is simply mistyping the intended code while programming, we can leverage mutation analysis to estimate the strength of a test suite.  That is, the strongest test suite is the one that identifies a difference between the original program, and the most number of mutants (one token variants), and the weakest one is the one that is unable to distinguish any variant from the original.

Transplanting that to type systems, I wonder if I can say: The strongest type is the type that eliminates (makes it impossible to represent) the most number of variants to the original program.