什么是模糊的上下文免费语法?

Ale*_*lex 3 terminology context-free-grammar ambiguous-grammar

我对上下文无关语法中的歧义概念并不十分清楚.如果有人可以帮助我解释这个概念或提供一个好的资源,我会非常感激.

Meh*_*dad 5

T * U;
Run Code Online (Sandbox Code Playgroud)

这是指针声明还是乘法?你不能告诉,直到你知道什么TU实际上都是.

因此表达式的语法取决于表达式的语义(含义).这不是没有上下文的 - 在无上下文的语言中,只能是一件事,而不是两件事.(这就是为什么他们不让这样的表达式成为D中的有效语句.)

另一个例子:

T<U> V;
Run Code Online (Sandbox Code Playgroud)

这是模板用法还是大于和小于操作?(这就是为什么他们改变了语法T!(U) Vd -圆括号只有一个用途,而脱字有另一种使用.)