final FEMFunction _compileArrayAsFunction_() throws IllegalArgumentException {
		if (!this._arrayEnabled_) throw this._illegal_(null, " Wertlisten sind nicht zulässig.");
		this.skip();
		if (this._compileType_() == ']') {
			this.skip();
			return FEMArray.EMPTY;
		}
		final List<FEMFunction> list = new ArrayList<>();
		boolean value = true;
		while (true) {
			final FEMFunction item = this._compileParamAsFunction_();
			list.add(item);
			value = value && (this._functionToValue(item) != null);
			switch (this._compileType_()) {
				case ';': {
					this.skip();
					this._compileType_();
					break;
				}
				case ']': {
					this.skip();
					final int size = list.size();
					if (!value) {
						final FEMFunction result = FEMParam.VIEW.compose(list.toArray(new FEMFunction[size]));
						return result;
					}
					final FEMValue[] values = new FEMValue[size];
					for (int i = 0; i < size; i++) {
						values[i] = list.get(i).invoke(FEMFrame.EMPTY);
					}
					return FEMArray.from(values);
				}
				default: {
					throw this._illegal_(null, " Zeichen «;» oder «]» erwartet.");
				}
			}
		}
	}