Timm Murray
Recent Actions
-
Commented on Failed compilations can be partially successful
That could have implications for templating systems that embed Perl directly. They could compile a subroutine that was placed in the template, stick it in the package namespace, and then hit a syntax error later. But other than taking up...
-
Commented on Transpiling JavaScript with Marpa
A minor quibble: could we drop the term "transpiling"? There isn't an interesting distinction between compiling to machine code or a virtual machine versus compiling to a different high-level language. The interesting part happens in the AST; the source and...
-
Posted UAV::Pilot v0.6 Released to Timm Murray
UAV::Pilot version 0.6 is now on CPAN. Lots of little changes this time. The big thing is an API change, where Control::ARDrone and Driver::ARDrone were instead named ARDrone::Control and ARDrone::Driver, respectively. …
-
Commented on Real-Time Web Apps
I'm thinking that WebRTC might replace the cloud hosting services that don't have any server-side storage, provided that peers have a way to discover each other....
-
Posted How UAV::Pilot got Real Time Video, or: So, Would You Like to Write a Perl Media Player? to Timm Murray
We don't usually do video decoding in Perl, but if you're not afraid of getting into xs and a little C code, it's all perfectly do-able. In fact, one of the reasons I wanted to take on the UAV::Pilot project is because I figured it would push me out of my comfort zone and force me to do things…
-
Commented on What if Perl OO was a Core Feature?
Oh, yes, I know about p5-mop and Peter's talk. I just wanted this post to be more of an abstract answer. I was thinking of porting UAV::Pilot from Moose to p5-mop. I haven't made a full-version-number release yet, and I'm...
-
Posted What if Perl OO was a Core Feature? to Timm Murray
Over on Reddit /r/perl, there's a rather blatant troll complaining about the lack of OO as a core feature in Perl. The tone there is clearly not constructive and not worth responding further, but I feel compelled to answer a question: what would be improved if OO was a core feature, rather than…
-
Posted UAV::Pilot Presentation to Timm Murray
Last night, I gave a presentation for the Madison Perl Mongers group on UAV::Pilot. The video is now up:
… -
Posted What's a Trie, and Why Should You Care? to Timm Murray
Continuing my series on underappreciated Perl modules, I introduce Tree::Trie. A Like Hashes, a Trie is a type of dictionary lookup. Unlike Hashes, Tries naturally support sorted return of keys and prefix…
-
Commented on Write GUI faster -> GCL
Android apps have this interesting idea where you can write the GUI layout in XML, and then it's compiled into a Java source file. Your code can grab and manipulate the widgets further from there. Programming it is something like...
-
Posted Underappreciated Perl Modules, UAVs, and Musings on Programming to Timm Murray
In an effort to follow JT's advice about writing something new every day, I've queued up some articles over on my blog. Most of them will be about Perl programming, but also some UAV and Arduino stuff.
="http://www.wumpus-cave.net/2013/08/29/underappreciated-perl-modules-filesharedi…
-
Commented on When "unsafety" is a Good Thing
The specific case I was thinking of happened under Oracle. I know Oracle is a bit of a redheaded stepchild in the Perl community, but we still have to deal with it. The problem did happen with placeholders. DBD::Oracle makes...
-
Commented on When "unsafety" is a Good Thing
I'm going to take the devil's advocate position here. A lot of what type-safe languages do isn't so much about what you put into variables, but about what you do with them. They don't let you take the square root...
-
Commented on A Simple (Minded?) Windows sudo Substitute for Cygwin in Perl
"A simple 'su' substitute" might be more accurate....
-
Posted UAV::Pilot v0.5 Released, Now Supports Real Time Video to Timm Murray
UAV::Pilot, a Perl library for controlling the Parrot AR.Drone, has released version 0.5.
This was the big one. With the ffmpeg library installed, you can decode the h.264 video stream coming right off the drone, in real time. This is where UAV::Pi…
-
Posted UAV::Pilot v0.4 Released, Now Supports Video to Timm Murray
UAV::Pilot, a Perl library for controlling the Parrot AR.Drone, has released version 0.4.
The big change for this update is streaming video to a file. Display in real-time is not yet
implemented--that's coming in 0.5.There are also …
-
Commented on A Fond Farewell to CGI.pm
A lot of people don't seem to realize that CGI.pm replaced a bunch of awful hand-coded solutions. The HTML bits were unnecessary, but parsing CGI params sensibly added a bit of sanity to the early web....
-
Posted Video Encoding Modules? to Timm Murray
I'm putting the final touches on UAV::Pilot v0.3, which will have a better event-driven API and support control through Joysticks and (maybe) Wiimotes.
This brings me to the point on the ="https://github.com/frezik/UAV-Pilot/blob/mas…
-
Posted Announcing: UAV::Pilot v0.2 to Timm Murray
UAV::Pilot, a library for controlling UAVs like the Parrot AR.Drone, has now released version 0.2. Details on my blog.
-
Posted Announcing: UAV::Pilot v0.1 to Timm Murray
UAV::Pilot is a Perl library for controlling UAVs. It currently works with the Parrot AR.Drone, with plans to expand to others in the future.
The current library supports basic commands, such as takeoff, pitch, ro…
-
Commented on SQLite and Writes
Whatever you want to call it, I still don't think it's a good way to do things....
-
Posted SQLite and Writes to Timm Murray
Most DBI tutorials will show you how to use
prepare()
/execute()
. Something like this:my $sth = $dbh->prepare( 'INSERT INTO table (foo, bar) VALUES (?, ?)' ) or die ...; $sth->execute( 1, 2 ) or die ...; $sth->finish;
-
Commented on On the version number succeeding Perl 5
There was a Java 2. It was version 1.2, and it was where Sun put in all the stuff they intended to get done for the first version but ran out of time. Anyway, I agree with the basic premise,...
-
Commented on Perl 5 Porters Weekly: September 3-September 9, 2012
At this point in Perl5's history, is there really much use for prototypes? Everyone has more or less settled on using a hash(ref) for named parameters, and this proposal seems to only cover positional parameters. It's at least ten years...
Comment Threads
-
Ovid commented on
Failed compilations can be partially successful
This is part of the reason Test::Most can die on fail. Years ago I was struggling to figure out a problem where some perfectly sensible code was mysteriously failing a test, but the there appeared to be nothing wrong with the code. As it turns out, at the top of my test, use_ok was also failing, but so many passing tests scrolled past that I didn't see that. I only saw a very mysterious failure at the end. Another programmer and I wasted a lot of time trying to figure out what was wrong, but didn't realize that Perl doesn't clean…
-
brian d foy commented on
Failed compilations can be partially successful
That's why I check the return value of
use_ok()
before I continue. :) -
brian d foy commented on
Failed compilations can be partially successful
Sure it has practical issues. This is how I found out about the issue. :)
-
thetrb commented on
Failed compilations can be partially successful
I like that you can tell Test::Most to die on fail, but don't like that it will still run the subsequent test.
See this pseudo-code where the "run" function dies on all errors:
lives_ok { run("mount server:/abc /mnt/abc") "Mounting";
lives_ok { run("dd if=/dev/zero of=/mnt/abc/file count=1M") } "dd";This will still run the dd and only abort after that. I haven't figured out a good way to deal with that except for adding an "or die ..." after every critical test.
-
thetrb commented on
Failed compilations can be partially successful
I like that you can tell Test::Most to die on fail, but don't like that it will still run the subsequent test.
See this pseudo-code where the "run" function dies on all errors:
lives_ok { run("mount server:/abc /mnt/abc") "Mounting";
lives_ok { run("dd if=/dev/zero of=/mnt/abc/file count=1M") } "dd";This will still run the dd and only abort after that. I haven't figured out a good way to deal with that except for adding an "or die ..." after every critical test.
About blogs.perl.org
blogs.perl.org is a common blogging platform for the Perl community. Written in Perl with a graphic design donated by Six Apart, Ltd.