Session "Of Lambda Functions, Closures an Traits"

Den Vortrag hatte ich schon auf der Froscon gehört.
Vorgetragen von Sebastian Bergmann dieser hat den Vortrag in zwei Teile geteilt. Da
seine Folien bald zur Verfügung stehen werde ich einfach nur paar Stichpunkte mit Codebeispielen hinterlassen.

PHP 5.3
Lambda Functions
- Anonymous
- kein cache

Beispiel:

$test = function() { print 'Hello World'; };
call_user_func($test);
call_user_func($test, array()); //Reflection API

Closures

$string 'Hello World';
$test = funcion () use ($string) { print $string;};
$test();
print $test;


PHP 5.4
Traits
- Lightweights
- Stateless
- Flexible composition of behavoir into class
- exists implementations: Perl 6,Squeuak, Scala, Self,Slate,Fortress
new keyword "trait"


trait T
{
public functiion a(){
}
}

class B extends A
{
use T;
}