Abstract Wikipedia

(Redirected from Wikilambda)
Other languages:
Bahasa Indonesia • ‎Bikol Central • ‎Deutsch • ‎English • ‎Esperanto • ‎Tiếng Việt • ‎dansk • ‎español • ‎français • ‎hrvatski • ‎italiano • ‎kurdî • ‎polski • ‎português do Brasil • ‎română • ‎svenska • ‎беларуская (тарашкевіца)‎ • ‎русский • ‎українська • ‎עברית • ‎العربية • ‎বাংলা • ‎ไทย • ‎中文 • ‎日本語 • ‎한국어

Abstract Wikipedia via mailing list Abstract Wikipedia on Telegram Abstract Wikipedia on IRC Abstract Wikipedia on Facebook Abstract Wikipedia on Twitter Abstract Wikipedia on YouTube

ProjectEdit

This project consists of two parts: Abstract Wikipedia and Wikilambda.

The goal of Abstract Wikipedia is to let more people share more knowledge in more languages. Abstract Wikipedia is an extension of Wikidata. In Abstract Wikipedia, people can create and maintain Wikipedia articles in a language-independent way. A Wikipedia in a language can translate this language-independent article into its language. Code does the translation.

Wikilambda is a new Wikimedia project that allows anyone to create and maintain code. This is useful in many different ways. It provides a catalog of all kind of functions that anyone can call, write, maintain, and use. It also provides code that translates the language-independent article from Abstract Wikipedia into the language of a Wikipedia. This allows everyone to read the article in their language. Wikilambda will use knowledge about words and entities from Wikidata.

This will get us closer to a world where everyone can share in the sum of all knowledge.

What is a function?Edit

A “function” is a sequence of computer program instructions that makes a calculation based on data you provide. Functions are a form of knowledge that can answer questions, such as how many days have passed between two dates or the distance between two cities. More complicated functions can calculate more complicated questions, such as the area of a three dimensional shape, the distance between Mars and Venus on a certain date, or whether two species were alive at the same time. We already use functions in many types of knowledge inquiries, such as asking a question to a search engine. The {{convert}} and {{age}} templates are also examples of functionalities that are already used in many Wikipedias, written in Lua and manually copied to each wiki where it's wanted.

More examples of functions are at Abstract Wikipedia/Early function examples, and very rough sketches of how the interface might look are at Abstract Wikipedia/Early mockups.

In short, functions make a calculation on the data you provide, and answer a question you have about it.

This new Wikimedia project will build a library of functions, written by volunteers, to help answer questions like these across languages. By building out our library of functions, we can enable more people to access and explore free knowledge in new ways. To make this happen, the project needs a name. Please join in to propose and choose the best one.

What is Abstract Wikipedia?Edit

A visual explanation of the Abstract Wikipedia project and the wiki of functions

The term "Abstract Wikipedia" itself refers to the long-term goal - that this library of functions will someday enable the creation of language-independent articles. Once more pieces of this project are in place, this will mean that any wiki - especially small to medium wikis - will be able to dramatically increase the number of articles available in their language. It also means that editors can share knowledge from their culture and contexts with a larger and more global audience.

The new wiki of functions will develop the coding infrastructure to make this vision possible. The Abstract Wikipedia part of the project will start in roughly 2022.

In other words: we will be able to combine the functions from the new wiki, with the data and linguistic-information in Wikidata, in order to generate natural language sentences in any supported languages. These sentences can then be used by any Wikipedia (or elsewhere).

TimelineEdit

Background / supporting material / existing discussionEdit

An article in the Signpost provides a more detailed introduction to the idea. The material below - research papers, videos of talks, prototype software - offers a lot of detail. A detailed draft plan for the development of Wikilambda is also available.

Wikimedia community discussionsEdit

PaperEdit

Videos and podcastsEdit

Note that the two long videos are rather redundant to each other, and the short video is a short version of the long one.

Further readingEdit

Project planEdit

  1. Summary: overview of the project plan
  2. Name: discussion on the name of the project
  3. Goals: what are we trying to achieve? Primary and secondary goals
  4. Organization: how the development team would be set up
  5. Requirements: overall conditions that the project needs to fulfill
  6. Architecture: an overview of how the project components would work together
  7. Components: individual software components the project needs to deliver
  8. Tasks: individual tasks that need to be done by the projects
(single page version)

Alternative namesEdit

Wikilambda is just a project name. One of the first tasks of the projects will be to come up with the communities with a name for the project and that is available as a domain name. Some options include Wikifunction, Wikicode, Wikialgorithm, and other proposed alternative names of this project.

Related projects / proposalsEdit

The following existing projects would be most affected by Wikilambda, but all Wikimedia projects will be able to call functions in Wikilambda.

  • Wikidata – suggested to store abstract content in Wikidata next to the item pages
  • Wikipedia – suggested to allow display of content from Wikidata for missing articles

There are numerous proposals that cover aspects of Wikilambda and that have been made over the years (going back to 2001). The large number of related proposals is another indicator of the wish to get this done. In this proposal we aim to extract the common goals and learn from the other proposals:

Proposals for repositories of modules, templates, and other codeEdit

Proposals for linguistic projectsEdit

Proposals for structured data access projectsEdit

  • WikiSandy – index Wikipedia content semantically
  • Konsciajxo – seems almost the same idea, but goes well beyond that
  • WikiCode – pretty much the same idea
  • Wikibot – give access to content in Wikipedia

Proposals for collections of knowledge about math and other sciencesEdit

Domain namesEdit

Depends on the name.

ParticipateEdit

DemosEdit