Что-то мне подсказывает, что здесь явно не тот случай)
A linQ - это вещь, чем то linQ близок к моему
FluentList вернее наоборот)
сравни:

Код AS3:
// псевдокод Linq
var result = CollectionA.Join(CollectionB, <условие объединения>).GroupBy(<условие группировки>).Where(<условие фильтрации>).Select(<описание нового типа>);

Код AS3:
//FluentList
var tmp1: FluentList = enemies
.where(Unit.Z, Condition.GT, -80)
.where(Unit.Z, Condition.LT, -50)
.where(Unit.LEVEL, Condition.GE,5)
.or()
.where("level", "==", 1)
.sortOn("z",Array.NUMERIC)
.call(Unit.DO_SHOOT, [1, 10]);