File:Wikifunctions-logo-en.svg · Wikimedia Commons · See Wikimedia Commons
thumb|A short introduction to Wikifunctions by Denny Vrandečić
via Wikipedia infobox
~1 min read
thumb|A short introduction to Wikifunctions by Denny Vrandečić
Wikifunctions is a collaboratively edited catalog of computer functions to enable the creation, modification, and reuse of source code. It is closely related to Abstract Wikipedia, an extension of Wikidata to create a language-independent version of Wikipedia using its structured data. Provisionally named Wikilambda, the definitive name of Wikifunctions was announced on 22 December 2020 following a naming contest. Wikifunctions is the first Wikimedia project to launch since Wikidata in 2012. After three years of development, Wikifunctions officially launched in July 2023.
Wikifunctions:About - Wikifunctions
wikifunctions.org →Wikifunctions is a project in the spirit of Wikipedia, Wikidata, Wiktionary , and other similar global collaborative free culture projects: it allows contributors from all over the world to create and maintain a multilingual library of functions that can be used by anyone for any purpose. Every function can be supported by multiple implementations in different programming languages, test cases, pre- and post-conditions, documentation, metadata in the form of runtime estimates and complexity guarantees for the different implementations, etc. Users may call a function directly on the website, or from their own code or applications, from a command-line interface, or a local app. The function may be executed locally in the browser, in the cloud, or locally and embedded within the user's application. Wikifunctions is intended to create both a well-defined common catalog of functions that can be widely reused and an environment where functions can be quickly combined and executed on the fly. Wikifunctions aims to make life easier for developers, who can rely on this repository like on any external library, and for end-users, who can call functions as needed, in a way that is currently only available with a very uneven coverage through specific websites that are often written in the form of 1990s websites with Java applets. All functions are pure , in order to enable a secure sandboxed execution. Also, every implementation can be annotated with metadata and cryptographically signed. End-users can select and audit which implementation of each function to use, depending on their available hardware resources and web of trust settings. Wikifunctions continues the tradition of moving more computation, which has usually happened on the command line or with apps by more computer-savvy users, to the Web and democratizing access to functionality that was not available before. At the same time, it will increase the productivity of developers everywhere, as they can just use a large library of code instead of relying on copying and pasting answers from sites like StackOverflow . Unlike in Wikipedia, contributors will mostly create new implementations for a function instead of updating existing functions. The implementations can be automatically tested against the given tests, against each other, and further analyzed. Implementations can be written in a number of different programming languages, but they will be able to call functions implemented in other programming languages. The execution engine can smoothly (although not necessarily with the highest possible performance) operate in different languages. Although in most cases there is a large performance boost in composing functions within a single programming language, there is no requirement to do so. In many cases, the speed of development and the developer's time will be more valuable than the additional computer cycles spent in the execution engine.
Excerpt from a page describing this subject · 14,124 chars · not written by Vinony
via Wikidata · CC0
via Wikidata sitelinks · CC0
Discovered by embedding cosine similarity (sentence-transformers MiniLM, 384-dim).