tl;dr hoy me he topado con un RFC (Request for comments) de PHP que quiere simplificar la forma en la que se definen las propiedades de una clase.

Ahora mismo, para definir una propiedad en PHP tenemos que repetirla hasta tres veces antes de comenzar a usarla. Cualquier clase con dos propiedades básicas vendría a ser algo así:

class Point {
    public float $x;
    public float $y;
    public float $z;
 
    public function __construct(
        float $x = 0.0,
        float $y = 0.0,
        float $z = 0.0
    ) {
        $this->x = $x;
        $this->y = $y;
        $this->z = $z;
    }
}

Primero debemos de declararla al inicio de la clase, debemos pasarla al constructor como parámetro y, por último, asignarla a la propiedad en cuestión dentro de este.

Con el cambio propuesto todo esto cambiaría y pasaría a ser idéntico a como se hace en Hack. Quedaría simplemente así:

class Point {
    public function __construct(
        public float $x = 0.0,
        public float $y = 0.0,
        public float $z = 0.0
    ) {}
}

Este RFC aún esta muy verdad y se encuentra en una fase temprana de discusión. Podría ser aprobada y pasar a formar parte de futuras versiones de PHP o ser rechazada y olvidada para siempre.

Personalmente me gusta mucho, es un estilo muy similar al que encontramos en otros lenguajes como Kotlin, espero, en un futuro, poder contar este cambio cuando escriba sobre alguna nueva versión de PHP 🙏.