Cursus Raku / Provectus / Moduli / Fasciculi et spatia nominum

Fasciculi et moduli

Verbum clave package spatium nominum introducit. Quidquid intra id cum our declaratur, pars illius spatii nominum fit et ab extra per nomen fasciculi et separatorem :: attingi potest:

package Maths {
    our $pi = 3.14;
    our sub double($x) { $x * 2 }
}

say $Maths::pi;         # 3.14
say Maths::double(5);   # 10

Variabilis attingitur ut $Maths::pi — sigillum, deinde nomen fasciculi, deinde nomen variabilis. Subroutina vocatur ut Maths::double(...).

Tam package quam module spatium nominum creant; differunt in eo quod praeterea faciunt. module est electio usitata pro unitate codicis reusabilis, dum simplex package tantum spatium nominum est sine additamentis. (class, quam in parte sequente invenies, spatium nominum quoque creat et machinam obiectorum addit.)

module Greet {
    our sub hello { 'hi' }
}

say Greet::hello; # hi

Itaque spatium nominum quod a module accepisti idem mechanismum est quod package per se praebet. Electio inter ea maxime de proposito est: module pro bibliothecis, package pro spatio nominum nudo — et, cum ad obiecta perveneris, class pro typis.

Exercitatio

Sequuntur 1 quiz de contentis huius argumenti.

Fasciculi et spatia nominum   |   Quiz — Fasciculi


💪 Vel recta ad exercitationes huius sectionis i.