More Related Content
More from Jesse Vincent(16)
OSCON 2011 - Perl 5.16 and beyond
- 14. I just stand around
looking pretty...
Friday, July 29, 11
- 17. Are you a
CPAN author?
Friday, July 29, 11
- 43. It used to take us 3
weeks to prepare
a release
Friday, July 29, 11
- 46. The 43 step process is
documented
Friday, July 29, 11
- 48. Now we have rotating
release engineers
Friday, July 29, 11
- 51. Since the move to git,
we’ve nearly doubled
our committer list
Friday, July 29, 11
- 53. Some of those release
engineers have become
prolific contributors
Friday, July 29, 11
- 55. I try to get them right
Friday, July 29, 11
- 56. Sometimes
they’re wrong
Friday, July 29, 11
- 57. I have a little
bit of cover
Friday, July 29, 11
- 84. What I lack is a
flame-proof suit.
Friday, July 29, 11
- 85. If I’d talked about my
vision 2 years ago...
Friday, July 29, 11
- 89. New versions of Perl
shouldn’t break your
existing software
Friday, July 29, 11
- 90. Old syntax and
semantics can’t stop
Perl 5 from evolving
Friday, July 29, 11
- 91. We need to be able to
make mistakes
as we rebuild Perl 5
Friday, July 29, 11
- 92. We will
make mistakes
as we rebuild Perl 5
Friday, July 29, 11
- 94. We have
made mistakes
as we’ve rebuilt Perl
Friday, July 29, 11
- 95. We need to be able to
recover from mistakes
as we rebuild Perl
Friday, July 29, 11
- 98. It should be possible
to build more of Perl
in Perl
Friday, July 29, 11
- 100. Not just on every kind
of hardware
Friday, July 29, 11
- 105. How do we get there?
Friday, July 29, 11
- 106. New versions of Perl
shouldn’t break
existing software
Friday, July 29, 11
- 107. Old syntax and semantics
must not stop Perl 5
from evolving
Friday, July 29, 11
- 108. When your code runs,
you have no idea
what semantics it’ll see
Friday, July 29, 11
- 109. You need to jump
through defensive
hoops.
Friday, July 29, 11
- 112. “Can I have a Perl that’s
5.14 or newer?”
Friday, July 29, 11
- 119. “I want a Perl that
works like 5.16”
Friday, July 29, 11
- 121. Perl should give you
semantics as close as
possible to what you
request
Friday, July 29, 11
- 122. New features
should not work
under ‘use v5.$older;’
Friday, July 29, 11
- 126. We need
Rule 2
Friday, July 29, 11
- 133. If you declare an old
version, you get old
syntax and semantics
Friday, July 29, 11
- 136. We can get far closer
than we do now
Friday, July 29, 11
- 138. We will break
backward compatibility
in limited circumstances
Friday, July 29, 11
- 141. A lot of hard work
Friday, July 29, 11
- 145. Our current
deprecation cycle
is 1 year
Friday, July 29, 11
- 151. If it still works in old
code, we can change it
with no deprecation cycle
Friday, July 29, 11
- 152. Some old misfeatures
need to come out lest
they block significant
improvements
Friday, July 29, 11
- 153. If we can’t emulate the
old feature for old
code, we need a longer
deprecation cycle
Friday, July 29, 11
- 154. “It dies in code that
declares ‘use v5.16’”
Friday, July 29, 11
- 159. We haven’t just been
deprecating and yanking
broken old features
Friday, July 29, 11
- 162. This has started to hurt
users who wrote code
with “no non-core deps”
Friday, July 29, 11
- 163. We need to make it
easier to ship two
flavors of Perl 5
Friday, July 29, 11
- 171. One of the points of
doing this is to
clean up the core
Friday, July 29, 11
- 173. Perl is a big language
Friday, July 29, 11
- 178. We’re ok, but not
amazing at core
language dev
Friday, July 29, 11
- 180. How do we make Perl
a smaller language?
Friday, July 29, 11
- 185. Lots of stuff in perl isn't
necessarily part of
Perl 5 the Language
Friday, July 29, 11
- 186. This stuff is part of
Perl 5 the chainsaw
Friday, July 29, 11
- 192. Unix user & group
information functions
Friday, July 29, 11
- 198. That bit about “forcing
a version declaration”
Friday, July 29, 11
- 199. If you don’t, you’ll get
whatever was in 5.14.
Friday, July 29, 11
- 201. As a developer writing
code in Perl 5,
you won’t need to care
Friday, July 29, 11
- 203. In the future we might
fix a bug or two in the
modularized code
Friday, July 29, 11
- 204. You could take the
update without having
to upgrade all of Perl 5
Friday, July 29, 11
- 205. Someday we might
remove things from the
default runtime
Friday, July 29, 11
- 208. That just means you’ll
need to declare you
want an older feature
Friday, July 29, 11
- 218. Perl has a history of
theft from other
languages
Friday, July 29, 11
- 219. Perl has a history of
borrowing from other
languages
Friday, July 29, 11
- 220. We stole
smartmatch
from Perl 6
Friday, July 29, 11
- 222. It’s nearly
impossible
to explain
Friday, July 29, 11
- 223. It’s nearly
impossible
to understand
Friday, July 29, 11
- 224. RJBS (the previous
speaker) proposed a
saner, much less clever,
smart match
Friday, July 29, 11
- 225. I don’t want to break
existing code that uses
smartmatch
Friday, July 29, 11
- 229. He extracted
smartmatch into
an XS module
Friday, July 29, 11
- 232. He implemented
Ricardo’s saner smart
match as an alternative
Friday, July 29, 11
- 233. I’m hoping that 5.16
ships DOY’s
smartmatch
implementations
Friday, July 29, 11
- 236. no “use v5.x;” line
should load the old one
in your scope.
Friday, July 29, 11
- 237. We need a module
hierarchy for such
things in core
Friday, July 29, 11
- 240. We have an
amazing
test suite
Friday, July 29, 11
- 241. Over time, we need to
tease apart (at least)
3 kinds of tests
Friday, July 29, 11
- 245. To hold us to the
compatibility promises
we make, we need a
new test harness
Friday, July 29, 11
- 246. “Run the test suites we
shipped with previous
releases...”
Friday, July 29, 11
- 251. I’m going to be a lot
more skeptical about
new features
Friday, July 29, 11
- 252. ...at least ones that
don’t make it easier to
have fewer features
Friday, July 29, 11
- 259. It may be time to
consider doing away
with some of that
Friday, July 29, 11
- 260. But ONLY if you
declare “use v5.16”
Friday, July 29, 11
- 261. But ONLY if you
declare “use v5.18”
Friday, July 29, 11
- 262. But ONLY if you
declare “use v5.20”
Friday, July 29, 11
- 270. I will not show
you the evil
Friday, July 29, 11
- 274. We should throw
exceptions rather than
just return on failure
Friday, July 29, 11
- 275. I don’t want us to
bikeshed an exception
hierarchy
Friday, July 29, 11
- 276. Heck, I’d be happy if we
started with dying with
well-defined strings
Friday, July 29, 11
- 282. A clean, simple
meta-model with basic
classes and methods
Friday, July 29, 11
- 284. But only if you declare
“use v5.16”
Friday, July 29, 11
- 285. But only if you declare
“use v5.18”
Friday, July 29, 11
- 286. But only if you declare
“use v5.20”
Friday, July 29, 11
- 288. Perl needs to be
cleaner, simpler and
easier to work with
Friday, July 29, 11
- 297. To survive, a desperate
hacker needs to be able
to reimplement Perl 5
Friday, July 29, 11
- 299. How do we make this
happen faster?
Friday, July 29, 11
- 305. Perl 6 is our
precocious
kid sister
Friday, July 29, 11
- 306. I’m happy to talk about
renaming Perl 5...
Friday, July 29, 11
- 307. ...if you write me a
second implementation
that passes the test suite
Friday, July 29, 11