Making a low level Linux debugger, part 3: our first program
This continues a series where we make a debugger and live editor for (re)creating assembly and C programs.
The latest blog posts to take off on Hacker News. 21,834 posts.
This continues a series where we make a debugger and live editor for (re)creating assembly and C programs.
Remember that famous hack for approximating y = x −1/2 from Quake III? It goes like this:
I read a post online recently about how some software engineer was asked to complete a technically complex, jargon-filled coding challenge over the...
OfferZen flips the normal recruitment model around, so instead of applying for jobs, companies send you interview requests with upfront salary.
The SPA path is dark and full of terrors. You can bravely fight those… or choose a different path that takes you to a similar destination…
How to combine Minecraft and the Wolfram Language, both standard on Raspberry Pi, to make interesting structures, add character capabilities or render your own output in 3D. Clear instructions on installation, using the MinecraftLink library, building, reacting to events.
(Originally published on CACM blog.) Most of the world programs in a very strange way. Strange to me. I usually hear the reverse question: people ask us, the Eiffel community, to explain why we program our way. I hardly understand the question, because the only mystery is how anyone can even program in any other …
Here's something you didn't know about bash functions. Usually when you write a function you do this: function name () { ... } Right? I know you do, because that's how everyone writes functions. Well, here's the thing. In bash { ... } doesn't mean "function's body" or "function's scope" as in JavaScript or C. It's...
I’ve been digging into .NET Internals for a while now, but never really looked closely at how the ‘Just-in-Time’ (JIT) compiler works. In my mind, the interaction between the .NET Runtime and the JIT has always looked like this:
A WebAssembly benchmark for browser vendors to test a real-world production application.
Tap, Click, Launch
Why? Because it's awesome. Sometimes a project comes along that is impossibly ...
Quote: if you DO want to get performance from changing mallocs, make sure to test them with your own app Another Quote: in our humble opinion, overall winner...
With the external release of OCaml 4.07.0 imminent, we in Jane Street’s Tools & Compilers group have been planning what we want to work on for inclusion ...
The mobile team at Udacity recently removed the last features in our apps using React Native. Here's what worked and what didn't.
Hello, friends! Long time no blog!I'm still here hacking away on JRuby for the benefit of Rubyists everywhere, usually slogging through compatibility fixes and new Ruby features. However with the release of JRuby 9.2, we've caught up to Ruby 2.5 (the current release) and I'm spending a little time on performance.I…
Rules of optimization: 1) Design for performance from day 1 2) Profile often 3) Be vigilant on performance regressions 4) Understand the data 5) Understand the HW 6) Help the compiler 7) Verify your assumptions Performance is everyone's responsibility https://t.co/CwwJffnHGz
Pipelines - a guided tour of the new IO API in .NET, part 1 (part 2 here) About two years ago I blogged about an upcoming experimental IO ...
Haskell’s State monad has a shameful secret. It’s not a monad [ State monads don’t respect the monad laws in Haskell, Simon Marlow ] . Look:
A pointer references a location in memory and dereferencing a pointer refers to the lookup of the value of the memory location the pointer references. The value of a pointer is a memory address. The C standard does not define the representation of a memory address. This is crucial since not every architecture makes…
A couple weeks ago, Galois and Immunant launched c2rust. Since I wrote one of the best-known C-to-Rust translation tools (Corrode), and since I worked for Ga...
In Visual Studio 2017 release 15.8 Preview 3 we’re announcing support for Just My Code stepping for C++. In addition to previously supported callstack
Josef “Jeff” Sipek's Blahg
For an upcoming project, I need to extract level data from the classic 1985 video game Super Mario Bros (SMB) . More precisely, I want to extract the background imagery for each stage of the game, excluding HUD elements and moving sprites, etc.