The name "Wikilambda" is temporary. Please propose alternative names of that project at Abstract Wikipedia/Wiki of functions naming contest before 29 September. Voting will begin then.
|Notes, drafts, discussions|
|Examples & mockups|
This project consists of two parts: Abstract Wikipedia and Wikilambda.
The goal of Abstract Wikipedia is to let more people share in 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.
Background / supporting material / existing discussion
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 discussions
- Discussion on Meta
- Signpost article on English Wikipedia - with discussion
- Kurier article on German Wikipedia - with a (mostly preceding!) discussion
- Discussion on wikimedia-l about the paper proposing Wikilambda and Abstract Wikipedia
- Discussion on wikidata mailing list
- Blog post on Wikimedia Space
- 2013 proposal on Meta and discussion
- Capturing meaning: Toward an abstract Wikipedia (short intro)
- CCC Blue Sky award for the paper (it won both the Jury and Audience awards)
- Architecture for a multilingual Wikipedia (technical aspects)
- Collaborating on the sum of all knowledge across languages (social aspects)
Videos and podcasts
Note that the two long videos are rather redundant to each other, and the short video is a short version of the long one.
- Short intro to Wikidata and Abstract Wikipedia idea (New York, 2019) (18 min)
- Keynote at SWAT4HCLS (Edinburgh, 2019) (56 min)
- Keynote at EMWCon (Daly City, 2019) (1:02h)
- "Between the Brackets" interview with Amir Aharoni, discussing Wikilambda and other topics, many related (1:41h)
- Interview on Wikilambda between Shani Evenstein Sigalov and Denny Vrandečić (1:10h)
- Summary: overview of the project plan
- Name: discussion on the name of the project
- Goals: what are we trying to achieve? Primary and secondary goals
- Organization: how the development team would be set up
- Requirements: overall conditions that the project needs to fulfill
- Architecture: an overview of how the project components would work together
- Components: individual software components the project needs to deliver
- Tasks: individual tasks that need to be done by the projects
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 / proposals
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 code
- Global templates - a proposal with some overlapping goals
- Wikitemplates - similar to the global templates proposal above
- Template repository - similar to the global templates proposal above
- Global-Wiki - the parts regarding global templates and modules
- WikiApps - provide access to functions and algorithms
- WikiAI - a repository for ML models
Proposals for linguistic projects
- Wikilanguage - linguist knowledge needs to be recorded in Wikilambda beyond Wiktionary
- Girgit - may be developed in Wikilambda
- Wikilinguistica - information about syntax and grammar etc.
- Wikidioma - information about agreement and declinations etc.
- Wikipedia Virtual Mind - could be implemented with Wikilambda
Proposals for structured data access projects
- 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 sciences
- WikiDerivations - capture scientific models and their relations
- Wikimath - a wiki that can do math
- DRMF - capture mathematical formulas
- Wikimedia Pi Abacus - calculation
- WikiProves - capture theorems, lemmas, and relate them to each other
- WikiTeched - providing an IDE for developing etc.
- EncycloPDia - computational knowledge engine
- WikiCalculator - implementable in Wikilambda
Depends on the name.