目錄

名稱

experimental - 讓實驗性功能變得容易

版本

版本 0.031

語法

use experimental 'lexical_subs', 'signatures';
my sub plus_one($value) { $value + 1 }

描述

這個實用程式提供一種簡單又方便的方式來啟用或停用實驗性功能。

每個版本的 perl 都有一些功能存在,但被認為是「實驗性的」。在 Perl 5 的大部分生命週期中,這只是一個在文件中找到的標示。從 Perl v5.10.0 開始,並在 v5.18.0 中更積極地將實驗性功能放在實用程式後面,用於啟用功能並停用相關警告。

experimental 實用程式存在於將所需的咒語組合成一個介面中,在 perl 的版本中保持穩定。對於每個實驗性功能,這應該會啟用該功能並讓封閉的詞法範圍的警告保持靜默

use experimental 'feature-name';

若要停用該功能,並在適用的情況下重新啟用任何警告,請使用

no experimental 'feature-name';

支援的功能,在下面有進一步的說明,是

排序很重要

使用此 pragma 來「啟用實驗性功能」是另一種說法,表示此 pragma 將停用使用該功能所產生的警告。因此,套用 pragma 的順序很重要。特別是,您可能希望在啟用警告之後啟用實驗性功能

use warnings;
use experimental 'smartmatch';

您還需要小心啟用警告的模組。一個常見的範例是 Moose。在此範例中,warnings pragma 首先開啟「smartmatch」功能的警告,experimental pragma 將其關閉,而 Moose 模組又將其開啟(修正方法是交換最後兩行)

use warnings;
use experimental 'smartmatch';
use Moose;

免責聲明

由於啟用功能的性質,無法以任何方式保證向前相容性。

另請參閱

perlexperiment 包含有關實驗性功能的更多資訊。

作者

Leon Timmermans <leont@cpan.org>

版權和授權

此軟體的版權為 (c) 2013 Leon Timmermans 所有。

這是自由軟體;您可以在與 Perl 5 程式語言系統相同的條款下重新散布或修改它。