Profile

Cover photo
John Regehr
Works at University of Utah
Attended University of Virginia
Lives in Salt Lake City
972 followers|446,929 views
AboutPostsPhotosVideosReviews

Stream

John Regehr

Shared publicly  - 
 
Nice! SLC continues to approach being a real city!
 
A few weeks ago, I learned that there's a bike path to the Salt Lake Airport, which is about 9 miles from my house.

This week, I had a short plane trip, so I decided to try out getting there by bike.

It worked very well!

Most of the route is pretty good, and there's some decent bike parking at the airport (tons of racks, covered, in an area with security cameras). The time from my house is a bit faster than taking public transit. It took a bit more planning than usual, because I had to worry about things like not taking bike tools that wouldn't be allowed on the plane, etc. I packed entirely in my pannier / messenger bag so that I didn't end up with a sweaty backpack.

It was pretty great, on the way back, to get in some physical exercise after sitting on a plane for hours.

I'm not going to do this every time I fly, but I will definitely do it again.
11 comments on original post
6
Jeff Erickson's profile photo
 
Wait... There's a bike path to Charles de Gaulle?
Add a comment...

John Regehr

Shared publicly  - 
 
I have a program that implements a search using unix fork(). The search tree is maybe 30-40 forks deep. Without throttling, it's just a forkbomb that kills the host machine, so I'm in search of a good way to throttle it.

One way is, following each fork, for the parent to wait() for the child. This works fine and gives the invariant that there's almost always exactly one runnable process.

But what I want is the invariant that there are always N runnable processes, where N is the number of cores I have. For reasons I don't entirely understand, I'm having trouble getting this to work. Obvious tricks with a semaphore initialized to N don't work.

Anyone know the solution I'm looking for here?  Thanks!
1
Paul Menage's profile photoAndrew Hunter's profile photoJohn Regehr's profile photo
39 comments
 
If you run the LLVM verifier, it aborts when opt-fuzz creates an invalid function, in which case the atexit handler won't bump the semaphore. I'm still trying to figure out a reasonable way to work around that problem. 

This generator is kind of stupid but in conjunction with another tool, has lead to the discovery of several nasty LLVM optimization bugs.
Add a comment...

John Regehr

Shared publicly  - 
 
I learned most of what I know about static analysis from these notes. They're refreshingly direct and clear (unfortunately much of the other material on this topic isn't).
 
Our lecture notes on static program analysis are now online - with implementation and exercises.
View original post
10
Add a comment...

John Regehr

Shared publicly  - 
 
IBM note explaining their opposition to removing trigraphs from C++. 

"The future is already here — it's just not very evenly distributed."

http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n4210.pdf
6
2
John Regehr's profile photoAndrew Hunter's profile photoDaniel Lemire's profile photoPhil Miller's profile photo
8 comments
 
It's not that programmers who face compiler bugs are 'so good', or that we suspect the compiler before our own code. It's that we're writing inherently intricate code, with lots of low-level interactions.

When something goes unexpectedly wrong, we investigate in depth, and find that expectations of the compiler don't square with what it's done.

In some cases, that means we eventually look at the generated assembly code, and see a mismatch with the source that doesn't arise from undefined or implementation-defined behavior in the relevant standard. E.g. Intel's compiler 'optimizing' a simple call to strrchr() to an inlined infinite loop. E.g. IBM's compiler emitting undefined linker references to symbols that the source code doesn't depend on.

In other cases, one compiler rejects code that others accept, and the standards say it should have too. E.g https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57743
Add a comment...

John Regehr

Shared publicly  - 
 
 
From the "you just can't make this up"-department.
"Star Wars" fans are being warned away from several locations in Tunisia linked to the movies due to reported jihadist activity. Tataouine, which inspired the name of Luke Skywalker's home planet of Tatooine, has become a way-station fo...
1 comment on original post
2
Add a comment...
In his circles
344 people
Have him in circles
972 people
jaenuri peje's profile photo
Uendjisuvera Kazondunge's profile photo
Veditor Mouse's profile photo
ECE Utah's profile photo
International Journal of School and Cognitive Psychology's profile photo
Matheus Almeida's profile photo
Alaa Alemam's profile photo
Eric Decker's profile photo
manu delab's profile photo

John Regehr

Shared publicly  - 
 
 
Looking for a postdoc in software verification and analysis. Please spread the word.
More info: http://soarlab.org/positions/
Postdoc Position in Software Verification and Analysis. Applications are invited for a postdoctoral position in the Software Analysis Research Lab (SOARlab), School of Computing, University of Utah. The position is primarily tied to two projects on verification of operating systems code, ...
View original post
1
Add a comment...

John Regehr

Shared publicly  - 
 
 
Would you like to see what happens when modernist gourmet experts get hella high?

http://www.chefsteps.com/activities/behind-the-scenes-waffle-iron-frenzy
1 comment on original post
2
Add a comment...

John Regehr

Shared publicly  - 
 
 
What is C in practice? (Cerberus survey): Analysis of Responses. Kayvan Memarian and Peter Sewell. University of Cambridge. 2015-06-21. In April-June 2015 we distributed a web survey to investigate what C is, in current mainstream practice: the behaviour that programmers assume they can rely on, ...
View original post
7
Add a comment...

John Regehr

Shared publicly  - 
 
Nothing is better than these recipes created by a recurrent neural network.
6
John Regehr's profile photoSean McDirmid's profile photo
9 comments
 
+John Regehr Did you check out the RNN generated Linux code?
Add a comment...

John Regehr

Shared publicly  - 
 
Chandan Dalawat originally shared to Maths Articles:
 
The shortest paper ever ?

Bull. Amer. Math. Soc. 72 1966 1079.

http://www.ams.org/journals/bull/1966-72-06/S0002-9904-1966-11654-3/home.html
2 comments on original post
27
2
Robert Rambusch's profile photo
 
+1 for CDC 6600 - Good times.
Add a comment...
People
In his circles
344 people
Have him in circles
972 people
jaenuri peje's profile photo
Uendjisuvera Kazondunge's profile photo
Veditor Mouse's profile photo
ECE Utah's profile photo
International Journal of School and Cognitive Psychology's profile photo
Matheus Almeida's profile photo
Alaa Alemam's profile photo
Eric Decker's profile photo
manu delab's profile photo
Education
  • University of Virginia
    CS, 1995 - 2001
  • Kansas State University
    CS and math, 1990 - 1995
Basic Information
Gender
Male
Apps with Google+ Sign-in
  • Monument Valley
Work
Employment
  • University of Utah
    prof, 2001 - present
Places
Map of the places this user has livedMap of the places this user has livedMap of the places this user has lived
Currently
Salt Lake City
Links
They know meat and care about meat and it is awesome
Public - a week ago
reviewed a week ago
Public - 7 months ago
reviewed 7 months ago
I lived in Morocco for three years and loved the food, which is as good here as it is there.
Public - 11 months ago
reviewed 11 months ago
8 reviews
Map
Map
Map
At night I dream of the kimchi soup!
Public - 2 months ago
reviewed 2 months ago
24 beers on tap, mostly from outside France. If you want an imperial stout or a barley wine in Paris this is the place.
Public - 9 months ago
reviewed 9 months ago
Great
Public - 11 months ago
reviewed 11 months ago