Wikifunctions:Глоссарий

From Wikifunctions
This page is a translated version of the page Wikifunctions:Glossary and the translation is 19% complete.

Feel free to ask for terms on the talk page, or to add more terms and improve the definitions.

A

abstract (английский: abstract)
not in a specific natural language but abstracting from it; aiming to provide a notation for the meaning behind natural language texts, sentences, or phrases. The opposite of concrete.
AbstractText (английский: AbstractText)
prototype implementation of the Wikifunctions idea.
abstract content (английский: abstract content)
see content.
Абстрактная Википедия (английский: Abstract Wikipedia)
preliminary name of all the Content that can be used by local Wikipedias to render an article in natural language; currently proposed to live in Wikidata next to the corresponding Item, but that will be discussed before Part P2 of the development project.
alias (английский: alias)
an alternative label for an object, used foremost to find the object.
аргумент (английский: argument)
an input given to a function call.
argument reference (английский: argument reference)
a reference to one of the supplied arguments within a composition.
array (английский: array)
Many programming languages have an "array" type. The counterparts in Wikifunctions are list and typed list. See also Benjamin array.
статья (английский: article)
a page in the main namespace of Wikipedia, usually representing one entry in Wikipedia.

B

Benjamin array (английский: Benjamin array)
a way to denote typed list proposed by Benjamin Degenhart, where a typed list is stored as a JSON list whose first element denotes the type. This is in contrast with the previous proposed schema, which uses LISP-style singly-linked lists, in which the type must be stored once in each node.
boolean (английский: boolean)
a value that can have 2 states, usually denoted true and false.
built-in (английский: built-in)
a native implementation of a function that is provided by the evaluator and that is not editable through the wiki interface.

C

call (английский: call)
see function call. In English, the term invoke or invocation may also be used.
canonical, canonicalized, canonicalised (английский: canonical, canonicalized, canonicalised)
a specific, less verbose and thus more readable way to represent ZObjects in JSON; it is the usual representation ZObjects are stored in Wikifunctions. This is opposed to normal.
car (английский: car)
alternative name of head; see CAR and CDR in Wikipedia. See also cdr.
cdr (английский: cdr)
alternative name for tail; see CAR and CDR in Wikipedia. See also car.
символ (английский: character)
a character as defined by Unicode, a constituent of a String; a character can consist of several bytes (or octets).
composition (английский: composition)
a form of implementation of a function, where the implementation is given by the combination of other functions; see Function model.
composition notation (английский: composition notation)
an easy-to-read notation for compositions; see Function model.
concrete (английский: concrete)
in a specific natural language. The opposite of abstract.
cons (английский: cons)
a function to create a new list by adding an element at the top of it; see phab:T261474. See cons in Wikipedia.
constructor (английский: constructor)
an abstract building block of content. A constructor aims to capture the meaning of a single phrase or sentence structure. It often has slots that can take other constructors, and can itself be used as a value to fill the slots of other constructors.
content, abstract content (английский: content, abstract content)
abstract representation of a text or text fragment, assembled from constructors. Technically, an instance of a constructor. The top level constructor is used to represent a whole article and stored in Abstract Wikipedia, but content can be also for just a sentence or phrase. Sometimes called abstract content.
curried, curry, currying (английский: curried, curry, currying)
A curried function is a function that was translated from taking multiple arguments into a sequence of functions, each with a single argument. This technique is named after the American mathematician Haskell Curry. See Currying in Wikipedia.

D

deserialization (английский: deserialization)
Противоположность сериализации.
development project (английский: development project)
a project to develop Wikifunctions and Abstract Wikipedia; see Abstract Wikipedia plan.
display function (английский: display function)
a synonym of renderer. For example, a function that converts a type into a string that users can understand, such as converting a Number 123456 to "123,456" in (International) English, "1,23,456" in Indian English, "123.456" in French, etc., or converting the Date '2024','03','12' to '2024-03-12', and so on.
документация (английский: documentation)
человекочитаемый текст, объясняющий объект.

E

eneyj (английский: eneyj)
  1. prototype model of Wikifunctions;
  2. a JavaScript implementation of an evaluator of that model provided in abstracttext.
ошибка (английский: error)
a type whose instances indicate problems in evaluation or validation; see Function model.
evaluation (английский: evaluation)
The action performed by the evaluator.
evaluator (английский: evaluator)
a piece of software that takes a ZObject and evaluates it, that is executes a Function and returns the result. We envision the development of several evaluators. Evaluators may be implemented and run in the browser, on the server of the Wikimedia Foundation, in the cloud, in an app on a mobile device, or other places. Compare to executor and orchestrator.
execution (английский: execution)
The action performed by the executor.
executor (английский: executor)
one of a set of internal services which are not exposed to the public. They can be only called by the orchestrator. They run native code in a specific programming language. There would be one executor for Lua, one for JavaScript, one for Python, etc. See the service documentation. Compare to evaluator and orchestrator.

F

функция (английский: function)
the specification of a computation that takes some input and returns output; see Function (computer science) in Wikipedia.
function call (английский: function call)
A function call is a ZObject consisting of a function and the required arguments for the function, and can be evaluated to another ZObject. In English, the term "invoke" may also be used.
function evaluator (английский: function evaluator)
See evaluator.
function executor (английский: function executor)
See executor.
function model (английский: function model)
see Function model.
function orchestrator (английский: function orchestrator)
See orchestrator.
function schemata (английский: function schemata)
a set of pre-defined ZObjects used in orchestrator and evaluator. The WikiLambda system account also populates pre-defined ZObjects on-wiki from function schemata.
functional (английский: functional)
short for "purely functional", meaning that the evaluation of such a function has no side-effects and is deterministic, that is always the same; see Purely functional programming in Wikipedia; see Function model.

G

generic type (английский: generic type)
a type generated by evaluation of a function call.

H

head (английский: head)
the first element of a list. Also known as car. The rest of the list is known as tail or cdr. See phab:T261474.

I

identity (английский: identity)
The identity of a type is an instance of (specific) function that evaluates to the type. For a simple type, it is a reference to the type itself.
implementation (английский: implementation)
a particular way to execute a function. An implementation may be a piece of code in a certain programming language, refer to functionality “built into” the evaluator, or compose calls to other functions. A function may have many implementations, which should all be equivalent. Short for "ZFunction implementation".
instance (английский: instance)
Every ZObject is an instance of its type.
invoke (английский: invoke)
synonym for call in English. See function call.
элемент (английский: item)
an entry in Wikidata's knowledge base; see Item in the Wikidata glossary.

J

JSON (английский: JSON)
a widely used data transfer format; see JSON in Wikipedia.

K

ключ (английский: key)
a string which ends with the letter K followed by a natural number, and is optionally preceded by a ZID. Keys are defined in Wikifunctions usually on Types or Functions, and are used to build up ZObjects.

L

метка (английский: label)
main name given to identify a ZObject. May only be plain text.
лексема (английский: lexeme)
an entry in Wikidata storing lexicographic knowledge about, roughly, a word; see Lexeme in the Wikidata glossary.
linearizer (английский: linearizer)
(this term is no longer used in current terminology, but can still be found in older documents) synonym of renderer (1).
список (английский: list)
a data type that groups an arbitrary number of instances in an ordered entity; see List (abstract data type) in Wikipedia.
literal (английский: literal)
a value that is not a ZObject. Currently the only accepted literal is string.
local Wikipedia (английский: local Wikipedia)
Википедия на определенном языке, например, Википедия на иврите, Японская Википедия или Итальянская Википедия.

M

многоязычная Википедия (английский: multilingual Wikipedia)
the architecture that allows local Wikipedias to enrich themselves by rendering the Content from Abstract Wikipedia and thus have a more comprehensive, current, and correct Wikipedia in their language; see Abstract Wikipedia architecture.

N

естественный язык (английский: natural language)
определенный естественный язык в более широком смысле, такой как английский, тагальский или суахили; см. Естественный язык в Википедии.
normal (английский: normal)
an extended, easily processable and very uniform way to represent ZObjects in JSON. This is opposed to canonical.
nothing (английский: nothing)
a data type that can have no instances; see Bottom type in Wikipedia.

O

объект (английский: object)
  1. In JavaScript or JSON, an object is basically an associative array; see Associative array in Wikipedia.
  2. In Wikifunctions, synonym of ZObject.
orchestration (английский: orchestration)
The action performed by the orchestrator.
orchestrator (английский: orchestrator)
a service that takes a ZObject and returns an evaluated version of it. To do this, it will make calls to the wiki for other ZObjects it needs, to the executor to evaluate some function calls, and other services such as Wikidata. See the service documentation. Compare to evaluator and executor.

P

страница (английский: page)
a part of a wiki. A wiki consists of a number of individual pages, which can be edited independently, have internal links to each other, etc.
парсер (английский: parser)
a function to convert a string to a ZObject. The opposite of renderer.
pair (английский: pair)
a compound ZObject that contains two ZObjects of specific (but arbitrary) type.
Part P1 (английский: Part P1)
the part of the development project that deals with creating Wikifunctions. It starts at the beginning of the project and goes on throughout its whole lifetime; see Part P1: Wikifunctions.
Part P2 (английский: Part P2)
the part of the development project that deals with creating Abstract Wikipedia. It starts after about a year in the project and goes on throughout the second half of its lifetime; see Part P2: Abstract Wikipedia.
persistent (английский: persistent)
a ZObject with a ZID and with its own page in the wiki. Most persistent ZObjects will include values that are ZObjects with no ZID, and are therefore not persistent.
property (английский: property)
used to make a statement about an Item in Wikidata's knowledge base; see Property in the Wikidata glossary.

Q

quote (английский: quote)
a data structure that is not to be evaluated but kept verbatim.
QID (английский: QID)
идентификатор для элемента Викиданных, начинающийся с буквы "Q" за которой следует целое число.

R

reading function (английский: reading function)
a synonym of parser. A function that converts user text input from a string into a given Type. For example, converting the String "123456" to the Number '123456', or the string "2024-03-12" to the Date '2024', '03', '12'.
reference (английский: reference)
an ID denoting the underlying object. For example, the string "Z11" refers to the Type Z11/Monolingual text.
Note Note: This term has a completely different meaning than on Wikidata; see Reference (computer science) in Wikipedia.
renderer (английский: renderer) (1)
a function to convert a ZObject to a string. The opposite of parser. (formerly called "linearizer")
renderer (английский: renderer) (2)
a function that gets a content and an identifier for a natural language as an input and returns text in that natural language as output, representing the content as concrete text, using knowledge from lexemes.
Note Note: This is a future feature, and the meaning of the term "renderer" in the original proposal; this term collides with the current usage of "renderer", so it may be renamed in the future.
reify (английский: reify)
a function that deconstructs an object into its constituent parts so that the parts can be individually accessed; see Reification in Wikipedia; see phab:T261474.
REPL (английский: REPL)
a Read / Eval / Print - Loop, a command line interface that takes some input, evaluates it, and displays the result; see REPL in Wikipedia; see Function model.

S

schemata (английский: schemata)
See function schemata.
сериализация (английский: serialization)
Ways to represent ZObjects in JSON; see also canonical, normal.
утверждение (английский: statement)
used to provide knowledge about an Item in Wikidata's knowledge base; see Statement in the Wikidata glossary.
строка (английский: string)
последовательность символов.
sum type (английский: sum type)
a type that can have instances of any of its constituent types; see Sum type in Wikipedia; see Function model.

T

tail (английский: tail)
a list without its first element. Also known as cdr. The first element is known as head or car. See phab:T261474.
шаблон (английский: template)
a way to specify a renderer as text interspersed with place-holders, or slots, which can be filled with data from constructors, function calculation, or content from another template. See the document Template Language for Wikifunctions for a detailed discussion of the template syntax.
tester (английский: tester)
a way to automatically determine if a given ZFunction is doing the right thing. A function will typically have multiple testers, each specifying some input to the function and conditions the output for the given input must fulfil. For example, testers for a “title case” function might include: “abc” should become “Abc”; “war and peace” should become “War and Peace”; “война и мир” should become “Война и мир”; and “123” should remain “123”.
transient (английский: transient)
Opposite of persistent.
тип (английский: type)
The type of an object tells us how to interpret and understand the given object, and what can be done with the object. For example, if we have an object with the value “2023”, depending on whether its type is integer, or year, or string, we understand that object differently. Every object refers to “a thing in the real world”. The integer 2023 is different from the year 2023. The type tells us how to interpret a given object, so that we know which thing in the real world it refers to. Technically, it defines how objects of that type are structured and what conditions they need to fulfill to be a valid object of that type. A type defines the conditions for a ZObject to be a valid instance of this type, by providing a function that validates a ZObject. Types are ZObjects themselves, so that contributors of Wikifunctions can create new types.
type converter (английский: type converter)
A script written in some programming language (such as JavaScript), taking a native object (such as BigInt), and returning a JSON object representing the corresponding ZObject; or vice versa.
typed list (английский: typed list)
A typed list is a list in which all members of the list are of a specific, predefined type. For example, a typed list of strings is a list in which all members of the list are strings. A typed list takes one argument: the type that all the members of the list have to be an instance of. Typed lists are probably the most widely used generic type.

V

значение (английский: value)
the string or ZObject associated with a key in another ZObject.
validation (английский: validation)
The action performed by the validator.
validator (английский: validator)
A function taking a ZObject as argument and return a list of errors found.

W

вики (английский: wiki)
a web site that allows for the easy and collaborative editing of its pages.
Викиданные (английский: Wikidata)
проект Фонда Викимедиа, свободная, совместно редактируемая база знаний; см. Викиданные.
Викифункции (английский: Wikifunctions)
new project of the Wikimedia Foundation; a free, collaboratively developed and maintained catalog of functions. It was initially known as Wikilambda in the original proposal (that name is now used for the WikiLambda extension).
WikiLambda (английский: WikiLambda)
the software used to power the project, Extension:WikiLambda.
WikiLambda system (английский: WikiLambda system)
an automated system account that is a key part of the WikiLambda extension. See User:WikiLambda system for its current function.
Фонд Викимедиа (английский: Wikimedia Foundation)
организация, которая поддерживает движение Викимедиа; см. Фонд Викимедиа.
Википедия (английский: Wikipedia)
проект Фонда Викимедиа, свободная, совместно редактируемая энциклопедия; см. Википедия.
Wikipedia, Abstract (английский: Wikipedia, Abstract)
см. Абстрактная Википедия.
Wikipedia, multilingual (английский: Wikipedia, multilingual)
см. многоязычная Википедия.

Z

ZID (английский: ZID)
an ID starting with the letter Z and followed by a natural number. Used to identify persistent ZObjects.
ZFunction (английский: ZFunction)
a wiki page on Wikifunctions that describes a particular function that can be used through the evaluator. Each ZFunction can be realised in code by one or more Implementations, and said implementations can be verified as correct by one or more Tester ZFunctions.
ZKey (английский: ZKey)
a ZObject defining a key for a particular type.
ZList (английский: ZList)
a ZObject for an ordered sequence of other ZObjects.
ZObject (английский: ZObject)
every entry in Wikifunctions is a ZObject. ZObjects stored in Wikifunctions have ZIDs and can be of numerous types, such as Constructors, Functions, Types, etc. A ZObject consists of a set of Key/Value pairs, with each Key appearing only once per ZObject and Values being ZObjects.
ZUnit (английский: ZUnit)
a ZObject that represents a Unit type.