Traits (ala Scala). ⢠Closures. ⢠Generators (yield statement). ⢠The HipHop VM (hhvm) is fast. ⢠https://github
theorists such as Martin Deutsch and Kurt Lewin. Learning communities also find recent kinship with the social-constructionist view of knowledge and feminist ...
Dec 17, 2010 - contemporary philosophical and political consensus. ..... experiments and innovative practice should be done: in countries, in regions, ... the arts and in music where they are used to describe the ...... The Philippine Supreme ......
Jan 6, 2006 - Gitte Meyer focuses on the part journalists play in connecting ... of reporting â science transmission and investigative journalism â are likely to.
continuously weakening the warrant requirement, should reverse course and ..... warrant requirement); Bradley, supra note 1, at 1468â70 (discussing a lack of ...
May 12, 2018 - us something very important about the evolution of capital and ... ever, what makes the emergence of blockchain technology within ... 2 A 2015 edition of The Economist that focused on blockchain as 'The Trust Machine' was arguably a ..
Aug 22, 2016 - Thus it is not kept front and center in actual physical models, quite unlike ... by a Turing machine; such a theory he calls âmechanicalâ. See also ...
life-stage effects on values and attitudes (Sears, 1981), ..... life places emotion at center stage. ..... imagine that they had just received a telephone call from.
Mar 26, 2008 - tion of Constitutional Law (June 2007), The New England Political Science Association 2007 ..... Discussing proposed federal and state constitutional amendments pur- porting to ban ...... sions to constitutional attack). 97 See ...
Jun 12, 2013 - Abstract: Richard Rorty's Contingency, Irony and Solidarity (CIS) is an ambitious and provocative, but for many readers a deeply flawed work.
Mar 16, 2018 - the enigma of entanglement. Zeilinger notes that: ..it appears that on the level of measurements of prope
Oct 5, 2017 - 3 Center for Philosophy and the Natural Sciences, College of Natural Sciences and Mathematics,. California
May 4, 2018 - CaseToday, grains, spices, nuts, breakfast cereals, dry fruits and vegetables, pasta, noodles, tea, dry herbal products, and other durable.
This report examines how we can help our services firms to become more ... productivity growth in services firms. ...... the biggest impact on the introduction of.
Mar 8, 1997 - landmark decision in United States v. Lopez,[FN1] it .... Lopez, can a court legitimately hold that a particular abortion procedure, performed at a.
defined as public concerns over 'risk', for example, are also animated by public concerns over .... Only then will European policy take 'knowledge society' seriously ..... Distributed innovation is observed in situations where heterogeneous.
May 23, 2007 - Robert Gibbons. Administrative .... Garbage Cans" (Gibbons, 1998a), in which I sketched sev- ...... Bridges, William, and Wayne. Villemez.
Jun 22, 1992 - The topic of Computer Supported Cooperative Work (CSCW) has ... anchored in a framework that pays attention to the computer support ...
For reviews of the literature on bargaining and ulitmatum games, see Alvin E. Roth (1995) and Colin Camerer ...... Bolton, Gary E. and Axel Ockenfels. âERC: A ...
attribute these problems to bad science or the failure to account for the .... ments for fisheries managers to consider economic and social factors when making .... Rules also create incentives to engage in various forms of cheating behavior such as
theory of rational addiction and its variants model well-informed and ... that their model implies that addicts ''would be even more unhappy if they were prevented ..... for their future life exhausting all gains from all trade-offs across time and .
A FrameWorks Institute eZine. Taking Tone Seriously as a Frame Cue. In the last few years, FrameWorks has added "tone" t
len and her colleagues [Spencer, Dineva, & Schöner, 2009a; Thelen & Smith, ..... sense of the directional flow of development [Overton, 1991; Tolman, 1991; ...
community applicable to relatively densely populated urban areas, such as a city? Are there ...... results. A list of the twenty-three cities that have developed some sort of sustainability initiative .... Milwaukee to 30 in Seattle, as shown in Tabl
The Case Against PHP (2). ⢠Schizophrenia about value/reference semantics. /*. * Probably copy $a into foo's 0'th para
TAKING PHP SERIOUSLY Keith Adams Facebook Strange Loop 2013
Why PHP?
What this talk is • Experience report • Apologia • Qualified advocacy • A surprise.
What this talk is not • “Network effects”/”Legacy” • “Right tool for the job” • tautological • some tools really are bad • PHP might be such a tool • “Worse is better” • pace Richard Gabriel • Better is better • Most people think of UNIX as “better” nowadays
Recent changes • Traits (ala Scala) • Closures • Generators (yield statement) • The HipHop VM (hhvm) is fast • https://github.com/facebook/hiphop-php/ • https://www.hhvm.com • ...and we want it to run your code • http://www.hhvm.com/blog/?p=875
Conventional Wisdom on PHP • “PHP: A fractal of bad design” • http://me.veekun.com/blog/2012/04/09/php-a-fractal-of-bad-design/ • “[ ] You have reinvented PHP better, but that’s still no
The Case Against PHP (2) • Schizophrenia about value/reference semantics
/* * Probably copy $a into foo’s 0’th param. * Unless $a is a user-‐defined object; and unless * foo’s definition specifies that arg 0 is by * reference. */ foo($a);
The Case Against PHP (3) • Reliance on reference-counting • String, array need O(1) logical copies • User-defined classes have destructors that run at a deterministic time • Some programs use the RAII idiom from C++ • Heavily constrains implementation
The Case Against PHP (4) • Inconsistent, dangerous standard library • array_map vs. array_reduce argument orders • array_merge • mysql_escape_string vs. (sigh) mysql_real_escape_string
The Case Against PHP: “Guilty” • It’s all true! • These are “unforced errors” • Most other languages do better • You would want to avoid them in a PHP Reboot
In Defense of PHP • PHP gets three important things really right • Programmer workflow • State • Concurrency
Workflow • Save, reload-the-page • Short feedback cycle • Optimizes most precious resource of all: programmer
short-term memory
State • PHP requests always start with empty heap, namespace • Cross-request state must be saved explicitly • Filesystem, memcache, APC • Affirmative virtue • Typical FB requests spend 10ms initializing • Reduces the cost of bugs • Requests interact in limited ways • Natural boundary for failure isolation
Concurrency • PHP requests execute in a single thread • Concurrency happens via recursive web requests • shared-nothing • inputs/outputs copied • Limits PHP’s applicable domain • That’s actually good.
Workflow
Concurrency
State
The limits of conscious design • Discovered or invented? • Shrug • In my opinion, more important than PHP’s problems • They’re not available anywhere else Workflow
Concurrency
State
Pushing PHP further • PHP engineer dare: rename this method • Reorder the parameters for this method • Remove this method that we think is not called anywhere
Pushing PHP further (2) • Enforce invariants: • Only escaped strings are passed to build_query • A certain array() maps strings to Widgets
Wait... • A static type system?
Workflow • Verbose types, or
incomprehensible error messages • Either way hoses
programmer productivity • Millions of lines to migrate
Concurrency
State
We think we’ve solved this problem • Introducing Hack • Gradual typing for PHP • Novel type inference system • Real-time type-checking