Reference

This section catalogues the features and capabilities of both the Envision language and its standard library. This section is intended for an advance audience who has already mastered the Envision basics.

Table of contents

Keywords

The list of words that have built-in semantic in Envision.

Reserved keywords: and as at auto autodiff by const cross def default define delete desc draw each else enum expect fail false foreach group if in index into keep loop match mod montecarlo not or order over params read return sample scan show sort span table then true unsafe until when where while with write

Contextual keywords: assert barchart boolean chart date form histogram interval label latest linechart logo max min markdown month nosort number partitioned piechart plot private process pure ranvar scatter scalar single slicepicker slicetree small summary text upload week whichever zedfunc

Operators

The operators below are listed in increasing order of precedence. For instance, since and is before or, then A or B and C is interpreted as A or (B and C). Operators with the same precedence are grouped left-to-right: A * B / C is (A * B) / C.

Aggregators

The aggregators are similar to functions, but they benefit from a richer syntax with options. Below, we list the aggregators supported by Envision.

Basic: argmax argmin argwhichever aresame count distinct max min product single sum

Logic: all any same whichever

Ordered: changed concat first join last smudge

Statistics: avg entropy median mode percentile stdev stdevp

Ranvar: mixture ranvar ranvar.buckets sum

Zedfunc: sum

Functions

The primary purpose of functions is to extend the capabilities of Envision whenever the basic language syntax would not be sufficient. Below, we list the functions supported by Envision.

Mathematics: abs arground ceiling cos exp expsmooth floor log loggamma loglikelihood.loglogistic loglikelihood.normal loglikelihood.negativebinomial loglikelihood.poisson max min percent random.binomial random.integer random.loglogistic random.negativebinomial random.normal random.poisson random.shuffle random.uniform ratio round roundnext sin sqrt tanh

Text: concat contains containsany containscount endsWith field fieldcount fieldr indexOf lowercase padLeft parseDate parseNumber parseTime printTime replace startsWith strlen substr text trim tryParseDate tryParseNumber tryParseTime tryParseWeek uppercase

Calendar: chineseYear chineseYearEnd chineseYearStart date daynum format isoYear monday month monthend monthnum monthstart today week weekNum year yearend yearstart

Ranking: argFirst argLast assoc.quantity cumsub cumsubfallback cumsum fifo priopack rank rankd smudge

Graph: canonical connected hascycles nonCanonical partition

Ranvar: actionrwd.demand actionrwd.segment cdf crps dirac dispersion exponential fillrate forest.regress int loglogistic mean mixture negativeBinomial normal poisson quantile random.ranvar ranvar ranvar.periodicr ranvar.segment ranvar.uniform smooth spark support.min support.max transform truncate variance

UX: sliceDashboard sliceSearchUrl

Zedfunc: actionrwd.reward constant diracz int linear pricebrk.f pricebrk.m stockrwd.c stockrwd.m stockrwd.s uniform uniform.left uniform.right valueAt zoz

Table: by extend.billOfMaterials extend.pairs extend.pairset extend.range extend.ranvar extend.split single by whichever by

Special: assertfail Files forex lastforex hash isCurrency mkuid rgb solve.moq

Tiles

The tiles represent the building blocks of Envision’s dashboards. Below, we list all the tiles supported by Envision.

assert barchart chart form histogram label linechart markdown piechart plot scalar scatter slicepicker slicetree summary table treemap upload