Hi folks,
I was inspired by Ksplice's recent article on traceroute [1] to write my
own traceroute in Perl 6 - but came upon problems in that the current
socket library does not seem to be complete enough.
I'd love to submit some patches for this, but after briefly discussing
this with pmichaud in #perl6 [2] it sounds like I should ask here first
for a little bit of guidance.
My current plan is to extend Parrot with the necessary functions (I've
done getprotobyname to get my feet wet so far, but there are others such
as setsockopt that need to be added) and then write Perl 6 code for
this. pmichaud suggests this is not done inside Raduko, but as a
separate module. I'm a little unsure about this though, as IO::Socket::*
is already core - and that seems to be the correct place to be adding
most of these functions. I added my "getprotobyname" implementation as a
core subroutine, as it is in Perl 5 - but that also may not be the
correct approach (maybe IO::Socket should export that).
Please advise, I'm eager to get hacking on this :)
--
[1]:
http://blog.ksplice.com/2010/07/learning-by-doing-writing-your-own-traceroute-in-8-easy-steps/
[2]: http://irclog.perlgeek.de/perl6/2010-08-01#i_2649053