logoalt Hacker News

mtlynchyesterday at 5:23 PM1 replyview on HN

> For me, using Fuzzilli for testing a Zig code is not fuzzing, it's integration testing. If you're running code externally (e.g. wrapping binary) you cannot guarantee that side effect isn't caused by IO. I consider fuzzing a low level activity with many external variables removed.

I've never heard anyone restrict the definition of "fuzzing" in this way. If I repeatedly generate inputs to a program and then run the program with those inputs, that's fuzzing. It doesn't matter if there's IO or not.

> Depending on where you are and how you communicate semantics matter more or less. It's very similar to compiler/transpiler. E.g. TypeScript "Compiler" is called compiler but in fact it's transpiler (it emits other high-level language as a result).

It's still a compiler. It translates code from one language to another. You can argue whether we need the term "transpiler," but a source-to-source compiler is a compiler.


Replies

ffsm8yesterday at 5:37 PM

> You can argue whether we need the term "transpiler," but a source-to-source compiler is a compiler.

That's true today, but compiling was historically was defined as getting source code (human readable) to bytecode (machine runnable without an interpreter).

Some people didn't like that definition, and consequently the waters have been murkied. Just like with eg crypto. Or real time.

show 1 reply