Wikifunctions wikifunctionswiki https://www.wikifunctions.org/wiki/Wikifunctions:Main_Page MediaWiki 1.46.0-wmf.26 first-letter Media Special Talk User User talk Wikifunctions Wikifunctions talk File File talk MediaWiki MediaWiki talk Template Template talk Help Help talk Category Category talk TimedText TimedText talk Module Module talk Translations Translations talk Event Event talk Wikifunctions:Suggest a function 4 1176 272362 271297 2026-05-04T21:32:24Z Arlo Barnes 1231 /* Lukashian */ link gh 272362 wikitext text/x-wiki {{Shortcut|[[WF:SAF]]|[[WF:RF]]}} Do you have an idea for a new function? Suggest it here! It may help to refer to [[Wikifunctions:Glossary|our glossary]]. You can [https://www.wikifunctions.org/wiki/Special:CreateZObject?zid=Z8 create a function] right away if you have the user-rights. If a function requires a new type, consider [[WF:TP|proposing it]]. Note that for now '''we only support a limited number of types as input and output types''' of functions. More types are coming in the next few months. For the full list, see [[WF:Type]]. Once created, consider adding new Functions to the [[Wikifunctions:Catalogue|catalogue]]. [[Category:Maintenance]] == Requests from Abstract Wikipedia editors == {{main|abstract:Project:Suggested functions}} === Infobox === I'm thinking we can adapt [[w:module:infobox]] to create infobox HTML in abstract articles. Maybe it can even use info from Wikidata to populate it, like it already does on some wikis. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 06:34, 28 April 2026 (UTC) == Proposed functions requiring only available types == === String === ==== String character discard functions ==== ==== String character replacement functions ==== Add the word 'the' to the start of a function. e.g United Kingdom - the United Kingdom. [[User:FantasticWikiUser|FantasticWikiUser]] ([[User talk:FantasticWikiUser|talk]]) 11:27, 25 March 2026 (UTC) :Yes… simple enough to do but not entirely clear when it is required. We’ve been [https://t.me/Wikifunctions/29989 discussing it on Telegram]. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 12:10, 25 March 2026 (UTC) ::This was an issue I found on [[abstract:Q21]] when I couldn't add it there. [[User:FantasticWikiUser|FantasticWikiUser]] ([[User talk:FantasticWikiUser|talk]]) 12:16, 25 March 2026 (UTC) :I worked on {{z|Z33138}} today. I'm not sure it covers all corner cases, feel free to try it out and add more tests :) [[User:So9q|So9q]] ([[User talk:So9q|talk]]) 20:32, 5 April 2026 (UTC) ==== String search functions ==== ==== String escaping and unescaping functions ==== ==== String encoding and decoding functions ==== * Unicode normalising functions (there are several types of normalisation) * [https://html.spec.whatwg.org/#named-character-references HTML named character encode] * [[wikidata:Q47466379|Punycode encode]] - {{z+|Z10178}} (part only, not whole url); see also {{z+|Z10185}} * [[:en:Unified_English_Braille|Unified English Braille encode]] (discarding invalid characters?) *[https://braille-autoriteit.org/standaarden/achtpuntsbraille/ Dutch eight-dot Braille] encode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 21:38, 17 January 2026 (UTC) *[https://braille-autoriteit.org/standaarden/achtpuntsbraille/ Dutch eight-dot Braille] decode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 21:38, 17 January 2026 (UTC) *[https://braille-autoriteit.org/versie-2019-van-zespunts-standaard/ Dutch six-dot Braille] encode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 21:38, 17 January 2026 (UTC) *[https://braille-autoriteit.org/versie-2019-van-zespunts-standaard/ Dutch six-dot Braille] decode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 21:38, 17 January 2026 (UTC) *[[google:ipa+braille&oq=IPA+Braille&gs_lcrp=EgZjaHJvbWUqDAgAECMYJxiABBiKBTIMCAAQIxgnGIAEGIoFMg0IARAAGIYDGIAEGIoFMg0IAhAAGIYDGIAEGIoFMgoIAxAAGIAEGKIEMgoIBBAAGIAEGKIEMgYIBRBFGDwyBggGEEUYPTIGCAcQRRg90gEHMjMyajBqN6gCALACAA&sourceid=chrome&ie=UTF-8|IPA Braille]] encode (IPA --> IPA Braille) [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 11:42, 18 January 2026 (UTC) *[[google:ipa+braille&oq=IPA+Braille&gs_lcrp=EgZjaHJvbWUqDAgAECMYJxiABBiKBTIMCAAQIxgnGIAEGIoFMg0IARAAGIYDGIAEGIoFMg0IAhAAGIYDGIAEGIoFMgoIAxAAGIAEGKIEMgoIBBAAGIAEGKIEMgYIBRBFGDwyBggGEEUYPTIGCAcQRRg90gEHMjMyajBqN6gCALACAA&sourceid=chrome&ie=UTF-8|IPA Braille]] decode (IPA Braille --> IPA) [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 11:42, 18 January 2026 (UTC) ==== String presentation functions ==== * add [[:en:Quotation_mark|locale-specific quotation marks]] to string ** Shouldn't the output depend on the locale? See [[mw:Extension:Scribunto/Lua_reference_manual#mw.language:formatNum|mw.language:formatNum]]. —[[User:Dexxor|Dexxor]] ([[User talk:Dexxor|talk]]) 17:15, 4 September 2023 (UTC) ==== String colour notation functions ==== * Hue of color (since we already have [[Z13017]], [[Z18263]] and [[Z18268]]) ==== String notation validation checks ==== * check if string is an [[:en:International_Chemical_Identifier]] ** {{Partly done}} see {{z+|Z21539}}. Supports the verification of the chemical formula and the stereochemical layer. There are 13 testcaes that I've written, all of which are passed by my JavaScript implementation. Note that a python implementation is not possible as the regex module is not available in Wikifunctions. [[User:MolecularPilot|MolecularPilot]] ([[User talk:MolecularPilot|talk]]) 03:09, 11 January 2025 (UTC) ** To do: *** Needs to verify the hydrogen and connection sections of the main layer *** Support the charge layer *** Support the isotopic layer **[[User:MolecularPilot|MolecularPilot]] ([[User talk:MolecularPilot|talk]]) 03:09, 11 January 2025 (UTC) ***{{ping|MolecularPilot}} A python impl. is infact possible. I created a basic direct translation at {{z+|Z22823}}. Some tests are failing as the regex needs a bit of sorting out, out of scope for me, but you can give it a try! Keep in mind that you need to escape any \ with a \\ just before saving per [[Wikifunctions:Python_implementations#Known_limitations_as_of_October_2024]]. <span style="font-family:monospace;font-weight:bold">[[User:Bunnypranav|<span style="color:#63b3ed">~/Bunny</span><span style="color:#2c5282">pranav</span>]]:&lt;[[User talk:Bunnypranav|<span style="color:#63b3ed">ping</span>]]&gt;</span> 06:14, 26 February 2025 (UTC) * check if string is a [[:en:SMILES_arbitrary_target_specification|SMILES arbitrary target specification (SMARTS) notation]] * check if string is an [[:en:ABC_notation|ABC notation]] * check if string is a [[:en:LilyPond|LilyPond notation]] * check if string is a [[:en:UIC_classification_of_locomotive_axle_arrangements|UIC classification of locomotive axle arrangements notation]] * check if a string is a valid [[:en:Digital_object_identifier|DOI]] ** Something about implementation difficulties: https://stackoverflow.com/questions/27910/finding-a-doi-in-a-document-or-page [[User:Alexander-Mart-Earth|Alexander-Mart-Earth]] ([[User talk:Alexander-Mart-Earth|talk]]) 14:28, 21 December 2023 (UTC) ==== String validation checks ==== * check if string is a valid ISO 3166 country code * check if string is a valid [[:en:ISO_8601#EDTF|EDTF]] date/time ====String analysis functions==== ==== Monolingual text ==== ==== String Wikitext operations ==== ... === Natural number === === Integer=== === Byte === See [[Wikifunctions:Catalogue/Boolean operations#Byte functions|existing Byte functions]] in catalogue. * next byte without overflow: byte → byte * previous byte without overflow: byte → byte * next byte by Gray code: byte → byte * previous byte by Gray code: byte → byte * all bits set: byte → boolean * no bits set: byte → boolean * add bytes without overflow: byte, byte → byte * subtract bytes without overflow: byte, byte → byte * multiply bytes without overflow: byte, byte → byte * add bytes with overflow: byte, byte → byte * subtract bytes with overflow: byte, byte → byte * multiply bytes with overflow: byte, byte → byte * modulo bytes: byte, byte → byte * byte division: byte, byte → byte * right shift: byte → byte * left shift: byte → byte * right shift by n: byte, natural number → byte * left shift by n: byte, natural number → byte * right shift as ring: byte → byte * left shift as ring: byte → byte * right shift by n as ring: byte, natural number → byte * left shift by n as ring: byte, natural number → byte === Unicode code point === See [[Wikifunctions:Catalogue/Character operations#Unicode code points|existing code point functions in catalogue]]. * Codepoint to list of bytes for UTF-8 * Codepoint to list of bytes for UTF-16 * Codepoint to list of bytes for UTF-32 ===Object=== === List === ==== Basic list/iterable functions ==== ==== Complex list functions ==== ==== CSV list operations ==== === Functions with functions as arguments === * test whether certain functions have specific properties of [[:w:Homogeneous_relation|homogeneous relations]] for particular lists/sets === Gregorian calendar date === See [[Wikifunctions:Catalogue/Date operations#Gregorian calendar dates|catalogue of calendar date functions]] for existing functions. * Create a reading function for Dagbani that handles all the possible formats (both the English-linke and the traditional ones, both the Gregorian and the Hijra calendars). [https://docs.google.com/document/d/1u7-ZeY7NHt75JICUPAYky3-7KgkvauD_W3fBjmvpFO0/edit?tab=t.0#heading=h.gf6hp9o3gi0j] [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 15:43, 31 May 2025 (UTC) * same day of the year: date, date → boolean * same day of the week: date, date → boolean * within a year: date, date → boolean * within a week: date, date → boolean * within n days: date, date → boolean * months between: date, date → natural number * weeks between: date, date → natural number * n days later: date, natural number → date * n days earlier: date, natural number → date * n weeks earlier: date, natural number → date * n months later: date, natural number → date * n months earlier: date, natural number → date * n years later: date, natural number → date * n years earlier: date, natural number → date * Julian day number to date: integer → date * how many leap days passed between two dates: date, date → natural number * how many weekdays between two dates: date, date, day of the week → natural number * within JavaScript's date implementation: date → boolean * next time a day of the month is on a specific weekday: date, natural number, day of the week → date * next Friday the 13th: date → date * nth weekday of the month: date, day of the week, natural number → date * nth working days after: date, list of wikidata item references (list of holidays), wikidata item reference (place) → date === Gregorian year === See [[Wikifunctions:Catalogue/Date operations#Gregorian year|catalogue of year functions]] for existing functions. == Morphological functions == morphology is the part of linguistics that studies how language parts are 'shaped' and change diachronically and when inflected. Hausa, Igbo, Malayalam, Bangla/Bengali and Dagbani are [[d:Wikidata:Lexicographical data/Focus languages|focus languages]] for Wikidata's lexicographic dataset, which is an important aspect of [[WF:glossary#Abstract Wikipedia|Abstract Wikipedia]]. === mul - Multiple languages === * inputs: natural number (new numeric type) and language Z-number; output: 'singular', 'dual', 'paucal', 'plural', etc. as string *: {{doing}}: {{z+|Z15977}} * {{z|Z26570}} but with a {{z|Z881}} of {{z|Z6091}} for the {{para|location}} input;<br/>such as in "{{q|Q122962941}} is an {{q|Q350604}} in {{em|{{q|Q801}} and {{q|Q39760}}}}" === ase - American Sign Language === * string: Stokoe to ase-[https://github.com/sutton-signwriting/core Sgnw] and vice-versa (consult {{ping|Slevinski}} as to best approach) === bn - Bangla === === bzs - Brazilian Sign Language === * [[w:en:Brazilian Sign Language#Writing|SignWriting]] * [[incubator:wp/bzs/AS1f502S22f00M513x521S1f502492x497S22f00488x480_AS15d22S22b04M514x527S22b04493x497S15d22487x473|sample text]] === cy - Welsh === [[w:en:colloquial Welsh morphology]] === dag - Dagbani === === de - German === * tense * person * number for each verb ** tenses: present, past, ...? ** person: first, second, third ** number: singular, plural ** {{doing}} third person singular present ** second person singular preterite === en - English === * {{z+|Z11390}} Verb -> agent noun, e.g. "dance"->"dancer" * Join English morphemes (extends {{z+|Z13254}} to cases like re + en + able + er + s → re-enablers. {{z+|Z13254}} will correctly join re-enable + ers or re- + enablers, but re + enablers → “renablers” (incorrect). {{z+|Z13275}} tests the Reduce function to produce “detoxification” from a list of four morphemes (orchestrator limit exceeded with five). I doubt we’ll want to derive “toxify” from “toxic”, however. * Derive lemmas from a form. This is envisaged as the converse of Join English morphemes. The focus would be identifying the base form (the lexeme’s lemma) rather than further segmenting the lemma. For example, “underlay” should return “underlie” (for which it is the past participle) and the noun “underlay” (for which it is the lemma) and (perhaps) the verb “underlay”, which might be the tendency of an unproductive hen or the activity of a carpet-fitter. As this is a purely functional converse, every string will have itself as a possible lemma. * Generate [[:w:Numeral_prefix|Numerical prefixes]] of various kinds from a natural number input. * {{z+|Z19499}} * Intro for geographical feature: Returns a intro sentence for a geographical feature. ** Example 1: The '''Centre for Fine Arts''' is an '''arts center''' on '''Coudenberg - Koudenberg''' in '''Mont des Arts - Kunstberg, City of Brussels''', '''Belgium''' *** Wikidata label = Centre for Fine Arts *** {{Property|P31}} = {{Q|Q2190251}} *** {{Property|P706}} = {{Q|Q13451667}} *** {{Property|P276}} = {{Q|Q115180808}} *** {{Property|P131}} = {{Q|Q239}} *** {{Property|P17}} = {{Q|Q31}} **Example 2: '''Olympus Mons''' is a '''mons''' on '''Mars''' on '''Tharsis''', '''Amazonis quadrangle''' and '''Tharsis quadrangle'''. ***Wikidata label = Olympus Mons ***{{Property|P31}} = {{Q|Q429088}} ***{{Property|P376}} = {{Q|Q111}} ***{{Property|P706}} = {{Q|Q2170645}} ***{{Property|P276}} = {{Q|Q3054547}}, {{Q|Q3054525}} **Example 3: '''Princess Elisabeth Antarctica''' is a '''Antarctic research station''' on '''Utsteinen Nunatak''', '''Antarctic Treaty area''', '''Antartica''' ***Wikidata label = Princess Elisabeth Antarctica ***{{Property|P31}} = {{Q|Q749622}} ***{{Property|P706}} = {{Q|Q7754959}} ***{{Property|P131}} = {{Q|Q21590062}} ***{{Property|P17}} = ''none'' ***{{Property|P30}} = {{Q|Q51}} '''<big>eu - Basque</big>''' * Basque language declension system in rather regular based on suffixes. ** Here a few examples for Basque declension: *** {{z+|Z18541}} *** {{z+|Z18670}} **Before implementing all of them, we may propose an overall classification that eases both the implementation and the future usage of the functions. Here a first try based on bibliography from the [https://www.euskaltzaindia.eus/index.php?option=com_ebe&view=bilaketa&task=pdf&Itemid=1161&atala=deklinabide-taulak Basque Language Academy]: ***Personal pronouns: they can be treated as exceptions (e.g. "zuek -> zuei", etc.) together with proper noun declension, or as a separate case. ***Determiners: they can be treated as exceptions (e.g. "hau" -> "honek", etc) together with common noun declension, or as a separated case ***Grammatical cases: ****Absolutive ("Nor"): indefinite, singular and plural ****Ergative ("Nork"): indefinite, singular and plural ****Dative ("Nori"): indefinite, singular and plural ***Place and Time: we must distinguish animate (AN) and inanimate (IN) ****Inessive IN ("Non"): indefinite, singular and plural ****Inessive AN ("Norengan"): indefinite, singular and plural - It could be a composition of "Noren" + "-gan" ****Place and time ("Nongo"): indefinite, singular and plural ****Allative IN ("Nora"): indefinite, singular and plural ****Allative AN ("Norengana"): indefinite, singular and plural - It could be a composition of "Noren/Norengan" + "-gan/-a" ****Finished Allative AN ("Noraino"): indefinite, singular and plural - It could be a composition of "Nora" + "-ino" ****Finished Allative AN ("Norengainaino"): indefinite, singular and plural - It could be a composition of "Noregana" + "-ino" ****Right way Allative IN ("Noratz"): indefinite, singular and plural - It could be a composition of "Nora" + "-ntz" ****Right way Allative AN ("Norenganantz"): indefinite, singular and plural - It could be a composition of "Norengana" + "-ntz" ****Ablative IN ("Nondik"): indefinite, singular and plural ****Ablative AN ("Norengandik"): indefinite, singular and plural ***Rest of the cases: ****Partitive ("Zerik"): indefinite ****Possessive ("Noren"): indefinite, singular and plural ****Sociative ("Norekin"): indefinite, singular and plural ****Instrumental ("Zerez"): indefinite, singular and plural ****Motivative ("Zerengatik"): indefinite, singular and plural ****Destinative ("Norentzat"): indefinite, singular and plural - It could be a composition of "Noren" + "-tzat" ***Special case: ****Prolative ("Nortzat"): indefinite ***To take into consideration: ****Together with animate and inanimate classification, we should also consider if the noun is a proper noun ("izen berezia"). We can identify that automatically (e.g. check if written in Title case, but this may not be always possible like in the beginning of sentences), but a dedicated function may be preferred (or a boolean to the generic function saying it is a proper noun). ****The main distinction is between noun ending by vowel or consonant that can be easily computed === fr - French === * {{z+|Z11590}} Masculine adjective -> feminine, e.g. "exact"->"exacte" * Conjugated verb => Infinitive, e.g. "alla" => "aller", "mordit" => "mordre" === ha - Hausa === A notated demo sentence ("Aishà taa jeefar dà kàren Indoo" ― "Aisha threw away Indo's dog") is available at http://intent.xigt.org === ig - Igbo === === ldn - Láadan === section moved to [[WF:human languages/Z1882]] === ml - Malayalam === === nl - Dutch === * Cardinals ** Cardinal to number ** Number to cardinal * Verbs ** [https://e-ans.ivdnt.org/topics/pid/ans0203lingtopic Conjugations] * Morphology ** Diminutive to root word *** Belgian diminutive to root word ** Root word to diminutive *** Belgian root word to diminutive (-ke) ** Plural diminutive to root word *** Belgian plural diminutive to root word ** Root word to plural diminutive *** Belgian root word to plural diminutive (-kes) ===kcg - Tyap=== * Tyap has six determiners/definite articles which determine the pronoun, number (1-5), etc. forms used. ** ka & wu (basically for singular nouns and adjectives with a few exceptions) ** hu & ji (for singular and plural nouns and adjectives) ** ba & na (mainly for plural nouns. *** Determiners come after nouns. *** When an adjective comes before a noun, the determiner used is that of the adjective. E.g., a̱sham (ka) - (the) beautiful, kyang (hu) - (the) thing = a̱sham kyang (ka) - (the) beautiful thing. * Tyap has a non-uniform noun class system used for noun pluralization and conversion from one part of speech to another. E.g., a̱bwom (song) and bwom (to sing), a̱fufwuo (ears) and fufwuo (ear). * Affixation: Prefixes exist but suffixes hardly are found. === vgt - Flemish Sign Language === * SignWriting encode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 12:44, 18 January 2026 (UTC) == Proposed functions requiring future types == '''Note these functions cannot be implemented properly until the needed types are requested and approved.''' If one wishes to nevertheless attempt to define and implement them, * the functions and implementations should indicate prominently in their labels that their input/output types must be adjusted once support for the appropriate replacement types become available; ''and'' * the functions should ''not'' be used in the implementations of any other functions, as the later adjustment of input/output types to appropriate replacements will break those implementations. === String manipulation functions === === String analysis functions === * count distance between two letters in given alphabet (default to 26-charcater western alphabet. case insensitive. e.g. "a" & "A" ⇒ 0; "K" & "N" ⇒ 3) === String encoding and decoding functions === (would be better with types representing a stream of bytes) * [[wikidata:Q113486941|BASE45 encode]] * [[wikidata:Q113486941|BASE45 decode]] * Hexadecimal UTF-8 encode ("ABC ₤" ⇒ "41 42 43 20 E2 82 A4") * Hexadecimal UTF-8 decode ("41 42 43 20 E2 82 A4" ⇒ "ABC ₤") * Decimal UTF-8 encode ("ABC ₤" ⇒ "65 66 67 32 226 130 164") * Decimal UTF-8 decode ("65 66 67 32 226 130 164" ⇒ "ABC ₤") * Octal UTF-8 encode ("ABC ₤" ⇒ "101 102 103 40 342 202 244") * Octal UTF-8 decode ("101 102 103 40 342 202 244" ⇒ "ABC ₤") * Binary UTF-8 encode ("ABC ₤" ⇒ "01000001 01000010 01000011 00100000 11100010 10000010 10100100") * Binary UTF-8 decode ("01000001 01000010 01000011 00100000 11100010 10000010 10100100" ⇒ "ABC ₤") * Unicode code point encode ("ABC ₤" ⇒ "41 42 43 20 20A4") - {{z+|Z10785}} * Unicode code point decode ("41 42 43 20 20A4" ⇒ "ABC ₤") * Create regular expression object/string (i.e: "test" & "i" to /test/i) === Natural language functions === * Choose singular or plural based on number (e.g. singularOrPlural("person",6") -> "people") ** Note that there are also dual and other [[:w:grammatical number|grammatical number]]s in other languages. [[User:魔琴|魔琴]] ([[User talk:魔琴|talk]]) 18:54, 26 October 2023 (UTC) ** relevant interwiki link: [[d:WD:property proposal/plural forms]] [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 04:15, 9 February 2024 (UTC) **:Was rejected. **:The similar proposal {{P|13986}} was accepted, but per the comments on your proposal, just having that set (and [[Z30455|mapping it to one of our enums]]) isn't sufficient since a language might have exceptions to its conjugation rules, or handle rational/real numbers in different ways. **:Being able to make use of CLDR data might still be desirable to avoid hardcoding rules and exceptions into Functions. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 02:16, 18 December 2025 (UTC) ** This is duplicated with a suggestion above. There's some work done already: [[Z15977]]. We also have lightweight enums like {{Z|28215}} now. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 21:11, 30 November 2025 (UTC) === Cryptographic functions === (would be better with types representing a stream of bytes) * {{todo}} [[wikidata:Q47477417|MD2]] - {{z+|Z10135}} * {{todo}} [[wikidata:Q47462255|MD4]] - {{z+|Z10136}} * {{todo}} [[wikidata:Q27036232|MD5]] - {{z+|Z10137}} * {{todo}} [[wikidata:Q47208127|RIPEMD-128]] - {{z+|Z10138}} * {{todo}} [[wikidata:Q47208127|RIPEMD-160]] - {{z+|Z10139}} * {{todo}} [[wikidata:Q47463469|BLAKE2b-160]] - {{z+|Z10140}} * {{todo}} [[wikidata:Q47463469|BLAKE2b-256]] - {{z+|Z10141}} * {{todo}} [[wikidata:Q47463469|BLAKE2b-384]] - {{z+|Z10142}} * {{todo}} [[wikidata:Q47463469|BLAKE2b-512]] - {{z+|Z10143}} * {{todo}} [[wikidata:Q47463469|BLAKE2s-128]] - {{z+|Z10144}} * {{todo}} [[wikidata:Q47463469|BLAKE2s-160]] - {{z+|Z10145}} * {{todo}} [[wikidata:Q47463469|BLAKE2s-224]] - {{z+|Z10146}} * {{todo}} [[wikidata:Q47463469|BLAKE2s-256]] - {{z+|Z10147}} * {{todo}} [[wikidata:Q47465971|SHA-224]] - {{z+|Z10149}} * {{todo}} [[wikidata:Q47465971|HMAC-SHA-256]] * {{todo}} [[wikidata:Q87486893|SHAKE-128]] - {{z+|Z10150}} * {{todo}} [[wikidata:Q87486893|SHAKE-256]] - {{z+|Z10151}} * {{todo}} [[wikidata:Q56099240|ChaCha20]] - {{z+|Z25376}} * {{todo}} [[wikidata:Q56099436|X25519]] - {{z+|Z25393}} * {{todo}} [[wikidata:Q1190947|Keccak-f[1600]]] - {{z+|Z25399}} === Date, time, and calendric functions === Discussion of types: [[WF:type#Calendar types]] ==== Asgardian calendar ==== Base on the [https://asgardia.space/en/calendar online converter]; see [[w:Asgardia|Asgardia]] for context ==== Bengali calendar ==== {{z+|Z12926}} ==== Chinese calendar ==== ==== French Republican Calendar ==== decimalises and secularises the Gregorian * day names: {{z+|Z13006}}{{not done}} '''yet''' ==== Gregorian ==== widely used calendar derived from the Julian, basis for [[xkcd:1179|ISO 8601]] * date to ISO week number {{q|2110154}} * string to date * date to ISO 8601 string *: {{done}}, see {{z+|Z21842}}. --[[User:Sbb1413|Sbb1413]] ([[User talk:Sbb1413|talk]]) 18:47, 21 January 2025 (UTC) * date to year (yyyy) * date to month of the year (1-12) * date to month name (January-December) * date to day of the month (1-31) * date to hour of the day (0-23) * date to minutes (0-59) * date to seconds (0-59) Named Day from Date or day of year ; Input type : Date ; Output Type : String. ; The initial use case was automated population of On The Day, based on various collections of Holidays, festival days and observances. ? [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:35, 26 March 2025 (UTC) :So If you gave it 2025-05-01 It said "All Fools Day" etc.. Possibly an additional input of enumrated type to indicate which data set to pull holidays, fesitvals and observances from. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:35, 26 March 2025 (UTC) Diary/calander Header function - Using the above and other date functions, generates a data set from a given date. Hence if you give it 2003-05-01 you get back a JOSN set contianing the {Day of week:String, Day in the Month, Observances} etc. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:35, 26 March 2025 (UTC) ==== Holocene calendar ==== * [[w:en:Holocene calendar#Conversion]] *: {{done}}, see {{z+|Z21913}}. --[[User:Sbb1413|Sbb1413]] ([[User talk:Sbb1413|talk]]) 13:30, 25 January 2025 (UTC) ==== Indian national calendar ==== ==== Islamic ==== a Lunar calendar, also called Hijri ==== Julian ==== mostly used by astronomers, some historians, and some Orthodox Christian denominations ==== Lukashian ==== [https://lukashian.org/download Java] reference implementation ([https://github.com/The-Lukashian-Calendar/lukashian GitHub]) ==== Mesoamerican calendars ==== including civil and clerical forms ==== Persian ==== also called Jalali ==== Thai calendar ==== ==== Hebrew calendar ==== ==== Darian calendar ==== Proposed time-keeping system for Mars, requires Julian Date/Time to calculate and a month enumeration: [[WF:type proposals#Something to think about]] === Basic numerical functions === * round up ("1.289" & "2" ⇒ "1.29"; "5678" & "2" ⇒ "5700") *: So if the number is floating point, round to n decimal places, and if not, round to n significant figures. Is that right? [[User:BrightSunMan|BrightSunMan]] ([[User talk:BrightSunMan|talk]]) 19:36, 24 December 2023 (UTC) *: {{done}} {{Z|20053}}/{{Z|21043}} and {{Z|27705}}/{{Z|21047}} * round down ** {{done}} {{Z|20032}}/{{Z|20841}} * return integer value (5678.678 ⇒ 5678) ** {{done}} {{Z|19841}}/{{Z|26315}} * {{z+|Z13587}} (23 ⇒ "twenty-three") * Convert money from US$ to anything else ** requires source of conversion rates, which is a hole in function-likeness * Arabic numeral to Etruscan numeral * Etruscan numeral to Arabic numeral === Data serialization functions === * parse a string as [[:en:JSON|JSON]] * extract string from JSON object based on [[:d:Q121208951|JSONPath]] (<code>{"name":"Alice"}</code>, "$.name" ⇒ "Alice") *:Why not first convert a JSON string to an object, and then have a function that extracts fields based on JSONPath? Doing Stringly-typed things like this proposal as defined isn't a good idea. [[User:0xDeadbeef|0xDeadbeef]] ([[User talk:0xDeadbeef|talk]]) 16:16, 5 August 2023 (UTC) *::This seems to be a good idea, thanks! I moved and splitted the proposal accordingly. --[[User:1-Byte|1-Byte]] ([[User talk:1-Byte|talk]]) 09:51, 6 August 2023 (UTC) *:: is it okay to go ahead to create this 'extract string from JSON object based on JSONPath' as a function ? [[User:Dolphyb|Dolphyb]] ([[User talk:Dolphyb|talk]]) 16:14, 15 February 2024 (UTC) === Basic list/iterable functions requiring numeric types === * Sum the elements of a numeric list - {{z+|Z14038}} * Product of the elements of a numeric list ** {{done}} {{Z|23909}}/{{Z|13558}} * {{z+|Z12676}} * Slice of list elements: for the supplied list, return a list of elements that are at indexes between a supplied range n:m ** Zero indexing is used (first element is index 0)? ** n and m are are included in the range? ** What happens if n and/or m are invalid indexes? ** {{done}} {{Z+|Z26556}} * Remove slice of elements from list: return the supplied list with elements between a supplied range of indexes removed ** Zero indexing is used (first element is index 0)? ** n and m are are included in the range? ** What happens if n and/or m are invalid indexes? * Every nth element of list: returns every nth element of the supplied list ** {{done}} {{Z+|Z28735}} * Remove every nth element of list: removes every nth element of the supplied list - * sample n objects from list (return up to n [[Wikifunctions:Determinism|random]] objects from the list) * Jaccard similarity coefficient (see https://en.wikipedia.org/wiki/Jaccard_index) * Weighted average. Supply a list of values, and a second list of the same length of their weights. Returns a weighted average ** Example Input: <code>values = [10, 20, 30]</code>, <code>weights = [1, 2, 3]</code> ** Output: <code>23.33</code> ** {{done}} {{Z+|Z28066}} === Geodetics functions === [[w:en:planetary coordinate system]], [[w:en:well-known text representation of coordinate reference systems]] ==== Earth ==== * convert coordinates outside of the ranges (-180, 180) for longitude and (-90, 90) for latitude to a canonical form * [https://plus.codes Plus Codes] to/from geocoordinates ** functions should match the semantics of the [https://github.com/google/open-location-code/blob/main/Documentation/Specification/specification.md#api-requirements expected API]: <code>is valid Plus Code?</code>, <code>is shortened Plus Code?</code>, <code>is full Plus Code?</code>, {{z+|Z25963}}, <code>co-ordinates from Plus Code</code> ([https://github.com/google/open-location-code/blob/main/Documentation/Specification/specification.md#decoding SW corner]), <code>shorten Plus Code</code>, <code>recover nearest Plus Code</code> ** implementations for JS and Python are provided, Apache 2.0 licenced, not sure how self-contained they are ** most of the functions could also be implemented by composition ** sample data is provided for testing (it's ~500 cases for each of encode/decode and ~50 cases for each of the others, but they're grouped nicely so maybe take 1 from each) ==== Mars ==== [[w:en:areography#Cartography and geodesy]] * convert coordinates outside of the ranges [0, 360) for longitude and (-90, 90) for latitude to a canonical form ==== Moon ==== [[w:en:selenography#Lunar cartography and toponymy]] === Unit conversion functions === * {{z+|Z15560}} ::The function has two implementations now. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 20:32, 20 February 2026 (UTC) === Conversion function : 2D Cartesian to 2D Polar === Input : matrix [x,y] Output: matrix [θ,r] Short text : Polar conversion of x,y to a polar space centred at 0,0 in the Cartesian. Constraints: x,y,r are reals (float64), θ lies in the range -π<0<π (Sign determined in relation to standards used in STEM applications. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 14:30, 26 March 2025 (UTC) :The companion could also be provided. As I never did Geodetic functions, I am not sure how Lat, Long to map projection would work , but useful. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 14:30, 26 March 2025 (UTC) :See also [[WF:Type proposals/complex128]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 10:17, 1 December 2025 (UTC) === Trigonometric functions === * {{Z|Z16463}}, {{Z|Z12473}}, *: Input : float64 Angle in radians. *: Output : float64 desired trignometric value [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:40, 26 March 2025 (UTC) * {{Z|Z29125}} *:Inputs: 2D Point (float64s, Reals, or perhaps [[WF:Type_proposals/complex128|a single complex number]]), angle (float64 or Real) *:Output: 2D Point (matching the input type) *:Not necessarily one single function; one can be created for each input type [[User:WrenFalcon|WrenFalcon]] ([[User talk:WrenFalcon|talk]]) 22:05, 31 July 2025 (UTC) ==== Function proposal : Decimalise angle of the form ('1:x' or '1 in x') to % (in 100) or ‰ (in 1000) ==== *Suggested name: gardient_decimal. *Input type: Integer ( The 1 is implied.). Lower Bound +1: Upper Bound: 1000 (for most practical situations?) *Output type: Real/float 64. Proposer: [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:05, 28 March 2025 (UTC) ===Color Functions=== ==== Colorspace Conversion ==== x,y,Y to sRGB (Illuminant D65). Input : 3tuple of float64, Output: 3 tuple of integer, where 0>=r<=255, 0>=g<=255 0>=b<=255. Convert a color specfied as 3 float64 values, from x,y,Y colorspace to sRGB or raise an "Out of Gaumt" exception. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:09, 7 April 2025 (UTC) ==== Spectral Approximate from sRGB or XYZ values. ==== I'd like to see the techniques detailed here: http://scottburns.us/reflectance-curves-from-srgb/ implemented in Wikifunctions as the provided spreadhseet later in the paper doesn't appear to work with Libre Office. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:32, 2 June 2025 (UTC) ==== Subtractive color mix (Pigment style) ==== Implement the mixing function from Spectral.js (https://github.com/rvanwijnen/spectral.js/blob/3.0.0/spectral.js )(MIT license), to allow 2 or more sRGB triplets to be mixed like pigment colors. This is different from the subtract colors function implemented previously. === Music Functions === It would be nice to have '''12 equal temperament pitch class''' and '''12 equal temperament pitch''' types, as they would be useful for calculating harmonies and melodies. The pitch classes could be stored as natural numbers from 0 to 11, and represented with symbols C, C♯, D, ..., B. The pitches could be stored as integers with -1 being B3, 0 being C4, 1 being C♯4, etc. Over time, we could expand the pitch class and pitch types to other temperaments and just intonation. As I'm new to Wikifunctions and my coding skills are next to zero, this is just a suggestion to the community. (edited) [[User:CaffeineP|CaffeineP]] ([[User talk:CaffeineP|talk]]) 14:48, 9 April 2025 (UTC) :Yes… There are some notational challenges because of enharmonics as well as naming conventions varying by language/culture, so English A♯ is equivalent to German B and English B♭, for example. Ideally, I would want the (English) pitch class that is five semitones higher than G♭ to be displayed as C♭ rather than B. :Also, given some reference pitch like A4 = 440 Hz, we should be able to return the frequency in hertz of a given pitch and, conversely, the nearest pitch for a given frequency and its offset in cents (or whatever). The computation is a lot simpler than representing the result (or capturing how the result should be represented)! [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 20:08, 9 April 2025 (UTC) :If you use the cardinal values for the pitches from the MIDI standard (or an extension to such, since they're limited to 0..<128) then you could make some of these functions already, no [[WF:Type_proposals|type proposal]] needed. Granted a lot of them would just be addition/subtraction. And if you semi-arbitrarily map A = 0, A# = 1, etc. then you could do all of them. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 10:33, 1 December 2025 (UTC) * '''12-ET Pitch Class of a Pitch''': Return the 12 equal temperament pitch class of a given 12 equal temperament pitch. For example, C4 returns C. * '''12-ET Pitch based on Pitch Class''': Return a 12 equal temperament pitch based on a given 12 equal temperament pitch class and a given integer. For example, C and 4 return C4. * '''Interval between 12-ET Pitch Classes in Semitones''': Get the interval in semitones between two 12 equal temperament pitch classes, always assuming that the first is lower than (or the same as) the second, and the interval is less than an octave. For example, C and B return 11, while B and C return 1. * '''Interval between 12-ET Pitches in Semitones''': Get the interval in semitones between two 12 equal temperament pitches. For example, C4 and B3 return -1, while C3 and B4 return 23. ** {{Z+|Z25219}} * '''Raise 12-ET Pitch Class by Semitones''': Get a new 12 equal temperament pitch class through raising a given pitch class by the provided number of semitones. For example, raising B by 1 semitone returns C. ** {{Z+|Z25407}} * '''Lower 12-ET Pitch Class by Semitones''': Same as above, but lower the pitch class instead of raising it. ** {{Z+|Z25407}} * '''Raise 12-ET Pitch by Semitones''': Get a new 12 equal temperament pitch through raising a given pitch by the provided number of semitones. For example, raising B3 by 1 semitone returns C4. * '''Lower 12-ET Pitch by Semitones''': Same as above, but lower the pitch instead of raising it. * '''Frequency of a 12-ET Pitch''': Return a float64 frequency in Hz based on the provided 12 equal temperament pitch (and possibly a reference pitch with its frequency; if not provided, take default A4 = 440 Hz). ** {{Z+|Z25217}} * '''Approximate 12-ET Pitch Class based on Frequency''': Return a 12 equal temperament pitch class approximately based on the provided frequency in Hz. * '''Approximate 12-ET Pitch based on Frequency''': Return a 12 equal temperament pitch approximately based on the provided frequency in Hz. === SVG Functions === I would be nice to generate SVG (a XML-based vector image format which is basically a long string), it could allow to replace a lot of images on Commons or templates/tools. Here some examples: * create simple forms, * create graphs (line graph/bar graph for population or for production, elections diagrams like [[:File:1900Hawaii.svg]], etc.), * create more complex visualisation like genealogical trees, * create coat of arms (?), * etc. Cheers, [[User:VIGNERON|VIGNERON]] ([[User talk:VIGNERON|talk]]) 10:47, 23 April 2025 (UTC) :@[[User:VIGNERON|VIGNERON]]: Eventually that is something we might support, but there'll be nothing any time soon. It has a number of complex security and scalability concerns, sadly. [[User:Jdforrester (WMF)|Jdforrester (WMF)]] ([[User talk:Jdforrester (WMF)|talk]]) 13:21, 23 April 2025 (UTC) ::{{ping|Jdforrester (WMF)}} thanks. I talked about it for the last Corner but I wanted to leave a record here, if we have time, maybe I'll use that time to write some things to prepare (like listing templates and tools on the Wikimedia projects that generate SVG or visualisations). Cheers, [[User:VIGNERON|VIGNERON]] ([[User talk:VIGNERON|talk]]) 15:28, 23 April 2025 (UTC) :::Of course! I've explicitly added a section on this here: [[Wikifunctions:Embedded function calls#Non-text output]] — hope that helps assure you that we're thinking about it. [[User:Jdforrester (WMF)|Jdforrester (WMF)]] ([[User talk:Jdforrester (WMF)|talk]]) 21:40, 23 April 2025 (UTC) === Biology === ==== Taxon functions ==== A taxon type could be useful, as could a taxon rank enum ({{Q|P31}} {{Q|Q427626}}). --[[User:WrenFalcon|WrenFalcon]] ([[User talk:WrenFalcon|talk]]) 16:49, 22 September 2025 (UTC) * Wikidata item representing taxon rank ({{Q|P31}} {{Q|Q427626}}) is at genus level or below ** Should(?) be possible with the current Wikidata functionality, from what I understand. See [[:Wikifunctions:Project chat#Taxon rank function(s)]] for a more detailed explanation. --[[User:WrenFalcon|WrenFalcon]] ([[User talk:WrenFalcon|talk]]) 23:27, 16 May 2025 (UTC) * compare taxon ranks ** Cases: a < b, a == b, a > b, undetermined/incomparable (if a or b are clades, this should be returned/used) * get taxon code of nomenclature ({{Q|P944}}) * is parent taxon of / is child taxon of ** <code>is parent taxon of(Taxon a, Taxon b) => b.parent == a OR is parent taxon of(a, b.parent)</code> * format taxon name (according to relevant rules of nomenclature) ** Include author and year citation? Maybe page too, if present? == Object / type / function functions == == External function lists == * [[WF:importing]] qyft3ws4wbtwd2gnf9t4ekb55isp7dl 272363 272362 2026-05-04T21:36:03Z Arlo Barnes 1231 /* Lukashian */ blurb 272363 wikitext text/x-wiki {{Shortcut|[[WF:SAF]]|[[WF:RF]]}} Do you have an idea for a new function? Suggest it here! It may help to refer to [[Wikifunctions:Glossary|our glossary]]. You can [https://www.wikifunctions.org/wiki/Special:CreateZObject?zid=Z8 create a function] right away if you have the user-rights. If a function requires a new type, consider [[WF:TP|proposing it]]. Note that for now '''we only support a limited number of types as input and output types''' of functions. More types are coming in the next few months. For the full list, see [[WF:Type]]. Once created, consider adding new Functions to the [[Wikifunctions:Catalogue|catalogue]]. [[Category:Maintenance]] == Requests from Abstract Wikipedia editors == {{main|abstract:Project:Suggested functions}} === Infobox === I'm thinking we can adapt [[w:module:infobox]] to create infobox HTML in abstract articles. Maybe it can even use info from Wikidata to populate it, like it already does on some wikis. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 06:34, 28 April 2026 (UTC) == Proposed functions requiring only available types == === String === ==== String character discard functions ==== ==== String character replacement functions ==== Add the word 'the' to the start of a function. e.g United Kingdom - the United Kingdom. [[User:FantasticWikiUser|FantasticWikiUser]] ([[User talk:FantasticWikiUser|talk]]) 11:27, 25 March 2026 (UTC) :Yes… simple enough to do but not entirely clear when it is required. We’ve been [https://t.me/Wikifunctions/29989 discussing it on Telegram]. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 12:10, 25 March 2026 (UTC) ::This was an issue I found on [[abstract:Q21]] when I couldn't add it there. [[User:FantasticWikiUser|FantasticWikiUser]] ([[User talk:FantasticWikiUser|talk]]) 12:16, 25 March 2026 (UTC) :I worked on {{z|Z33138}} today. I'm not sure it covers all corner cases, feel free to try it out and add more tests :) [[User:So9q|So9q]] ([[User talk:So9q|talk]]) 20:32, 5 April 2026 (UTC) ==== String search functions ==== ==== String escaping and unescaping functions ==== ==== String encoding and decoding functions ==== * Unicode normalising functions (there are several types of normalisation) * [https://html.spec.whatwg.org/#named-character-references HTML named character encode] * [[wikidata:Q47466379|Punycode encode]] - {{z+|Z10178}} (part only, not whole url); see also {{z+|Z10185}} * [[:en:Unified_English_Braille|Unified English Braille encode]] (discarding invalid characters?) *[https://braille-autoriteit.org/standaarden/achtpuntsbraille/ Dutch eight-dot Braille] encode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 21:38, 17 January 2026 (UTC) *[https://braille-autoriteit.org/standaarden/achtpuntsbraille/ Dutch eight-dot Braille] decode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 21:38, 17 January 2026 (UTC) *[https://braille-autoriteit.org/versie-2019-van-zespunts-standaard/ Dutch six-dot Braille] encode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 21:38, 17 January 2026 (UTC) *[https://braille-autoriteit.org/versie-2019-van-zespunts-standaard/ Dutch six-dot Braille] decode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 21:38, 17 January 2026 (UTC) *[[google:ipa+braille&oq=IPA+Braille&gs_lcrp=EgZjaHJvbWUqDAgAECMYJxiABBiKBTIMCAAQIxgnGIAEGIoFMg0IARAAGIYDGIAEGIoFMg0IAhAAGIYDGIAEGIoFMgoIAxAAGIAEGKIEMgoIBBAAGIAEGKIEMgYIBRBFGDwyBggGEEUYPTIGCAcQRRg90gEHMjMyajBqN6gCALACAA&sourceid=chrome&ie=UTF-8|IPA Braille]] encode (IPA --> IPA Braille) [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 11:42, 18 January 2026 (UTC) *[[google:ipa+braille&oq=IPA+Braille&gs_lcrp=EgZjaHJvbWUqDAgAECMYJxiABBiKBTIMCAAQIxgnGIAEGIoFMg0IARAAGIYDGIAEGIoFMg0IAhAAGIYDGIAEGIoFMgoIAxAAGIAEGKIEMgoIBBAAGIAEGKIEMgYIBRBFGDwyBggGEEUYPTIGCAcQRRg90gEHMjMyajBqN6gCALACAA&sourceid=chrome&ie=UTF-8|IPA Braille]] decode (IPA Braille --> IPA) [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 11:42, 18 January 2026 (UTC) ==== String presentation functions ==== * add [[:en:Quotation_mark|locale-specific quotation marks]] to string ** Shouldn't the output depend on the locale? See [[mw:Extension:Scribunto/Lua_reference_manual#mw.language:formatNum|mw.language:formatNum]]. —[[User:Dexxor|Dexxor]] ([[User talk:Dexxor|talk]]) 17:15, 4 September 2023 (UTC) ==== String colour notation functions ==== * Hue of color (since we already have [[Z13017]], [[Z18263]] and [[Z18268]]) ==== String notation validation checks ==== * check if string is an [[:en:International_Chemical_Identifier]] ** {{Partly done}} see {{z+|Z21539}}. Supports the verification of the chemical formula and the stereochemical layer. There are 13 testcaes that I've written, all of which are passed by my JavaScript implementation. Note that a python implementation is not possible as the regex module is not available in Wikifunctions. [[User:MolecularPilot|MolecularPilot]] ([[User talk:MolecularPilot|talk]]) 03:09, 11 January 2025 (UTC) ** To do: *** Needs to verify the hydrogen and connection sections of the main layer *** Support the charge layer *** Support the isotopic layer **[[User:MolecularPilot|MolecularPilot]] ([[User talk:MolecularPilot|talk]]) 03:09, 11 January 2025 (UTC) ***{{ping|MolecularPilot}} A python impl. is infact possible. I created a basic direct translation at {{z+|Z22823}}. Some tests are failing as the regex needs a bit of sorting out, out of scope for me, but you can give it a try! Keep in mind that you need to escape any \ with a \\ just before saving per [[Wikifunctions:Python_implementations#Known_limitations_as_of_October_2024]]. <span style="font-family:monospace;font-weight:bold">[[User:Bunnypranav|<span style="color:#63b3ed">~/Bunny</span><span style="color:#2c5282">pranav</span>]]:&lt;[[User talk:Bunnypranav|<span style="color:#63b3ed">ping</span>]]&gt;</span> 06:14, 26 February 2025 (UTC) * check if string is a [[:en:SMILES_arbitrary_target_specification|SMILES arbitrary target specification (SMARTS) notation]] * check if string is an [[:en:ABC_notation|ABC notation]] * check if string is a [[:en:LilyPond|LilyPond notation]] * check if string is a [[:en:UIC_classification_of_locomotive_axle_arrangements|UIC classification of locomotive axle arrangements notation]] * check if a string is a valid [[:en:Digital_object_identifier|DOI]] ** Something about implementation difficulties: https://stackoverflow.com/questions/27910/finding-a-doi-in-a-document-or-page [[User:Alexander-Mart-Earth|Alexander-Mart-Earth]] ([[User talk:Alexander-Mart-Earth|talk]]) 14:28, 21 December 2023 (UTC) ==== String validation checks ==== * check if string is a valid ISO 3166 country code * check if string is a valid [[:en:ISO_8601#EDTF|EDTF]] date/time ====String analysis functions==== ==== Monolingual text ==== ==== String Wikitext operations ==== ... === Natural number === === Integer=== === Byte === See [[Wikifunctions:Catalogue/Boolean operations#Byte functions|existing Byte functions]] in catalogue. * next byte without overflow: byte → byte * previous byte without overflow: byte → byte * next byte by Gray code: byte → byte * previous byte by Gray code: byte → byte * all bits set: byte → boolean * no bits set: byte → boolean * add bytes without overflow: byte, byte → byte * subtract bytes without overflow: byte, byte → byte * multiply bytes without overflow: byte, byte → byte * add bytes with overflow: byte, byte → byte * subtract bytes with overflow: byte, byte → byte * multiply bytes with overflow: byte, byte → byte * modulo bytes: byte, byte → byte * byte division: byte, byte → byte * right shift: byte → byte * left shift: byte → byte * right shift by n: byte, natural number → byte * left shift by n: byte, natural number → byte * right shift as ring: byte → byte * left shift as ring: byte → byte * right shift by n as ring: byte, natural number → byte * left shift by n as ring: byte, natural number → byte === Unicode code point === See [[Wikifunctions:Catalogue/Character operations#Unicode code points|existing code point functions in catalogue]]. * Codepoint to list of bytes for UTF-8 * Codepoint to list of bytes for UTF-16 * Codepoint to list of bytes for UTF-32 ===Object=== === List === ==== Basic list/iterable functions ==== ==== Complex list functions ==== ==== CSV list operations ==== === Functions with functions as arguments === * test whether certain functions have specific properties of [[:w:Homogeneous_relation|homogeneous relations]] for particular lists/sets === Gregorian calendar date === See [[Wikifunctions:Catalogue/Date operations#Gregorian calendar dates|catalogue of calendar date functions]] for existing functions. * Create a reading function for Dagbani that handles all the possible formats (both the English-linke and the traditional ones, both the Gregorian and the Hijra calendars). [https://docs.google.com/document/d/1u7-ZeY7NHt75JICUPAYky3-7KgkvauD_W3fBjmvpFO0/edit?tab=t.0#heading=h.gf6hp9o3gi0j] [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 15:43, 31 May 2025 (UTC) * same day of the year: date, date → boolean * same day of the week: date, date → boolean * within a year: date, date → boolean * within a week: date, date → boolean * within n days: date, date → boolean * months between: date, date → natural number * weeks between: date, date → natural number * n days later: date, natural number → date * n days earlier: date, natural number → date * n weeks earlier: date, natural number → date * n months later: date, natural number → date * n months earlier: date, natural number → date * n years later: date, natural number → date * n years earlier: date, natural number → date * Julian day number to date: integer → date * how many leap days passed between two dates: date, date → natural number * how many weekdays between two dates: date, date, day of the week → natural number * within JavaScript's date implementation: date → boolean * next time a day of the month is on a specific weekday: date, natural number, day of the week → date * next Friday the 13th: date → date * nth weekday of the month: date, day of the week, natural number → date * nth working days after: date, list of wikidata item references (list of holidays), wikidata item reference (place) → date === Gregorian year === See [[Wikifunctions:Catalogue/Date operations#Gregorian year|catalogue of year functions]] for existing functions. == Morphological functions == morphology is the part of linguistics that studies how language parts are 'shaped' and change diachronically and when inflected. Hausa, Igbo, Malayalam, Bangla/Bengali and Dagbani are [[d:Wikidata:Lexicographical data/Focus languages|focus languages]] for Wikidata's lexicographic dataset, which is an important aspect of [[WF:glossary#Abstract Wikipedia|Abstract Wikipedia]]. === mul - Multiple languages === * inputs: natural number (new numeric type) and language Z-number; output: 'singular', 'dual', 'paucal', 'plural', etc. as string *: {{doing}}: {{z+|Z15977}} * {{z|Z26570}} but with a {{z|Z881}} of {{z|Z6091}} for the {{para|location}} input;<br/>such as in "{{q|Q122962941}} is an {{q|Q350604}} in {{em|{{q|Q801}} and {{q|Q39760}}}}" === ase - American Sign Language === * string: Stokoe to ase-[https://github.com/sutton-signwriting/core Sgnw] and vice-versa (consult {{ping|Slevinski}} as to best approach) === bn - Bangla === === bzs - Brazilian Sign Language === * [[w:en:Brazilian Sign Language#Writing|SignWriting]] * [[incubator:wp/bzs/AS1f502S22f00M513x521S1f502492x497S22f00488x480_AS15d22S22b04M514x527S22b04493x497S15d22487x473|sample text]] === cy - Welsh === [[w:en:colloquial Welsh morphology]] === dag - Dagbani === === de - German === * tense * person * number for each verb ** tenses: present, past, ...? ** person: first, second, third ** number: singular, plural ** {{doing}} third person singular present ** second person singular preterite === en - English === * {{z+|Z11390}} Verb -> agent noun, e.g. "dance"->"dancer" * Join English morphemes (extends {{z+|Z13254}} to cases like re + en + able + er + s → re-enablers. {{z+|Z13254}} will correctly join re-enable + ers or re- + enablers, but re + enablers → “renablers” (incorrect). {{z+|Z13275}} tests the Reduce function to produce “detoxification” from a list of four morphemes (orchestrator limit exceeded with five). I doubt we’ll want to derive “toxify” from “toxic”, however. * Derive lemmas from a form. This is envisaged as the converse of Join English morphemes. The focus would be identifying the base form (the lexeme’s lemma) rather than further segmenting the lemma. For example, “underlay” should return “underlie” (for which it is the past participle) and the noun “underlay” (for which it is the lemma) and (perhaps) the verb “underlay”, which might be the tendency of an unproductive hen or the activity of a carpet-fitter. As this is a purely functional converse, every string will have itself as a possible lemma. * Generate [[:w:Numeral_prefix|Numerical prefixes]] of various kinds from a natural number input. * {{z+|Z19499}} * Intro for geographical feature: Returns a intro sentence for a geographical feature. ** Example 1: The '''Centre for Fine Arts''' is an '''arts center''' on '''Coudenberg - Koudenberg''' in '''Mont des Arts - Kunstberg, City of Brussels''', '''Belgium''' *** Wikidata label = Centre for Fine Arts *** {{Property|P31}} = {{Q|Q2190251}} *** {{Property|P706}} = {{Q|Q13451667}} *** {{Property|P276}} = {{Q|Q115180808}} *** {{Property|P131}} = {{Q|Q239}} *** {{Property|P17}} = {{Q|Q31}} **Example 2: '''Olympus Mons''' is a '''mons''' on '''Mars''' on '''Tharsis''', '''Amazonis quadrangle''' and '''Tharsis quadrangle'''. ***Wikidata label = Olympus Mons ***{{Property|P31}} = {{Q|Q429088}} ***{{Property|P376}} = {{Q|Q111}} ***{{Property|P706}} = {{Q|Q2170645}} ***{{Property|P276}} = {{Q|Q3054547}}, {{Q|Q3054525}} **Example 3: '''Princess Elisabeth Antarctica''' is a '''Antarctic research station''' on '''Utsteinen Nunatak''', '''Antarctic Treaty area''', '''Antartica''' ***Wikidata label = Princess Elisabeth Antarctica ***{{Property|P31}} = {{Q|Q749622}} ***{{Property|P706}} = {{Q|Q7754959}} ***{{Property|P131}} = {{Q|Q21590062}} ***{{Property|P17}} = ''none'' ***{{Property|P30}} = {{Q|Q51}} '''<big>eu - Basque</big>''' * Basque language declension system in rather regular based on suffixes. ** Here a few examples for Basque declension: *** {{z+|Z18541}} *** {{z+|Z18670}} **Before implementing all of them, we may propose an overall classification that eases both the implementation and the future usage of the functions. Here a first try based on bibliography from the [https://www.euskaltzaindia.eus/index.php?option=com_ebe&view=bilaketa&task=pdf&Itemid=1161&atala=deklinabide-taulak Basque Language Academy]: ***Personal pronouns: they can be treated as exceptions (e.g. "zuek -> zuei", etc.) together with proper noun declension, or as a separate case. ***Determiners: they can be treated as exceptions (e.g. "hau" -> "honek", etc) together with common noun declension, or as a separated case ***Grammatical cases: ****Absolutive ("Nor"): indefinite, singular and plural ****Ergative ("Nork"): indefinite, singular and plural ****Dative ("Nori"): indefinite, singular and plural ***Place and Time: we must distinguish animate (AN) and inanimate (IN) ****Inessive IN ("Non"): indefinite, singular and plural ****Inessive AN ("Norengan"): indefinite, singular and plural - It could be a composition of "Noren" + "-gan" ****Place and time ("Nongo"): indefinite, singular and plural ****Allative IN ("Nora"): indefinite, singular and plural ****Allative AN ("Norengana"): indefinite, singular and plural - It could be a composition of "Noren/Norengan" + "-gan/-a" ****Finished Allative AN ("Noraino"): indefinite, singular and plural - It could be a composition of "Nora" + "-ino" ****Finished Allative AN ("Norengainaino"): indefinite, singular and plural - It could be a composition of "Noregana" + "-ino" ****Right way Allative IN ("Noratz"): indefinite, singular and plural - It could be a composition of "Nora" + "-ntz" ****Right way Allative AN ("Norenganantz"): indefinite, singular and plural - It could be a composition of "Norengana" + "-ntz" ****Ablative IN ("Nondik"): indefinite, singular and plural ****Ablative AN ("Norengandik"): indefinite, singular and plural ***Rest of the cases: ****Partitive ("Zerik"): indefinite ****Possessive ("Noren"): indefinite, singular and plural ****Sociative ("Norekin"): indefinite, singular and plural ****Instrumental ("Zerez"): indefinite, singular and plural ****Motivative ("Zerengatik"): indefinite, singular and plural ****Destinative ("Norentzat"): indefinite, singular and plural - It could be a composition of "Noren" + "-tzat" ***Special case: ****Prolative ("Nortzat"): indefinite ***To take into consideration: ****Together with animate and inanimate classification, we should also consider if the noun is a proper noun ("izen berezia"). We can identify that automatically (e.g. check if written in Title case, but this may not be always possible like in the beginning of sentences), but a dedicated function may be preferred (or a boolean to the generic function saying it is a proper noun). ****The main distinction is between noun ending by vowel or consonant that can be easily computed === fr - French === * {{z+|Z11590}} Masculine adjective -> feminine, e.g. "exact"->"exacte" * Conjugated verb => Infinitive, e.g. "alla" => "aller", "mordit" => "mordre" === ha - Hausa === A notated demo sentence ("Aishà taa jeefar dà kàren Indoo" ― "Aisha threw away Indo's dog") is available at http://intent.xigt.org === ig - Igbo === === ldn - Láadan === section moved to [[WF:human languages/Z1882]] === ml - Malayalam === === nl - Dutch === * Cardinals ** Cardinal to number ** Number to cardinal * Verbs ** [https://e-ans.ivdnt.org/topics/pid/ans0203lingtopic Conjugations] * Morphology ** Diminutive to root word *** Belgian diminutive to root word ** Root word to diminutive *** Belgian root word to diminutive (-ke) ** Plural diminutive to root word *** Belgian plural diminutive to root word ** Root word to plural diminutive *** Belgian root word to plural diminutive (-kes) ===kcg - Tyap=== * Tyap has six determiners/definite articles which determine the pronoun, number (1-5), etc. forms used. ** ka & wu (basically for singular nouns and adjectives with a few exceptions) ** hu & ji (for singular and plural nouns and adjectives) ** ba & na (mainly for plural nouns. *** Determiners come after nouns. *** When an adjective comes before a noun, the determiner used is that of the adjective. E.g., a̱sham (ka) - (the) beautiful, kyang (hu) - (the) thing = a̱sham kyang (ka) - (the) beautiful thing. * Tyap has a non-uniform noun class system used for noun pluralization and conversion from one part of speech to another. E.g., a̱bwom (song) and bwom (to sing), a̱fufwuo (ears) and fufwuo (ear). * Affixation: Prefixes exist but suffixes hardly are found. === vgt - Flemish Sign Language === * SignWriting encode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 12:44, 18 January 2026 (UTC) == Proposed functions requiring future types == '''Note these functions cannot be implemented properly until the needed types are requested and approved.''' If one wishes to nevertheless attempt to define and implement them, * the functions and implementations should indicate prominently in their labels that their input/output types must be adjusted once support for the appropriate replacement types become available; ''and'' * the functions should ''not'' be used in the implementations of any other functions, as the later adjustment of input/output types to appropriate replacements will break those implementations. === String manipulation functions === === String analysis functions === * count distance between two letters in given alphabet (default to 26-charcater western alphabet. case insensitive. e.g. "a" & "A" ⇒ 0; "K" & "N" ⇒ 3) === String encoding and decoding functions === (would be better with types representing a stream of bytes) * [[wikidata:Q113486941|BASE45 encode]] * [[wikidata:Q113486941|BASE45 decode]] * Hexadecimal UTF-8 encode ("ABC ₤" ⇒ "41 42 43 20 E2 82 A4") * Hexadecimal UTF-8 decode ("41 42 43 20 E2 82 A4" ⇒ "ABC ₤") * Decimal UTF-8 encode ("ABC ₤" ⇒ "65 66 67 32 226 130 164") * Decimal UTF-8 decode ("65 66 67 32 226 130 164" ⇒ "ABC ₤") * Octal UTF-8 encode ("ABC ₤" ⇒ "101 102 103 40 342 202 244") * Octal UTF-8 decode ("101 102 103 40 342 202 244" ⇒ "ABC ₤") * Binary UTF-8 encode ("ABC ₤" ⇒ "01000001 01000010 01000011 00100000 11100010 10000010 10100100") * Binary UTF-8 decode ("01000001 01000010 01000011 00100000 11100010 10000010 10100100" ⇒ "ABC ₤") * Unicode code point encode ("ABC ₤" ⇒ "41 42 43 20 20A4") - {{z+|Z10785}} * Unicode code point decode ("41 42 43 20 20A4" ⇒ "ABC ₤") * Create regular expression object/string (i.e: "test" & "i" to /test/i) === Natural language functions === * Choose singular or plural based on number (e.g. singularOrPlural("person",6") -> "people") ** Note that there are also dual and other [[:w:grammatical number|grammatical number]]s in other languages. [[User:魔琴|魔琴]] ([[User talk:魔琴|talk]]) 18:54, 26 October 2023 (UTC) ** relevant interwiki link: [[d:WD:property proposal/plural forms]] [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 04:15, 9 February 2024 (UTC) **:Was rejected. **:The similar proposal {{P|13986}} was accepted, but per the comments on your proposal, just having that set (and [[Z30455|mapping it to one of our enums]]) isn't sufficient since a language might have exceptions to its conjugation rules, or handle rational/real numbers in different ways. **:Being able to make use of CLDR data might still be desirable to avoid hardcoding rules and exceptions into Functions. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 02:16, 18 December 2025 (UTC) ** This is duplicated with a suggestion above. There's some work done already: [[Z15977]]. We also have lightweight enums like {{Z|28215}} now. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 21:11, 30 November 2025 (UTC) === Cryptographic functions === (would be better with types representing a stream of bytes) * {{todo}} [[wikidata:Q47477417|MD2]] - {{z+|Z10135}} * {{todo}} [[wikidata:Q47462255|MD4]] - {{z+|Z10136}} * {{todo}} [[wikidata:Q27036232|MD5]] - {{z+|Z10137}} * {{todo}} [[wikidata:Q47208127|RIPEMD-128]] - {{z+|Z10138}} * {{todo}} [[wikidata:Q47208127|RIPEMD-160]] - {{z+|Z10139}} * {{todo}} [[wikidata:Q47463469|BLAKE2b-160]] - {{z+|Z10140}} * {{todo}} [[wikidata:Q47463469|BLAKE2b-256]] - {{z+|Z10141}} * {{todo}} [[wikidata:Q47463469|BLAKE2b-384]] - {{z+|Z10142}} * {{todo}} [[wikidata:Q47463469|BLAKE2b-512]] - {{z+|Z10143}} * {{todo}} [[wikidata:Q47463469|BLAKE2s-128]] - {{z+|Z10144}} * {{todo}} [[wikidata:Q47463469|BLAKE2s-160]] - {{z+|Z10145}} * {{todo}} [[wikidata:Q47463469|BLAKE2s-224]] - {{z+|Z10146}} * {{todo}} [[wikidata:Q47463469|BLAKE2s-256]] - {{z+|Z10147}} * {{todo}} [[wikidata:Q47465971|SHA-224]] - {{z+|Z10149}} * {{todo}} [[wikidata:Q47465971|HMAC-SHA-256]] * {{todo}} [[wikidata:Q87486893|SHAKE-128]] - {{z+|Z10150}} * {{todo}} [[wikidata:Q87486893|SHAKE-256]] - {{z+|Z10151}} * {{todo}} [[wikidata:Q56099240|ChaCha20]] - {{z+|Z25376}} * {{todo}} [[wikidata:Q56099436|X25519]] - {{z+|Z25393}} * {{todo}} [[wikidata:Q1190947|Keccak-f[1600]]] - {{z+|Z25399}} === Date, time, and calendric functions === Discussion of types: [[WF:type#Calendar types]] ==== Asgardian calendar ==== Base on the [https://asgardia.space/en/calendar online converter]; see [[w:Asgardia|Asgardia]] for context ==== Bengali calendar ==== {{z+|Z12926}} ==== Chinese calendar ==== ==== French Republican Calendar ==== decimalises and secularises the Gregorian * day names: {{z+|Z13006}}{{not done}} '''yet''' ==== Gregorian ==== widely used calendar derived from the Julian, basis for [[xkcd:1179|ISO 8601]] * date to ISO week number {{q|2110154}} * string to date * date to ISO 8601 string *: {{done}}, see {{z+|Z21842}}. --[[User:Sbb1413|Sbb1413]] ([[User talk:Sbb1413|talk]]) 18:47, 21 January 2025 (UTC) * date to year (yyyy) * date to month of the year (1-12) * date to month name (January-December) * date to day of the month (1-31) * date to hour of the day (0-23) * date to minutes (0-59) * date to seconds (0-59) Named Day from Date or day of year ; Input type : Date ; Output Type : String. ; The initial use case was automated population of On The Day, based on various collections of Holidays, festival days and observances. ? [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:35, 26 March 2025 (UTC) :So If you gave it 2025-05-01 It said "All Fools Day" etc.. Possibly an additional input of enumrated type to indicate which data set to pull holidays, fesitvals and observances from. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:35, 26 March 2025 (UTC) Diary/calander Header function - Using the above and other date functions, generates a data set from a given date. Hence if you give it 2003-05-01 you get back a JOSN set contianing the {Day of week:String, Day in the Month, Observances} etc. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:35, 26 March 2025 (UTC) ==== Holocene calendar ==== * [[w:en:Holocene calendar#Conversion]] *: {{done}}, see {{z+|Z21913}}. --[[User:Sbb1413|Sbb1413]] ([[User talk:Sbb1413|talk]]) 13:30, 25 January 2025 (UTC) ==== Indian national calendar ==== ==== Islamic ==== a Lunar calendar, also called Hijri ==== Julian ==== mostly used by astronomers, some historians, and some Orthodox Christian denominations ==== Lukashian ==== Simple perpetual calendar system designed to be extensible to other reference frames (for example a Mars-centric one). Eschews leap-units. * [https://lukashian.org/download Java] reference implementation * [https://github.com/The-Lukashian-Calendar/lukashian GitHub] ==== Mesoamerican calendars ==== including civil and clerical forms ==== Persian ==== also called Jalali ==== Thai calendar ==== ==== Hebrew calendar ==== ==== Darian calendar ==== Proposed time-keeping system for Mars, requires Julian Date/Time to calculate and a month enumeration: [[WF:type proposals#Something to think about]] === Basic numerical functions === * round up ("1.289" & "2" ⇒ "1.29"; "5678" & "2" ⇒ "5700") *: So if the number is floating point, round to n decimal places, and if not, round to n significant figures. Is that right? [[User:BrightSunMan|BrightSunMan]] ([[User talk:BrightSunMan|talk]]) 19:36, 24 December 2023 (UTC) *: {{done}} {{Z|20053}}/{{Z|21043}} and {{Z|27705}}/{{Z|21047}} * round down ** {{done}} {{Z|20032}}/{{Z|20841}} * return integer value (5678.678 ⇒ 5678) ** {{done}} {{Z|19841}}/{{Z|26315}} * {{z+|Z13587}} (23 ⇒ "twenty-three") * Convert money from US$ to anything else ** requires source of conversion rates, which is a hole in function-likeness * Arabic numeral to Etruscan numeral * Etruscan numeral to Arabic numeral === Data serialization functions === * parse a string as [[:en:JSON|JSON]] * extract string from JSON object based on [[:d:Q121208951|JSONPath]] (<code>{"name":"Alice"}</code>, "$.name" ⇒ "Alice") *:Why not first convert a JSON string to an object, and then have a function that extracts fields based on JSONPath? Doing Stringly-typed things like this proposal as defined isn't a good idea. [[User:0xDeadbeef|0xDeadbeef]] ([[User talk:0xDeadbeef|talk]]) 16:16, 5 August 2023 (UTC) *::This seems to be a good idea, thanks! I moved and splitted the proposal accordingly. --[[User:1-Byte|1-Byte]] ([[User talk:1-Byte|talk]]) 09:51, 6 August 2023 (UTC) *:: is it okay to go ahead to create this 'extract string from JSON object based on JSONPath' as a function ? [[User:Dolphyb|Dolphyb]] ([[User talk:Dolphyb|talk]]) 16:14, 15 February 2024 (UTC) === Basic list/iterable functions requiring numeric types === * Sum the elements of a numeric list - {{z+|Z14038}} * Product of the elements of a numeric list ** {{done}} {{Z|23909}}/{{Z|13558}} * {{z+|Z12676}} * Slice of list elements: for the supplied list, return a list of elements that are at indexes between a supplied range n:m ** Zero indexing is used (first element is index 0)? ** n and m are are included in the range? ** What happens if n and/or m are invalid indexes? ** {{done}} {{Z+|Z26556}} * Remove slice of elements from list: return the supplied list with elements between a supplied range of indexes removed ** Zero indexing is used (first element is index 0)? ** n and m are are included in the range? ** What happens if n and/or m are invalid indexes? * Every nth element of list: returns every nth element of the supplied list ** {{done}} {{Z+|Z28735}} * Remove every nth element of list: removes every nth element of the supplied list - * sample n objects from list (return up to n [[Wikifunctions:Determinism|random]] objects from the list) * Jaccard similarity coefficient (see https://en.wikipedia.org/wiki/Jaccard_index) * Weighted average. Supply a list of values, and a second list of the same length of their weights. Returns a weighted average ** Example Input: <code>values = [10, 20, 30]</code>, <code>weights = [1, 2, 3]</code> ** Output: <code>23.33</code> ** {{done}} {{Z+|Z28066}} === Geodetics functions === [[w:en:planetary coordinate system]], [[w:en:well-known text representation of coordinate reference systems]] ==== Earth ==== * convert coordinates outside of the ranges (-180, 180) for longitude and (-90, 90) for latitude to a canonical form * [https://plus.codes Plus Codes] to/from geocoordinates ** functions should match the semantics of the [https://github.com/google/open-location-code/blob/main/Documentation/Specification/specification.md#api-requirements expected API]: <code>is valid Plus Code?</code>, <code>is shortened Plus Code?</code>, <code>is full Plus Code?</code>, {{z+|Z25963}}, <code>co-ordinates from Plus Code</code> ([https://github.com/google/open-location-code/blob/main/Documentation/Specification/specification.md#decoding SW corner]), <code>shorten Plus Code</code>, <code>recover nearest Plus Code</code> ** implementations for JS and Python are provided, Apache 2.0 licenced, not sure how self-contained they are ** most of the functions could also be implemented by composition ** sample data is provided for testing (it's ~500 cases for each of encode/decode and ~50 cases for each of the others, but they're grouped nicely so maybe take 1 from each) ==== Mars ==== [[w:en:areography#Cartography and geodesy]] * convert coordinates outside of the ranges [0, 360) for longitude and (-90, 90) for latitude to a canonical form ==== Moon ==== [[w:en:selenography#Lunar cartography and toponymy]] === Unit conversion functions === * {{z+|Z15560}} ::The function has two implementations now. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 20:32, 20 February 2026 (UTC) === Conversion function : 2D Cartesian to 2D Polar === Input : matrix [x,y] Output: matrix [θ,r] Short text : Polar conversion of x,y to a polar space centred at 0,0 in the Cartesian. Constraints: x,y,r are reals (float64), θ lies in the range -π<0<π (Sign determined in relation to standards used in STEM applications. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 14:30, 26 March 2025 (UTC) :The companion could also be provided. As I never did Geodetic functions, I am not sure how Lat, Long to map projection would work , but useful. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 14:30, 26 March 2025 (UTC) :See also [[WF:Type proposals/complex128]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 10:17, 1 December 2025 (UTC) === Trigonometric functions === * {{Z|Z16463}}, {{Z|Z12473}}, *: Input : float64 Angle in radians. *: Output : float64 desired trignometric value [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:40, 26 March 2025 (UTC) * {{Z|Z29125}} *:Inputs: 2D Point (float64s, Reals, or perhaps [[WF:Type_proposals/complex128|a single complex number]]), angle (float64 or Real) *:Output: 2D Point (matching the input type) *:Not necessarily one single function; one can be created for each input type [[User:WrenFalcon|WrenFalcon]] ([[User talk:WrenFalcon|talk]]) 22:05, 31 July 2025 (UTC) ==== Function proposal : Decimalise angle of the form ('1:x' or '1 in x') to % (in 100) or ‰ (in 1000) ==== *Suggested name: gardient_decimal. *Input type: Integer ( The 1 is implied.). Lower Bound +1: Upper Bound: 1000 (for most practical situations?) *Output type: Real/float 64. Proposer: [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:05, 28 March 2025 (UTC) ===Color Functions=== ==== Colorspace Conversion ==== x,y,Y to sRGB (Illuminant D65). Input : 3tuple of float64, Output: 3 tuple of integer, where 0>=r<=255, 0>=g<=255 0>=b<=255. Convert a color specfied as 3 float64 values, from x,y,Y colorspace to sRGB or raise an "Out of Gaumt" exception. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:09, 7 April 2025 (UTC) ==== Spectral Approximate from sRGB or XYZ values. ==== I'd like to see the techniques detailed here: http://scottburns.us/reflectance-curves-from-srgb/ implemented in Wikifunctions as the provided spreadhseet later in the paper doesn't appear to work with Libre Office. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:32, 2 June 2025 (UTC) ==== Subtractive color mix (Pigment style) ==== Implement the mixing function from Spectral.js (https://github.com/rvanwijnen/spectral.js/blob/3.0.0/spectral.js )(MIT license), to allow 2 or more sRGB triplets to be mixed like pigment colors. This is different from the subtract colors function implemented previously. === Music Functions === It would be nice to have '''12 equal temperament pitch class''' and '''12 equal temperament pitch''' types, as they would be useful for calculating harmonies and melodies. The pitch classes could be stored as natural numbers from 0 to 11, and represented with symbols C, C♯, D, ..., B. The pitches could be stored as integers with -1 being B3, 0 being C4, 1 being C♯4, etc. Over time, we could expand the pitch class and pitch types to other temperaments and just intonation. As I'm new to Wikifunctions and my coding skills are next to zero, this is just a suggestion to the community. (edited) [[User:CaffeineP|CaffeineP]] ([[User talk:CaffeineP|talk]]) 14:48, 9 April 2025 (UTC) :Yes… There are some notational challenges because of enharmonics as well as naming conventions varying by language/culture, so English A♯ is equivalent to German B and English B♭, for example. Ideally, I would want the (English) pitch class that is five semitones higher than G♭ to be displayed as C♭ rather than B. :Also, given some reference pitch like A4 = 440 Hz, we should be able to return the frequency in hertz of a given pitch and, conversely, the nearest pitch for a given frequency and its offset in cents (or whatever). The computation is a lot simpler than representing the result (or capturing how the result should be represented)! [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 20:08, 9 April 2025 (UTC) :If you use the cardinal values for the pitches from the MIDI standard (or an extension to such, since they're limited to 0..<128) then you could make some of these functions already, no [[WF:Type_proposals|type proposal]] needed. Granted a lot of them would just be addition/subtraction. And if you semi-arbitrarily map A = 0, A# = 1, etc. then you could do all of them. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 10:33, 1 December 2025 (UTC) * '''12-ET Pitch Class of a Pitch''': Return the 12 equal temperament pitch class of a given 12 equal temperament pitch. For example, C4 returns C. * '''12-ET Pitch based on Pitch Class''': Return a 12 equal temperament pitch based on a given 12 equal temperament pitch class and a given integer. For example, C and 4 return C4. * '''Interval between 12-ET Pitch Classes in Semitones''': Get the interval in semitones between two 12 equal temperament pitch classes, always assuming that the first is lower than (or the same as) the second, and the interval is less than an octave. For example, C and B return 11, while B and C return 1. * '''Interval between 12-ET Pitches in Semitones''': Get the interval in semitones between two 12 equal temperament pitches. For example, C4 and B3 return -1, while C3 and B4 return 23. ** {{Z+|Z25219}} * '''Raise 12-ET Pitch Class by Semitones''': Get a new 12 equal temperament pitch class through raising a given pitch class by the provided number of semitones. For example, raising B by 1 semitone returns C. ** {{Z+|Z25407}} * '''Lower 12-ET Pitch Class by Semitones''': Same as above, but lower the pitch class instead of raising it. ** {{Z+|Z25407}} * '''Raise 12-ET Pitch by Semitones''': Get a new 12 equal temperament pitch through raising a given pitch by the provided number of semitones. For example, raising B3 by 1 semitone returns C4. * '''Lower 12-ET Pitch by Semitones''': Same as above, but lower the pitch instead of raising it. * '''Frequency of a 12-ET Pitch''': Return a float64 frequency in Hz based on the provided 12 equal temperament pitch (and possibly a reference pitch with its frequency; if not provided, take default A4 = 440 Hz). ** {{Z+|Z25217}} * '''Approximate 12-ET Pitch Class based on Frequency''': Return a 12 equal temperament pitch class approximately based on the provided frequency in Hz. * '''Approximate 12-ET Pitch based on Frequency''': Return a 12 equal temperament pitch approximately based on the provided frequency in Hz. === SVG Functions === I would be nice to generate SVG (a XML-based vector image format which is basically a long string), it could allow to replace a lot of images on Commons or templates/tools. Here some examples: * create simple forms, * create graphs (line graph/bar graph for population or for production, elections diagrams like [[:File:1900Hawaii.svg]], etc.), * create more complex visualisation like genealogical trees, * create coat of arms (?), * etc. Cheers, [[User:VIGNERON|VIGNERON]] ([[User talk:VIGNERON|talk]]) 10:47, 23 April 2025 (UTC) :@[[User:VIGNERON|VIGNERON]]: Eventually that is something we might support, but there'll be nothing any time soon. It has a number of complex security and scalability concerns, sadly. [[User:Jdforrester (WMF)|Jdforrester (WMF)]] ([[User talk:Jdforrester (WMF)|talk]]) 13:21, 23 April 2025 (UTC) ::{{ping|Jdforrester (WMF)}} thanks. I talked about it for the last Corner but I wanted to leave a record here, if we have time, maybe I'll use that time to write some things to prepare (like listing templates and tools on the Wikimedia projects that generate SVG or visualisations). Cheers, [[User:VIGNERON|VIGNERON]] ([[User talk:VIGNERON|talk]]) 15:28, 23 April 2025 (UTC) :::Of course! I've explicitly added a section on this here: [[Wikifunctions:Embedded function calls#Non-text output]] — hope that helps assure you that we're thinking about it. [[User:Jdforrester (WMF)|Jdforrester (WMF)]] ([[User talk:Jdforrester (WMF)|talk]]) 21:40, 23 April 2025 (UTC) === Biology === ==== Taxon functions ==== A taxon type could be useful, as could a taxon rank enum ({{Q|P31}} {{Q|Q427626}}). --[[User:WrenFalcon|WrenFalcon]] ([[User talk:WrenFalcon|talk]]) 16:49, 22 September 2025 (UTC) * Wikidata item representing taxon rank ({{Q|P31}} {{Q|Q427626}}) is at genus level or below ** Should(?) be possible with the current Wikidata functionality, from what I understand. See [[:Wikifunctions:Project chat#Taxon rank function(s)]] for a more detailed explanation. --[[User:WrenFalcon|WrenFalcon]] ([[User talk:WrenFalcon|talk]]) 23:27, 16 May 2025 (UTC) * compare taxon ranks ** Cases: a < b, a == b, a > b, undetermined/incomparable (if a or b are clades, this should be returned/used) * get taxon code of nomenclature ({{Q|P944}}) * is parent taxon of / is child taxon of ** <code>is parent taxon of(Taxon a, Taxon b) => b.parent == a OR is parent taxon of(a, b.parent)</code> * format taxon name (according to relevant rules of nomenclature) ** Include author and year citation? Maybe page too, if present? == Object / type / function functions == == External function lists == * [[WF:importing]] j0rv3708cm2qo4njf2ejdxn59w72gwq 272364 272363 2026-05-04T21:38:45Z Arlo Barnes 1231 /* Date, time, and calendric functions */ subsectionate by reference frame 272364 wikitext text/x-wiki {{Shortcut|[[WF:SAF]]|[[WF:RF]]}} Do you have an idea for a new function? Suggest it here! It may help to refer to [[Wikifunctions:Glossary|our glossary]]. You can [https://www.wikifunctions.org/wiki/Special:CreateZObject?zid=Z8 create a function] right away if you have the user-rights. If a function requires a new type, consider [[WF:TP|proposing it]]. Note that for now '''we only support a limited number of types as input and output types''' of functions. More types are coming in the next few months. For the full list, see [[WF:Type]]. Once created, consider adding new Functions to the [[Wikifunctions:Catalogue|catalogue]]. [[Category:Maintenance]] == Requests from Abstract Wikipedia editors == {{main|abstract:Project:Suggested functions}} === Infobox === I'm thinking we can adapt [[w:module:infobox]] to create infobox HTML in abstract articles. Maybe it can even use info from Wikidata to populate it, like it already does on some wikis. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 06:34, 28 April 2026 (UTC) == Proposed functions requiring only available types == === String === ==== String character discard functions ==== ==== String character replacement functions ==== Add the word 'the' to the start of a function. e.g United Kingdom - the United Kingdom. [[User:FantasticWikiUser|FantasticWikiUser]] ([[User talk:FantasticWikiUser|talk]]) 11:27, 25 March 2026 (UTC) :Yes… simple enough to do but not entirely clear when it is required. We’ve been [https://t.me/Wikifunctions/29989 discussing it on Telegram]. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 12:10, 25 March 2026 (UTC) ::This was an issue I found on [[abstract:Q21]] when I couldn't add it there. [[User:FantasticWikiUser|FantasticWikiUser]] ([[User talk:FantasticWikiUser|talk]]) 12:16, 25 March 2026 (UTC) :I worked on {{z|Z33138}} today. I'm not sure it covers all corner cases, feel free to try it out and add more tests :) [[User:So9q|So9q]] ([[User talk:So9q|talk]]) 20:32, 5 April 2026 (UTC) ==== String search functions ==== ==== String escaping and unescaping functions ==== ==== String encoding and decoding functions ==== * Unicode normalising functions (there are several types of normalisation) * [https://html.spec.whatwg.org/#named-character-references HTML named character encode] * [[wikidata:Q47466379|Punycode encode]] - {{z+|Z10178}} (part only, not whole url); see also {{z+|Z10185}} * [[:en:Unified_English_Braille|Unified English Braille encode]] (discarding invalid characters?) *[https://braille-autoriteit.org/standaarden/achtpuntsbraille/ Dutch eight-dot Braille] encode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 21:38, 17 January 2026 (UTC) *[https://braille-autoriteit.org/standaarden/achtpuntsbraille/ Dutch eight-dot Braille] decode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 21:38, 17 January 2026 (UTC) *[https://braille-autoriteit.org/versie-2019-van-zespunts-standaard/ Dutch six-dot Braille] encode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 21:38, 17 January 2026 (UTC) *[https://braille-autoriteit.org/versie-2019-van-zespunts-standaard/ Dutch six-dot Braille] decode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 21:38, 17 January 2026 (UTC) *[[google:ipa+braille&oq=IPA+Braille&gs_lcrp=EgZjaHJvbWUqDAgAECMYJxiABBiKBTIMCAAQIxgnGIAEGIoFMg0IARAAGIYDGIAEGIoFMg0IAhAAGIYDGIAEGIoFMgoIAxAAGIAEGKIEMgoIBBAAGIAEGKIEMgYIBRBFGDwyBggGEEUYPTIGCAcQRRg90gEHMjMyajBqN6gCALACAA&sourceid=chrome&ie=UTF-8|IPA Braille]] encode (IPA --> IPA Braille) [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 11:42, 18 January 2026 (UTC) *[[google:ipa+braille&oq=IPA+Braille&gs_lcrp=EgZjaHJvbWUqDAgAECMYJxiABBiKBTIMCAAQIxgnGIAEGIoFMg0IARAAGIYDGIAEGIoFMg0IAhAAGIYDGIAEGIoFMgoIAxAAGIAEGKIEMgoIBBAAGIAEGKIEMgYIBRBFGDwyBggGEEUYPTIGCAcQRRg90gEHMjMyajBqN6gCALACAA&sourceid=chrome&ie=UTF-8|IPA Braille]] decode (IPA Braille --> IPA) [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 11:42, 18 January 2026 (UTC) ==== String presentation functions ==== * add [[:en:Quotation_mark|locale-specific quotation marks]] to string ** Shouldn't the output depend on the locale? See [[mw:Extension:Scribunto/Lua_reference_manual#mw.language:formatNum|mw.language:formatNum]]. —[[User:Dexxor|Dexxor]] ([[User talk:Dexxor|talk]]) 17:15, 4 September 2023 (UTC) ==== String colour notation functions ==== * Hue of color (since we already have [[Z13017]], [[Z18263]] and [[Z18268]]) ==== String notation validation checks ==== * check if string is an [[:en:International_Chemical_Identifier]] ** {{Partly done}} see {{z+|Z21539}}. Supports the verification of the chemical formula and the stereochemical layer. There are 13 testcaes that I've written, all of which are passed by my JavaScript implementation. Note that a python implementation is not possible as the regex module is not available in Wikifunctions. [[User:MolecularPilot|MolecularPilot]] ([[User talk:MolecularPilot|talk]]) 03:09, 11 January 2025 (UTC) ** To do: *** Needs to verify the hydrogen and connection sections of the main layer *** Support the charge layer *** Support the isotopic layer **[[User:MolecularPilot|MolecularPilot]] ([[User talk:MolecularPilot|talk]]) 03:09, 11 January 2025 (UTC) ***{{ping|MolecularPilot}} A python impl. is infact possible. I created a basic direct translation at {{z+|Z22823}}. Some tests are failing as the regex needs a bit of sorting out, out of scope for me, but you can give it a try! Keep in mind that you need to escape any \ with a \\ just before saving per [[Wikifunctions:Python_implementations#Known_limitations_as_of_October_2024]]. <span style="font-family:monospace;font-weight:bold">[[User:Bunnypranav|<span style="color:#63b3ed">~/Bunny</span><span style="color:#2c5282">pranav</span>]]:&lt;[[User talk:Bunnypranav|<span style="color:#63b3ed">ping</span>]]&gt;</span> 06:14, 26 February 2025 (UTC) * check if string is a [[:en:SMILES_arbitrary_target_specification|SMILES arbitrary target specification (SMARTS) notation]] * check if string is an [[:en:ABC_notation|ABC notation]] * check if string is a [[:en:LilyPond|LilyPond notation]] * check if string is a [[:en:UIC_classification_of_locomotive_axle_arrangements|UIC classification of locomotive axle arrangements notation]] * check if a string is a valid [[:en:Digital_object_identifier|DOI]] ** Something about implementation difficulties: https://stackoverflow.com/questions/27910/finding-a-doi-in-a-document-or-page [[User:Alexander-Mart-Earth|Alexander-Mart-Earth]] ([[User talk:Alexander-Mart-Earth|talk]]) 14:28, 21 December 2023 (UTC) ==== String validation checks ==== * check if string is a valid ISO 3166 country code * check if string is a valid [[:en:ISO_8601#EDTF|EDTF]] date/time ====String analysis functions==== ==== Monolingual text ==== ==== String Wikitext operations ==== ... === Natural number === === Integer=== === Byte === See [[Wikifunctions:Catalogue/Boolean operations#Byte functions|existing Byte functions]] in catalogue. * next byte without overflow: byte → byte * previous byte without overflow: byte → byte * next byte by Gray code: byte → byte * previous byte by Gray code: byte → byte * all bits set: byte → boolean * no bits set: byte → boolean * add bytes without overflow: byte, byte → byte * subtract bytes without overflow: byte, byte → byte * multiply bytes without overflow: byte, byte → byte * add bytes with overflow: byte, byte → byte * subtract bytes with overflow: byte, byte → byte * multiply bytes with overflow: byte, byte → byte * modulo bytes: byte, byte → byte * byte division: byte, byte → byte * right shift: byte → byte * left shift: byte → byte * right shift by n: byte, natural number → byte * left shift by n: byte, natural number → byte * right shift as ring: byte → byte * left shift as ring: byte → byte * right shift by n as ring: byte, natural number → byte * left shift by n as ring: byte, natural number → byte === Unicode code point === See [[Wikifunctions:Catalogue/Character operations#Unicode code points|existing code point functions in catalogue]]. * Codepoint to list of bytes for UTF-8 * Codepoint to list of bytes for UTF-16 * Codepoint to list of bytes for UTF-32 ===Object=== === List === ==== Basic list/iterable functions ==== ==== Complex list functions ==== ==== CSV list operations ==== === Functions with functions as arguments === * test whether certain functions have specific properties of [[:w:Homogeneous_relation|homogeneous relations]] for particular lists/sets === Gregorian calendar date === See [[Wikifunctions:Catalogue/Date operations#Gregorian calendar dates|catalogue of calendar date functions]] for existing functions. * Create a reading function for Dagbani that handles all the possible formats (both the English-linke and the traditional ones, both the Gregorian and the Hijra calendars). [https://docs.google.com/document/d/1u7-ZeY7NHt75JICUPAYky3-7KgkvauD_W3fBjmvpFO0/edit?tab=t.0#heading=h.gf6hp9o3gi0j] [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 15:43, 31 May 2025 (UTC) * same day of the year: date, date → boolean * same day of the week: date, date → boolean * within a year: date, date → boolean * within a week: date, date → boolean * within n days: date, date → boolean * months between: date, date → natural number * weeks between: date, date → natural number * n days later: date, natural number → date * n days earlier: date, natural number → date * n weeks earlier: date, natural number → date * n months later: date, natural number → date * n months earlier: date, natural number → date * n years later: date, natural number → date * n years earlier: date, natural number → date * Julian day number to date: integer → date * how many leap days passed between two dates: date, date → natural number * how many weekdays between two dates: date, date, day of the week → natural number * within JavaScript's date implementation: date → boolean * next time a day of the month is on a specific weekday: date, natural number, day of the week → date * next Friday the 13th: date → date * nth weekday of the month: date, day of the week, natural number → date * nth working days after: date, list of wikidata item references (list of holidays), wikidata item reference (place) → date === Gregorian year === See [[Wikifunctions:Catalogue/Date operations#Gregorian year|catalogue of year functions]] for existing functions. == Morphological functions == morphology is the part of linguistics that studies how language parts are 'shaped' and change diachronically and when inflected. Hausa, Igbo, Malayalam, Bangla/Bengali and Dagbani are [[d:Wikidata:Lexicographical data/Focus languages|focus languages]] for Wikidata's lexicographic dataset, which is an important aspect of [[WF:glossary#Abstract Wikipedia|Abstract Wikipedia]]. === mul - Multiple languages === * inputs: natural number (new numeric type) and language Z-number; output: 'singular', 'dual', 'paucal', 'plural', etc. as string *: {{doing}}: {{z+|Z15977}} * {{z|Z26570}} but with a {{z|Z881}} of {{z|Z6091}} for the {{para|location}} input;<br/>such as in "{{q|Q122962941}} is an {{q|Q350604}} in {{em|{{q|Q801}} and {{q|Q39760}}}}" === ase - American Sign Language === * string: Stokoe to ase-[https://github.com/sutton-signwriting/core Sgnw] and vice-versa (consult {{ping|Slevinski}} as to best approach) === bn - Bangla === === bzs - Brazilian Sign Language === * [[w:en:Brazilian Sign Language#Writing|SignWriting]] * [[incubator:wp/bzs/AS1f502S22f00M513x521S1f502492x497S22f00488x480_AS15d22S22b04M514x527S22b04493x497S15d22487x473|sample text]] === cy - Welsh === [[w:en:colloquial Welsh morphology]] === dag - Dagbani === === de - German === * tense * person * number for each verb ** tenses: present, past, ...? ** person: first, second, third ** number: singular, plural ** {{doing}} third person singular present ** second person singular preterite === en - English === * {{z+|Z11390}} Verb -> agent noun, e.g. "dance"->"dancer" * Join English morphemes (extends {{z+|Z13254}} to cases like re + en + able + er + s → re-enablers. {{z+|Z13254}} will correctly join re-enable + ers or re- + enablers, but re + enablers → “renablers” (incorrect). {{z+|Z13275}} tests the Reduce function to produce “detoxification” from a list of four morphemes (orchestrator limit exceeded with five). I doubt we’ll want to derive “toxify” from “toxic”, however. * Derive lemmas from a form. This is envisaged as the converse of Join English morphemes. The focus would be identifying the base form (the lexeme’s lemma) rather than further segmenting the lemma. For example, “underlay” should return “underlie” (for which it is the past participle) and the noun “underlay” (for which it is the lemma) and (perhaps) the verb “underlay”, which might be the tendency of an unproductive hen or the activity of a carpet-fitter. As this is a purely functional converse, every string will have itself as a possible lemma. * Generate [[:w:Numeral_prefix|Numerical prefixes]] of various kinds from a natural number input. * {{z+|Z19499}} * Intro for geographical feature: Returns a intro sentence for a geographical feature. ** Example 1: The '''Centre for Fine Arts''' is an '''arts center''' on '''Coudenberg - Koudenberg''' in '''Mont des Arts - Kunstberg, City of Brussels''', '''Belgium''' *** Wikidata label = Centre for Fine Arts *** {{Property|P31}} = {{Q|Q2190251}} *** {{Property|P706}} = {{Q|Q13451667}} *** {{Property|P276}} = {{Q|Q115180808}} *** {{Property|P131}} = {{Q|Q239}} *** {{Property|P17}} = {{Q|Q31}} **Example 2: '''Olympus Mons''' is a '''mons''' on '''Mars''' on '''Tharsis''', '''Amazonis quadrangle''' and '''Tharsis quadrangle'''. ***Wikidata label = Olympus Mons ***{{Property|P31}} = {{Q|Q429088}} ***{{Property|P376}} = {{Q|Q111}} ***{{Property|P706}} = {{Q|Q2170645}} ***{{Property|P276}} = {{Q|Q3054547}}, {{Q|Q3054525}} **Example 3: '''Princess Elisabeth Antarctica''' is a '''Antarctic research station''' on '''Utsteinen Nunatak''', '''Antarctic Treaty area''', '''Antartica''' ***Wikidata label = Princess Elisabeth Antarctica ***{{Property|P31}} = {{Q|Q749622}} ***{{Property|P706}} = {{Q|Q7754959}} ***{{Property|P131}} = {{Q|Q21590062}} ***{{Property|P17}} = ''none'' ***{{Property|P30}} = {{Q|Q51}} '''<big>eu - Basque</big>''' * Basque language declension system in rather regular based on suffixes. ** Here a few examples for Basque declension: *** {{z+|Z18541}} *** {{z+|Z18670}} **Before implementing all of them, we may propose an overall classification that eases both the implementation and the future usage of the functions. Here a first try based on bibliography from the [https://www.euskaltzaindia.eus/index.php?option=com_ebe&view=bilaketa&task=pdf&Itemid=1161&atala=deklinabide-taulak Basque Language Academy]: ***Personal pronouns: they can be treated as exceptions (e.g. "zuek -> zuei", etc.) together with proper noun declension, or as a separate case. ***Determiners: they can be treated as exceptions (e.g. "hau" -> "honek", etc) together with common noun declension, or as a separated case ***Grammatical cases: ****Absolutive ("Nor"): indefinite, singular and plural ****Ergative ("Nork"): indefinite, singular and plural ****Dative ("Nori"): indefinite, singular and plural ***Place and Time: we must distinguish animate (AN) and inanimate (IN) ****Inessive IN ("Non"): indefinite, singular and plural ****Inessive AN ("Norengan"): indefinite, singular and plural - It could be a composition of "Noren" + "-gan" ****Place and time ("Nongo"): indefinite, singular and plural ****Allative IN ("Nora"): indefinite, singular and plural ****Allative AN ("Norengana"): indefinite, singular and plural - It could be a composition of "Noren/Norengan" + "-gan/-a" ****Finished Allative AN ("Noraino"): indefinite, singular and plural - It could be a composition of "Nora" + "-ino" ****Finished Allative AN ("Norengainaino"): indefinite, singular and plural - It could be a composition of "Noregana" + "-ino" ****Right way Allative IN ("Noratz"): indefinite, singular and plural - It could be a composition of "Nora" + "-ntz" ****Right way Allative AN ("Norenganantz"): indefinite, singular and plural - It could be a composition of "Norengana" + "-ntz" ****Ablative IN ("Nondik"): indefinite, singular and plural ****Ablative AN ("Norengandik"): indefinite, singular and plural ***Rest of the cases: ****Partitive ("Zerik"): indefinite ****Possessive ("Noren"): indefinite, singular and plural ****Sociative ("Norekin"): indefinite, singular and plural ****Instrumental ("Zerez"): indefinite, singular and plural ****Motivative ("Zerengatik"): indefinite, singular and plural ****Destinative ("Norentzat"): indefinite, singular and plural - It could be a composition of "Noren" + "-tzat" ***Special case: ****Prolative ("Nortzat"): indefinite ***To take into consideration: ****Together with animate and inanimate classification, we should also consider if the noun is a proper noun ("izen berezia"). We can identify that automatically (e.g. check if written in Title case, but this may not be always possible like in the beginning of sentences), but a dedicated function may be preferred (or a boolean to the generic function saying it is a proper noun). ****The main distinction is between noun ending by vowel or consonant that can be easily computed === fr - French === * {{z+|Z11590}} Masculine adjective -> feminine, e.g. "exact"->"exacte" * Conjugated verb => Infinitive, e.g. "alla" => "aller", "mordit" => "mordre" === ha - Hausa === A notated demo sentence ("Aishà taa jeefar dà kàren Indoo" ― "Aisha threw away Indo's dog") is available at http://intent.xigt.org === ig - Igbo === === ldn - Láadan === section moved to [[WF:human languages/Z1882]] === ml - Malayalam === === nl - Dutch === * Cardinals ** Cardinal to number ** Number to cardinal * Verbs ** [https://e-ans.ivdnt.org/topics/pid/ans0203lingtopic Conjugations] * Morphology ** Diminutive to root word *** Belgian diminutive to root word ** Root word to diminutive *** Belgian root word to diminutive (-ke) ** Plural diminutive to root word *** Belgian plural diminutive to root word ** Root word to plural diminutive *** Belgian root word to plural diminutive (-kes) ===kcg - Tyap=== * Tyap has six determiners/definite articles which determine the pronoun, number (1-5), etc. forms used. ** ka & wu (basically for singular nouns and adjectives with a few exceptions) ** hu & ji (for singular and plural nouns and adjectives) ** ba & na (mainly for plural nouns. *** Determiners come after nouns. *** When an adjective comes before a noun, the determiner used is that of the adjective. E.g., a̱sham (ka) - (the) beautiful, kyang (hu) - (the) thing = a̱sham kyang (ka) - (the) beautiful thing. * Tyap has a non-uniform noun class system used for noun pluralization and conversion from one part of speech to another. E.g., a̱bwom (song) and bwom (to sing), a̱fufwuo (ears) and fufwuo (ear). * Affixation: Prefixes exist but suffixes hardly are found. === vgt - Flemish Sign Language === * SignWriting encode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 12:44, 18 January 2026 (UTC) == Proposed functions requiring future types == '''Note these functions cannot be implemented properly until the needed types are requested and approved.''' If one wishes to nevertheless attempt to define and implement them, * the functions and implementations should indicate prominently in their labels that their input/output types must be adjusted once support for the appropriate replacement types become available; ''and'' * the functions should ''not'' be used in the implementations of any other functions, as the later adjustment of input/output types to appropriate replacements will break those implementations. === String manipulation functions === === String analysis functions === * count distance between two letters in given alphabet (default to 26-charcater western alphabet. case insensitive. e.g. "a" & "A" ⇒ 0; "K" & "N" ⇒ 3) === String encoding and decoding functions === (would be better with types representing a stream of bytes) * [[wikidata:Q113486941|BASE45 encode]] * [[wikidata:Q113486941|BASE45 decode]] * Hexadecimal UTF-8 encode ("ABC ₤" ⇒ "41 42 43 20 E2 82 A4") * Hexadecimal UTF-8 decode ("41 42 43 20 E2 82 A4" ⇒ "ABC ₤") * Decimal UTF-8 encode ("ABC ₤" ⇒ "65 66 67 32 226 130 164") * Decimal UTF-8 decode ("65 66 67 32 226 130 164" ⇒ "ABC ₤") * Octal UTF-8 encode ("ABC ₤" ⇒ "101 102 103 40 342 202 244") * Octal UTF-8 decode ("101 102 103 40 342 202 244" ⇒ "ABC ₤") * Binary UTF-8 encode ("ABC ₤" ⇒ "01000001 01000010 01000011 00100000 11100010 10000010 10100100") * Binary UTF-8 decode ("01000001 01000010 01000011 00100000 11100010 10000010 10100100" ⇒ "ABC ₤") * Unicode code point encode ("ABC ₤" ⇒ "41 42 43 20 20A4") - {{z+|Z10785}} * Unicode code point decode ("41 42 43 20 20A4" ⇒ "ABC ₤") * Create regular expression object/string (i.e: "test" & "i" to /test/i) === Natural language functions === * Choose singular or plural based on number (e.g. singularOrPlural("person",6") -> "people") ** Note that there are also dual and other [[:w:grammatical number|grammatical number]]s in other languages. [[User:魔琴|魔琴]] ([[User talk:魔琴|talk]]) 18:54, 26 October 2023 (UTC) ** relevant interwiki link: [[d:WD:property proposal/plural forms]] [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 04:15, 9 February 2024 (UTC) **:Was rejected. **:The similar proposal {{P|13986}} was accepted, but per the comments on your proposal, just having that set (and [[Z30455|mapping it to one of our enums]]) isn't sufficient since a language might have exceptions to its conjugation rules, or handle rational/real numbers in different ways. **:Being able to make use of CLDR data might still be desirable to avoid hardcoding rules and exceptions into Functions. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 02:16, 18 December 2025 (UTC) ** This is duplicated with a suggestion above. There's some work done already: [[Z15977]]. We also have lightweight enums like {{Z|28215}} now. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 21:11, 30 November 2025 (UTC) === Cryptographic functions === (would be better with types representing a stream of bytes) * {{todo}} [[wikidata:Q47477417|MD2]] - {{z+|Z10135}} * {{todo}} [[wikidata:Q47462255|MD4]] - {{z+|Z10136}} * {{todo}} [[wikidata:Q27036232|MD5]] - {{z+|Z10137}} * {{todo}} [[wikidata:Q47208127|RIPEMD-128]] - {{z+|Z10138}} * {{todo}} [[wikidata:Q47208127|RIPEMD-160]] - {{z+|Z10139}} * {{todo}} [[wikidata:Q47463469|BLAKE2b-160]] - {{z+|Z10140}} * {{todo}} [[wikidata:Q47463469|BLAKE2b-256]] - {{z+|Z10141}} * {{todo}} [[wikidata:Q47463469|BLAKE2b-384]] - {{z+|Z10142}} * {{todo}} [[wikidata:Q47463469|BLAKE2b-512]] - {{z+|Z10143}} * {{todo}} [[wikidata:Q47463469|BLAKE2s-128]] - {{z+|Z10144}} * {{todo}} [[wikidata:Q47463469|BLAKE2s-160]] - {{z+|Z10145}} * {{todo}} [[wikidata:Q47463469|BLAKE2s-224]] - {{z+|Z10146}} * {{todo}} [[wikidata:Q47463469|BLAKE2s-256]] - {{z+|Z10147}} * {{todo}} [[wikidata:Q47465971|SHA-224]] - {{z+|Z10149}} * {{todo}} [[wikidata:Q47465971|HMAC-SHA-256]] * {{todo}} [[wikidata:Q87486893|SHAKE-128]] - {{z+|Z10150}} * {{todo}} [[wikidata:Q87486893|SHAKE-256]] - {{z+|Z10151}} * {{todo}} [[wikidata:Q56099240|ChaCha20]] - {{z+|Z25376}} * {{todo}} [[wikidata:Q56099436|X25519]] - {{z+|Z25393}} * {{todo}} [[wikidata:Q1190947|Keccak-f[1600]]] - {{z+|Z25399}} === Date, time, and calendric functions === Discussion of types: [[WF:type#Calendar types]] ==== Earth focus ==== ===== Bengali calendar ===== {{z+|Z12926}} ===== Chinese calendar ===== ===== French Republican Calendar ===== decimalises and secularises the Gregorian * day names: {{z+|Z13006}}{{not done}} '''yet''' ===== Gregorian ===== widely used calendar derived from the Julian, basis for [[xkcd:1179|ISO 8601]] * date to ISO week number {{q|2110154}} * string to date * date to ISO 8601 string *: {{done}}, see {{z+|Z21842}}. --[[User:Sbb1413|Sbb1413]] ([[User talk:Sbb1413|talk]]) 18:47, 21 January 2025 (UTC) * date to year (yyyy) * date to month of the year (1-12) * date to month name (January-December) * date to day of the month (1-31) * date to hour of the day (0-23) * date to minutes (0-59) * date to seconds (0-59) Named Day from Date or day of year ; Input type : Date ; Output Type : String. ; The initial use case was automated population of On The Day, based on various collections of Holidays, festival days and observances. ? [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:35, 26 March 2025 (UTC) :So If you gave it 2025-05-01 It said "All Fools Day" etc.. Possibly an additional input of enumrated type to indicate which data set to pull holidays, fesitvals and observances from. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:35, 26 March 2025 (UTC) Diary/calander Header function - Using the above and other date functions, generates a data set from a given date. Hence if you give it 2003-05-01 you get back a JOSN set contianing the {Day of week:String, Day in the Month, Observances} etc. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:35, 26 March 2025 (UTC) ===== Holocene calendar ===== * [[w:en:Holocene calendar#Conversion]] *: {{done}}, see {{z+|Z21913}}. --[[User:Sbb1413|Sbb1413]] ([[User talk:Sbb1413|talk]]) 13:30, 25 January 2025 (UTC) ===== Indian national calendar ===== ===== Islamic ===== a Lunar calendar, also called Hijri ===== Julian ===== mostly used by astronomers, some historians, and some Orthodox Christian denominations ===== Mesoamerican calendars ===== including civil and clerical forms ===== Persian ===== also called Jalali ===== Thai calendar ===== ===== Hebrew calendar ===== ==== Mars focus ==== ===== Asgardian calendar ===== Base on the [https://asgardia.space/en/calendar online converter]; see [[w:Asgardia|Asgardia]] for context ===== Darian calendar ===== Proposed time-keeping system for Mars, requires Julian Date/Time to calculate and a month enumeration: [[WF:type proposals#Something to think about]] ===== Lukashian calendars ===== Simple perpetual calendar system designed to be extensible to other reference frames (for example a Mars-centric one). Eschews leap-units. * [https://lukashian.org/download Java] reference implementation * [https://github.com/The-Lukashian-Calendar/lukashian GitHub] === Basic numerical functions === * round up ("1.289" & "2" ⇒ "1.29"; "5678" & "2" ⇒ "5700") *: So if the number is floating point, round to n decimal places, and if not, round to n significant figures. Is that right? [[User:BrightSunMan|BrightSunMan]] ([[User talk:BrightSunMan|talk]]) 19:36, 24 December 2023 (UTC) *: {{done}} {{Z|20053}}/{{Z|21043}} and {{Z|27705}}/{{Z|21047}} * round down ** {{done}} {{Z|20032}}/{{Z|20841}} * return integer value (5678.678 ⇒ 5678) ** {{done}} {{Z|19841}}/{{Z|26315}} * {{z+|Z13587}} (23 ⇒ "twenty-three") * Convert money from US$ to anything else ** requires source of conversion rates, which is a hole in function-likeness * Arabic numeral to Etruscan numeral * Etruscan numeral to Arabic numeral === Data serialization functions === * parse a string as [[:en:JSON|JSON]] * extract string from JSON object based on [[:d:Q121208951|JSONPath]] (<code>{"name":"Alice"}</code>, "$.name" ⇒ "Alice") *:Why not first convert a JSON string to an object, and then have a function that extracts fields based on JSONPath? Doing Stringly-typed things like this proposal as defined isn't a good idea. [[User:0xDeadbeef|0xDeadbeef]] ([[User talk:0xDeadbeef|talk]]) 16:16, 5 August 2023 (UTC) *::This seems to be a good idea, thanks! I moved and splitted the proposal accordingly. --[[User:1-Byte|1-Byte]] ([[User talk:1-Byte|talk]]) 09:51, 6 August 2023 (UTC) *:: is it okay to go ahead to create this 'extract string from JSON object based on JSONPath' as a function ? [[User:Dolphyb|Dolphyb]] ([[User talk:Dolphyb|talk]]) 16:14, 15 February 2024 (UTC) === Basic list/iterable functions requiring numeric types === * Sum the elements of a numeric list - {{z+|Z14038}} * Product of the elements of a numeric list ** {{done}} {{Z|23909}}/{{Z|13558}} * {{z+|Z12676}} * Slice of list elements: for the supplied list, return a list of elements that are at indexes between a supplied range n:m ** Zero indexing is used (first element is index 0)? ** n and m are are included in the range? ** What happens if n and/or m are invalid indexes? ** {{done}} {{Z+|Z26556}} * Remove slice of elements from list: return the supplied list with elements between a supplied range of indexes removed ** Zero indexing is used (first element is index 0)? ** n and m are are included in the range? ** What happens if n and/or m are invalid indexes? * Every nth element of list: returns every nth element of the supplied list ** {{done}} {{Z+|Z28735}} * Remove every nth element of list: removes every nth element of the supplied list - * sample n objects from list (return up to n [[Wikifunctions:Determinism|random]] objects from the list) * Jaccard similarity coefficient (see https://en.wikipedia.org/wiki/Jaccard_index) * Weighted average. Supply a list of values, and a second list of the same length of their weights. Returns a weighted average ** Example Input: <code>values = [10, 20, 30]</code>, <code>weights = [1, 2, 3]</code> ** Output: <code>23.33</code> ** {{done}} {{Z+|Z28066}} === Geodetics functions === [[w:en:planetary coordinate system]], [[w:en:well-known text representation of coordinate reference systems]] ==== Earth ==== * convert coordinates outside of the ranges (-180, 180) for longitude and (-90, 90) for latitude to a canonical form * [https://plus.codes Plus Codes] to/from geocoordinates ** functions should match the semantics of the [https://github.com/google/open-location-code/blob/main/Documentation/Specification/specification.md#api-requirements expected API]: <code>is valid Plus Code?</code>, <code>is shortened Plus Code?</code>, <code>is full Plus Code?</code>, {{z+|Z25963}}, <code>co-ordinates from Plus Code</code> ([https://github.com/google/open-location-code/blob/main/Documentation/Specification/specification.md#decoding SW corner]), <code>shorten Plus Code</code>, <code>recover nearest Plus Code</code> ** implementations for JS and Python are provided, Apache 2.0 licenced, not sure how self-contained they are ** most of the functions could also be implemented by composition ** sample data is provided for testing (it's ~500 cases for each of encode/decode and ~50 cases for each of the others, but they're grouped nicely so maybe take 1 from each) ==== Mars ==== [[w:en:areography#Cartography and geodesy]] * convert coordinates outside of the ranges [0, 360) for longitude and (-90, 90) for latitude to a canonical form ==== Moon ==== [[w:en:selenography#Lunar cartography and toponymy]] === Unit conversion functions === * {{z+|Z15560}} ::The function has two implementations now. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 20:32, 20 February 2026 (UTC) === Conversion function : 2D Cartesian to 2D Polar === Input : matrix [x,y] Output: matrix [θ,r] Short text : Polar conversion of x,y to a polar space centred at 0,0 in the Cartesian. Constraints: x,y,r are reals (float64), θ lies in the range -π<0<π (Sign determined in relation to standards used in STEM applications. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 14:30, 26 March 2025 (UTC) :The companion could also be provided. As I never did Geodetic functions, I am not sure how Lat, Long to map projection would work , but useful. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 14:30, 26 March 2025 (UTC) :See also [[WF:Type proposals/complex128]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 10:17, 1 December 2025 (UTC) === Trigonometric functions === * {{Z|Z16463}}, {{Z|Z12473}}, *: Input : float64 Angle in radians. *: Output : float64 desired trignometric value [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:40, 26 March 2025 (UTC) * {{Z|Z29125}} *:Inputs: 2D Point (float64s, Reals, or perhaps [[WF:Type_proposals/complex128|a single complex number]]), angle (float64 or Real) *:Output: 2D Point (matching the input type) *:Not necessarily one single function; one can be created for each input type [[User:WrenFalcon|WrenFalcon]] ([[User talk:WrenFalcon|talk]]) 22:05, 31 July 2025 (UTC) ==== Function proposal : Decimalise angle of the form ('1:x' or '1 in x') to % (in 100) or ‰ (in 1000) ==== *Suggested name: gardient_decimal. *Input type: Integer ( The 1 is implied.). Lower Bound +1: Upper Bound: 1000 (for most practical situations?) *Output type: Real/float 64. Proposer: [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:05, 28 March 2025 (UTC) ===Color Functions=== ==== Colorspace Conversion ==== x,y,Y to sRGB (Illuminant D65). Input : 3tuple of float64, Output: 3 tuple of integer, where 0>=r<=255, 0>=g<=255 0>=b<=255. Convert a color specfied as 3 float64 values, from x,y,Y colorspace to sRGB or raise an "Out of Gaumt" exception. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:09, 7 April 2025 (UTC) ==== Spectral Approximate from sRGB or XYZ values. ==== I'd like to see the techniques detailed here: http://scottburns.us/reflectance-curves-from-srgb/ implemented in Wikifunctions as the provided spreadhseet later in the paper doesn't appear to work with Libre Office. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:32, 2 June 2025 (UTC) ==== Subtractive color mix (Pigment style) ==== Implement the mixing function from Spectral.js (https://github.com/rvanwijnen/spectral.js/blob/3.0.0/spectral.js )(MIT license), to allow 2 or more sRGB triplets to be mixed like pigment colors. This is different from the subtract colors function implemented previously. === Music Functions === It would be nice to have '''12 equal temperament pitch class''' and '''12 equal temperament pitch''' types, as they would be useful for calculating harmonies and melodies. The pitch classes could be stored as natural numbers from 0 to 11, and represented with symbols C, C♯, D, ..., B. The pitches could be stored as integers with -1 being B3, 0 being C4, 1 being C♯4, etc. Over time, we could expand the pitch class and pitch types to other temperaments and just intonation. As I'm new to Wikifunctions and my coding skills are next to zero, this is just a suggestion to the community. (edited) [[User:CaffeineP|CaffeineP]] ([[User talk:CaffeineP|talk]]) 14:48, 9 April 2025 (UTC) :Yes… There are some notational challenges because of enharmonics as well as naming conventions varying by language/culture, so English A♯ is equivalent to German B and English B♭, for example. Ideally, I would want the (English) pitch class that is five semitones higher than G♭ to be displayed as C♭ rather than B. :Also, given some reference pitch like A4 = 440 Hz, we should be able to return the frequency in hertz of a given pitch and, conversely, the nearest pitch for a given frequency and its offset in cents (or whatever). The computation is a lot simpler than representing the result (or capturing how the result should be represented)! [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 20:08, 9 April 2025 (UTC) :If you use the cardinal values for the pitches from the MIDI standard (or an extension to such, since they're limited to 0..<128) then you could make some of these functions already, no [[WF:Type_proposals|type proposal]] needed. Granted a lot of them would just be addition/subtraction. And if you semi-arbitrarily map A = 0, A# = 1, etc. then you could do all of them. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 10:33, 1 December 2025 (UTC) * '''12-ET Pitch Class of a Pitch''': Return the 12 equal temperament pitch class of a given 12 equal temperament pitch. For example, C4 returns C. * '''12-ET Pitch based on Pitch Class''': Return a 12 equal temperament pitch based on a given 12 equal temperament pitch class and a given integer. For example, C and 4 return C4. * '''Interval between 12-ET Pitch Classes in Semitones''': Get the interval in semitones between two 12 equal temperament pitch classes, always assuming that the first is lower than (or the same as) the second, and the interval is less than an octave. For example, C and B return 11, while B and C return 1. * '''Interval between 12-ET Pitches in Semitones''': Get the interval in semitones between two 12 equal temperament pitches. For example, C4 and B3 return -1, while C3 and B4 return 23. ** {{Z+|Z25219}} * '''Raise 12-ET Pitch Class by Semitones''': Get a new 12 equal temperament pitch class through raising a given pitch class by the provided number of semitones. For example, raising B by 1 semitone returns C. ** {{Z+|Z25407}} * '''Lower 12-ET Pitch Class by Semitones''': Same as above, but lower the pitch class instead of raising it. ** {{Z+|Z25407}} * '''Raise 12-ET Pitch by Semitones''': Get a new 12 equal temperament pitch through raising a given pitch by the provided number of semitones. For example, raising B3 by 1 semitone returns C4. * '''Lower 12-ET Pitch by Semitones''': Same as above, but lower the pitch instead of raising it. * '''Frequency of a 12-ET Pitch''': Return a float64 frequency in Hz based on the provided 12 equal temperament pitch (and possibly a reference pitch with its frequency; if not provided, take default A4 = 440 Hz). ** {{Z+|Z25217}} * '''Approximate 12-ET Pitch Class based on Frequency''': Return a 12 equal temperament pitch class approximately based on the provided frequency in Hz. * '''Approximate 12-ET Pitch based on Frequency''': Return a 12 equal temperament pitch approximately based on the provided frequency in Hz. === SVG Functions === I would be nice to generate SVG (a XML-based vector image format which is basically a long string), it could allow to replace a lot of images on Commons or templates/tools. Here some examples: * create simple forms, * create graphs (line graph/bar graph for population or for production, elections diagrams like [[:File:1900Hawaii.svg]], etc.), * create more complex visualisation like genealogical trees, * create coat of arms (?), * etc. Cheers, [[User:VIGNERON|VIGNERON]] ([[User talk:VIGNERON|talk]]) 10:47, 23 April 2025 (UTC) :@[[User:VIGNERON|VIGNERON]]: Eventually that is something we might support, but there'll be nothing any time soon. It has a number of complex security and scalability concerns, sadly. [[User:Jdforrester (WMF)|Jdforrester (WMF)]] ([[User talk:Jdforrester (WMF)|talk]]) 13:21, 23 April 2025 (UTC) ::{{ping|Jdforrester (WMF)}} thanks. I talked about it for the last Corner but I wanted to leave a record here, if we have time, maybe I'll use that time to write some things to prepare (like listing templates and tools on the Wikimedia projects that generate SVG or visualisations). Cheers, [[User:VIGNERON|VIGNERON]] ([[User talk:VIGNERON|talk]]) 15:28, 23 April 2025 (UTC) :::Of course! I've explicitly added a section on this here: [[Wikifunctions:Embedded function calls#Non-text output]] — hope that helps assure you that we're thinking about it. [[User:Jdforrester (WMF)|Jdforrester (WMF)]] ([[User talk:Jdforrester (WMF)|talk]]) 21:40, 23 April 2025 (UTC) === Biology === ==== Taxon functions ==== A taxon type could be useful, as could a taxon rank enum ({{Q|P31}} {{Q|Q427626}}). --[[User:WrenFalcon|WrenFalcon]] ([[User talk:WrenFalcon|talk]]) 16:49, 22 September 2025 (UTC) * Wikidata item representing taxon rank ({{Q|P31}} {{Q|Q427626}}) is at genus level or below ** Should(?) be possible with the current Wikidata functionality, from what I understand. See [[:Wikifunctions:Project chat#Taxon rank function(s)]] for a more detailed explanation. --[[User:WrenFalcon|WrenFalcon]] ([[User talk:WrenFalcon|talk]]) 23:27, 16 May 2025 (UTC) * compare taxon ranks ** Cases: a < b, a == b, a > b, undetermined/incomparable (if a or b are clades, this should be returned/used) * get taxon code of nomenclature ({{Q|P944}}) * is parent taxon of / is child taxon of ** <code>is parent taxon of(Taxon a, Taxon b) => b.parent == a OR is parent taxon of(a, b.parent)</code> * format taxon name (according to relevant rules of nomenclature) ** Include author and year citation? Maybe page too, if present? == Object / type / function functions == == External function lists == * [[WF:importing]] lvd97glayf6et5i3xqhk94wpo15cuc3 272370 272364 2026-05-04T22:36:45Z Arlo Barnes 1231 /* Date, time, and calendric functions */ images 272370 wikitext text/x-wiki {{Shortcut|[[WF:SAF]]|[[WF:RF]]}} Do you have an idea for a new function? Suggest it here! It may help to refer to [[Wikifunctions:Glossary|our glossary]]. You can [https://www.wikifunctions.org/wiki/Special:CreateZObject?zid=Z8 create a function] right away if you have the user-rights. If a function requires a new type, consider [[WF:TP|proposing it]]. Note that for now '''we only support a limited number of types as input and output types''' of functions. More types are coming in the next few months. For the full list, see [[WF:Type]]. Once created, consider adding new Functions to the [[Wikifunctions:Catalogue|catalogue]]. [[Category:Maintenance]] == Requests from Abstract Wikipedia editors == {{main|abstract:Project:Suggested functions}} === Infobox === I'm thinking we can adapt [[w:module:infobox]] to create infobox HTML in abstract articles. Maybe it can even use info from Wikidata to populate it, like it already does on some wikis. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 06:34, 28 April 2026 (UTC) == Proposed functions requiring only available types == === String === ==== String character discard functions ==== ==== String character replacement functions ==== Add the word 'the' to the start of a function. e.g United Kingdom - the United Kingdom. [[User:FantasticWikiUser|FantasticWikiUser]] ([[User talk:FantasticWikiUser|talk]]) 11:27, 25 March 2026 (UTC) :Yes… simple enough to do but not entirely clear when it is required. We’ve been [https://t.me/Wikifunctions/29989 discussing it on Telegram]. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 12:10, 25 March 2026 (UTC) ::This was an issue I found on [[abstract:Q21]] when I couldn't add it there. [[User:FantasticWikiUser|FantasticWikiUser]] ([[User talk:FantasticWikiUser|talk]]) 12:16, 25 March 2026 (UTC) :I worked on {{z|Z33138}} today. I'm not sure it covers all corner cases, feel free to try it out and add more tests :) [[User:So9q|So9q]] ([[User talk:So9q|talk]]) 20:32, 5 April 2026 (UTC) ==== String search functions ==== ==== String escaping and unescaping functions ==== ==== String encoding and decoding functions ==== * Unicode normalising functions (there are several types of normalisation) * [https://html.spec.whatwg.org/#named-character-references HTML named character encode] * [[wikidata:Q47466379|Punycode encode]] - {{z+|Z10178}} (part only, not whole url); see also {{z+|Z10185}} * [[:en:Unified_English_Braille|Unified English Braille encode]] (discarding invalid characters?) *[https://braille-autoriteit.org/standaarden/achtpuntsbraille/ Dutch eight-dot Braille] encode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 21:38, 17 January 2026 (UTC) *[https://braille-autoriteit.org/standaarden/achtpuntsbraille/ Dutch eight-dot Braille] decode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 21:38, 17 January 2026 (UTC) *[https://braille-autoriteit.org/versie-2019-van-zespunts-standaard/ Dutch six-dot Braille] encode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 21:38, 17 January 2026 (UTC) *[https://braille-autoriteit.org/versie-2019-van-zespunts-standaard/ Dutch six-dot Braille] decode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 21:38, 17 January 2026 (UTC) *[[google:ipa+braille&oq=IPA+Braille&gs_lcrp=EgZjaHJvbWUqDAgAECMYJxiABBiKBTIMCAAQIxgnGIAEGIoFMg0IARAAGIYDGIAEGIoFMg0IAhAAGIYDGIAEGIoFMgoIAxAAGIAEGKIEMgoIBBAAGIAEGKIEMgYIBRBFGDwyBggGEEUYPTIGCAcQRRg90gEHMjMyajBqN6gCALACAA&sourceid=chrome&ie=UTF-8|IPA Braille]] encode (IPA --> IPA Braille) [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 11:42, 18 January 2026 (UTC) *[[google:ipa+braille&oq=IPA+Braille&gs_lcrp=EgZjaHJvbWUqDAgAECMYJxiABBiKBTIMCAAQIxgnGIAEGIoFMg0IARAAGIYDGIAEGIoFMg0IAhAAGIYDGIAEGIoFMgoIAxAAGIAEGKIEMgoIBBAAGIAEGKIEMgYIBRBFGDwyBggGEEUYPTIGCAcQRRg90gEHMjMyajBqN6gCALACAA&sourceid=chrome&ie=UTF-8|IPA Braille]] decode (IPA Braille --> IPA) [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 11:42, 18 January 2026 (UTC) ==== String presentation functions ==== * add [[:en:Quotation_mark|locale-specific quotation marks]] to string ** Shouldn't the output depend on the locale? See [[mw:Extension:Scribunto/Lua_reference_manual#mw.language:formatNum|mw.language:formatNum]]. —[[User:Dexxor|Dexxor]] ([[User talk:Dexxor|talk]]) 17:15, 4 September 2023 (UTC) ==== String colour notation functions ==== * Hue of color (since we already have [[Z13017]], [[Z18263]] and [[Z18268]]) ==== String notation validation checks ==== * check if string is an [[:en:International_Chemical_Identifier]] ** {{Partly done}} see {{z+|Z21539}}. Supports the verification of the chemical formula and the stereochemical layer. There are 13 testcaes that I've written, all of which are passed by my JavaScript implementation. Note that a python implementation is not possible as the regex module is not available in Wikifunctions. [[User:MolecularPilot|MolecularPilot]] ([[User talk:MolecularPilot|talk]]) 03:09, 11 January 2025 (UTC) ** To do: *** Needs to verify the hydrogen and connection sections of the main layer *** Support the charge layer *** Support the isotopic layer **[[User:MolecularPilot|MolecularPilot]] ([[User talk:MolecularPilot|talk]]) 03:09, 11 January 2025 (UTC) ***{{ping|MolecularPilot}} A python impl. is infact possible. I created a basic direct translation at {{z+|Z22823}}. Some tests are failing as the regex needs a bit of sorting out, out of scope for me, but you can give it a try! Keep in mind that you need to escape any \ with a \\ just before saving per [[Wikifunctions:Python_implementations#Known_limitations_as_of_October_2024]]. <span style="font-family:monospace;font-weight:bold">[[User:Bunnypranav|<span style="color:#63b3ed">~/Bunny</span><span style="color:#2c5282">pranav</span>]]:&lt;[[User talk:Bunnypranav|<span style="color:#63b3ed">ping</span>]]&gt;</span> 06:14, 26 February 2025 (UTC) * check if string is a [[:en:SMILES_arbitrary_target_specification|SMILES arbitrary target specification (SMARTS) notation]] * check if string is an [[:en:ABC_notation|ABC notation]] * check if string is a [[:en:LilyPond|LilyPond notation]] * check if string is a [[:en:UIC_classification_of_locomotive_axle_arrangements|UIC classification of locomotive axle arrangements notation]] * check if a string is a valid [[:en:Digital_object_identifier|DOI]] ** Something about implementation difficulties: https://stackoverflow.com/questions/27910/finding-a-doi-in-a-document-or-page [[User:Alexander-Mart-Earth|Alexander-Mart-Earth]] ([[User talk:Alexander-Mart-Earth|talk]]) 14:28, 21 December 2023 (UTC) ==== String validation checks ==== * check if string is a valid ISO 3166 country code * check if string is a valid [[:en:ISO_8601#EDTF|EDTF]] date/time ====String analysis functions==== ==== Monolingual text ==== ==== String Wikitext operations ==== ... === Natural number === === Integer=== === Byte === See [[Wikifunctions:Catalogue/Boolean operations#Byte functions|existing Byte functions]] in catalogue. * next byte without overflow: byte → byte * previous byte without overflow: byte → byte * next byte by Gray code: byte → byte * previous byte by Gray code: byte → byte * all bits set: byte → boolean * no bits set: byte → boolean * add bytes without overflow: byte, byte → byte * subtract bytes without overflow: byte, byte → byte * multiply bytes without overflow: byte, byte → byte * add bytes with overflow: byte, byte → byte * subtract bytes with overflow: byte, byte → byte * multiply bytes with overflow: byte, byte → byte * modulo bytes: byte, byte → byte * byte division: byte, byte → byte * right shift: byte → byte * left shift: byte → byte * right shift by n: byte, natural number → byte * left shift by n: byte, natural number → byte * right shift as ring: byte → byte * left shift as ring: byte → byte * right shift by n as ring: byte, natural number → byte * left shift by n as ring: byte, natural number → byte === Unicode code point === See [[Wikifunctions:Catalogue/Character operations#Unicode code points|existing code point functions in catalogue]]. * Codepoint to list of bytes for UTF-8 * Codepoint to list of bytes for UTF-16 * Codepoint to list of bytes for UTF-32 ===Object=== === List === ==== Basic list/iterable functions ==== ==== Complex list functions ==== ==== CSV list operations ==== === Functions with functions as arguments === * test whether certain functions have specific properties of [[:w:Homogeneous_relation|homogeneous relations]] for particular lists/sets === Gregorian calendar date === See [[Wikifunctions:Catalogue/Date operations#Gregorian calendar dates|catalogue of calendar date functions]] for existing functions. * Create a reading function for Dagbani that handles all the possible formats (both the English-linke and the traditional ones, both the Gregorian and the Hijra calendars). [https://docs.google.com/document/d/1u7-ZeY7NHt75JICUPAYky3-7KgkvauD_W3fBjmvpFO0/edit?tab=t.0#heading=h.gf6hp9o3gi0j] [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 15:43, 31 May 2025 (UTC) * same day of the year: date, date → boolean * same day of the week: date, date → boolean * within a year: date, date → boolean * within a week: date, date → boolean * within n days: date, date → boolean * months between: date, date → natural number * weeks between: date, date → natural number * n days later: date, natural number → date * n days earlier: date, natural number → date * n weeks earlier: date, natural number → date * n months later: date, natural number → date * n months earlier: date, natural number → date * n years later: date, natural number → date * n years earlier: date, natural number → date * Julian day number to date: integer → date * how many leap days passed between two dates: date, date → natural number * how many weekdays between two dates: date, date, day of the week → natural number * within JavaScript's date implementation: date → boolean * next time a day of the month is on a specific weekday: date, natural number, day of the week → date * next Friday the 13th: date → date * nth weekday of the month: date, day of the week, natural number → date * nth working days after: date, list of wikidata item references (list of holidays), wikidata item reference (place) → date === Gregorian year === See [[Wikifunctions:Catalogue/Date operations#Gregorian year|catalogue of year functions]] for existing functions. == Morphological functions == morphology is the part of linguistics that studies how language parts are 'shaped' and change diachronically and when inflected. Hausa, Igbo, Malayalam, Bangla/Bengali and Dagbani are [[d:Wikidata:Lexicographical data/Focus languages|focus languages]] for Wikidata's lexicographic dataset, which is an important aspect of [[WF:glossary#Abstract Wikipedia|Abstract Wikipedia]]. === mul - Multiple languages === * inputs: natural number (new numeric type) and language Z-number; output: 'singular', 'dual', 'paucal', 'plural', etc. as string *: {{doing}}: {{z+|Z15977}} * {{z|Z26570}} but with a {{z|Z881}} of {{z|Z6091}} for the {{para|location}} input;<br/>such as in "{{q|Q122962941}} is an {{q|Q350604}} in {{em|{{q|Q801}} and {{q|Q39760}}}}" === ase - American Sign Language === * string: Stokoe to ase-[https://github.com/sutton-signwriting/core Sgnw] and vice-versa (consult {{ping|Slevinski}} as to best approach) === bn - Bangla === === bzs - Brazilian Sign Language === * [[w:en:Brazilian Sign Language#Writing|SignWriting]] * [[incubator:wp/bzs/AS1f502S22f00M513x521S1f502492x497S22f00488x480_AS15d22S22b04M514x527S22b04493x497S15d22487x473|sample text]] === cy - Welsh === [[w:en:colloquial Welsh morphology]] === dag - Dagbani === === de - German === * tense * person * number for each verb ** tenses: present, past, ...? ** person: first, second, third ** number: singular, plural ** {{doing}} third person singular present ** second person singular preterite === en - English === * {{z+|Z11390}} Verb -> agent noun, e.g. "dance"->"dancer" * Join English morphemes (extends {{z+|Z13254}} to cases like re + en + able + er + s → re-enablers. {{z+|Z13254}} will correctly join re-enable + ers or re- + enablers, but re + enablers → “renablers” (incorrect). {{z+|Z13275}} tests the Reduce function to produce “detoxification” from a list of four morphemes (orchestrator limit exceeded with five). I doubt we’ll want to derive “toxify” from “toxic”, however. * Derive lemmas from a form. This is envisaged as the converse of Join English morphemes. The focus would be identifying the base form (the lexeme’s lemma) rather than further segmenting the lemma. For example, “underlay” should return “underlie” (for which it is the past participle) and the noun “underlay” (for which it is the lemma) and (perhaps) the verb “underlay”, which might be the tendency of an unproductive hen or the activity of a carpet-fitter. As this is a purely functional converse, every string will have itself as a possible lemma. * Generate [[:w:Numeral_prefix|Numerical prefixes]] of various kinds from a natural number input. * {{z+|Z19499}} * Intro for geographical feature: Returns a intro sentence for a geographical feature. ** Example 1: The '''Centre for Fine Arts''' is an '''arts center''' on '''Coudenberg - Koudenberg''' in '''Mont des Arts - Kunstberg, City of Brussels''', '''Belgium''' *** Wikidata label = Centre for Fine Arts *** {{Property|P31}} = {{Q|Q2190251}} *** {{Property|P706}} = {{Q|Q13451667}} *** {{Property|P276}} = {{Q|Q115180808}} *** {{Property|P131}} = {{Q|Q239}} *** {{Property|P17}} = {{Q|Q31}} **Example 2: '''Olympus Mons''' is a '''mons''' on '''Mars''' on '''Tharsis''', '''Amazonis quadrangle''' and '''Tharsis quadrangle'''. ***Wikidata label = Olympus Mons ***{{Property|P31}} = {{Q|Q429088}} ***{{Property|P376}} = {{Q|Q111}} ***{{Property|P706}} = {{Q|Q2170645}} ***{{Property|P276}} = {{Q|Q3054547}}, {{Q|Q3054525}} **Example 3: '''Princess Elisabeth Antarctica''' is a '''Antarctic research station''' on '''Utsteinen Nunatak''', '''Antarctic Treaty area''', '''Antartica''' ***Wikidata label = Princess Elisabeth Antarctica ***{{Property|P31}} = {{Q|Q749622}} ***{{Property|P706}} = {{Q|Q7754959}} ***{{Property|P131}} = {{Q|Q21590062}} ***{{Property|P17}} = ''none'' ***{{Property|P30}} = {{Q|Q51}} '''<big>eu - Basque</big>''' * Basque language declension system in rather regular based on suffixes. ** Here a few examples for Basque declension: *** {{z+|Z18541}} *** {{z+|Z18670}} **Before implementing all of them, we may propose an overall classification that eases both the implementation and the future usage of the functions. Here a first try based on bibliography from the [https://www.euskaltzaindia.eus/index.php?option=com_ebe&view=bilaketa&task=pdf&Itemid=1161&atala=deklinabide-taulak Basque Language Academy]: ***Personal pronouns: they can be treated as exceptions (e.g. "zuek -> zuei", etc.) together with proper noun declension, or as a separate case. ***Determiners: they can be treated as exceptions (e.g. "hau" -> "honek", etc) together with common noun declension, or as a separated case ***Grammatical cases: ****Absolutive ("Nor"): indefinite, singular and plural ****Ergative ("Nork"): indefinite, singular and plural ****Dative ("Nori"): indefinite, singular and plural ***Place and Time: we must distinguish animate (AN) and inanimate (IN) ****Inessive IN ("Non"): indefinite, singular and plural ****Inessive AN ("Norengan"): indefinite, singular and plural - It could be a composition of "Noren" + "-gan" ****Place and time ("Nongo"): indefinite, singular and plural ****Allative IN ("Nora"): indefinite, singular and plural ****Allative AN ("Norengana"): indefinite, singular and plural - It could be a composition of "Noren/Norengan" + "-gan/-a" ****Finished Allative AN ("Noraino"): indefinite, singular and plural - It could be a composition of "Nora" + "-ino" ****Finished Allative AN ("Norengainaino"): indefinite, singular and plural - It could be a composition of "Noregana" + "-ino" ****Right way Allative IN ("Noratz"): indefinite, singular and plural - It could be a composition of "Nora" + "-ntz" ****Right way Allative AN ("Norenganantz"): indefinite, singular and plural - It could be a composition of "Norengana" + "-ntz" ****Ablative IN ("Nondik"): indefinite, singular and plural ****Ablative AN ("Norengandik"): indefinite, singular and plural ***Rest of the cases: ****Partitive ("Zerik"): indefinite ****Possessive ("Noren"): indefinite, singular and plural ****Sociative ("Norekin"): indefinite, singular and plural ****Instrumental ("Zerez"): indefinite, singular and plural ****Motivative ("Zerengatik"): indefinite, singular and plural ****Destinative ("Norentzat"): indefinite, singular and plural - It could be a composition of "Noren" + "-tzat" ***Special case: ****Prolative ("Nortzat"): indefinite ***To take into consideration: ****Together with animate and inanimate classification, we should also consider if the noun is a proper noun ("izen berezia"). We can identify that automatically (e.g. check if written in Title case, but this may not be always possible like in the beginning of sentences), but a dedicated function may be preferred (or a boolean to the generic function saying it is a proper noun). ****The main distinction is between noun ending by vowel or consonant that can be easily computed === fr - French === * {{z+|Z11590}} Masculine adjective -> feminine, e.g. "exact"->"exacte" * Conjugated verb => Infinitive, e.g. "alla" => "aller", "mordit" => "mordre" === ha - Hausa === A notated demo sentence ("Aishà taa jeefar dà kàren Indoo" ― "Aisha threw away Indo's dog") is available at http://intent.xigt.org === ig - Igbo === === ldn - Láadan === section moved to [[WF:human languages/Z1882]] === ml - Malayalam === === nl - Dutch === * Cardinals ** Cardinal to number ** Number to cardinal * Verbs ** [https://e-ans.ivdnt.org/topics/pid/ans0203lingtopic Conjugations] * Morphology ** Diminutive to root word *** Belgian diminutive to root word ** Root word to diminutive *** Belgian root word to diminutive (-ke) ** Plural diminutive to root word *** Belgian plural diminutive to root word ** Root word to plural diminutive *** Belgian root word to plural diminutive (-kes) ===kcg - Tyap=== * Tyap has six determiners/definite articles which determine the pronoun, number (1-5), etc. forms used. ** ka & wu (basically for singular nouns and adjectives with a few exceptions) ** hu & ji (for singular and plural nouns and adjectives) ** ba & na (mainly for plural nouns. *** Determiners come after nouns. *** When an adjective comes before a noun, the determiner used is that of the adjective. E.g., a̱sham (ka) - (the) beautiful, kyang (hu) - (the) thing = a̱sham kyang (ka) - (the) beautiful thing. * Tyap has a non-uniform noun class system used for noun pluralization and conversion from one part of speech to another. E.g., a̱bwom (song) and bwom (to sing), a̱fufwuo (ears) and fufwuo (ear). * Affixation: Prefixes exist but suffixes hardly are found. === vgt - Flemish Sign Language === * SignWriting encode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 12:44, 18 January 2026 (UTC) == Proposed functions requiring future types == '''Note these functions cannot be implemented properly until the needed types are requested and approved.''' If one wishes to nevertheless attempt to define and implement them, * the functions and implementations should indicate prominently in their labels that their input/output types must be adjusted once support for the appropriate replacement types become available; ''and'' * the functions should ''not'' be used in the implementations of any other functions, as the later adjustment of input/output types to appropriate replacements will break those implementations. === String manipulation functions === === String analysis functions === * count distance between two letters in given alphabet (default to 26-charcater western alphabet. case insensitive. e.g. "a" & "A" ⇒ 0; "K" & "N" ⇒ 3) === String encoding and decoding functions === (would be better with types representing a stream of bytes) * [[wikidata:Q113486941|BASE45 encode]] * [[wikidata:Q113486941|BASE45 decode]] * Hexadecimal UTF-8 encode ("ABC ₤" ⇒ "41 42 43 20 E2 82 A4") * Hexadecimal UTF-8 decode ("41 42 43 20 E2 82 A4" ⇒ "ABC ₤") * Decimal UTF-8 encode ("ABC ₤" ⇒ "65 66 67 32 226 130 164") * Decimal UTF-8 decode ("65 66 67 32 226 130 164" ⇒ "ABC ₤") * Octal UTF-8 encode ("ABC ₤" ⇒ "101 102 103 40 342 202 244") * Octal UTF-8 decode ("101 102 103 40 342 202 244" ⇒ "ABC ₤") * Binary UTF-8 encode ("ABC ₤" ⇒ "01000001 01000010 01000011 00100000 11100010 10000010 10100100") * Binary UTF-8 decode ("01000001 01000010 01000011 00100000 11100010 10000010 10100100" ⇒ "ABC ₤") * Unicode code point encode ("ABC ₤" ⇒ "41 42 43 20 20A4") - {{z+|Z10785}} * Unicode code point decode ("41 42 43 20 20A4" ⇒ "ABC ₤") * Create regular expression object/string (i.e: "test" & "i" to /test/i) === Natural language functions === * Choose singular or plural based on number (e.g. singularOrPlural("person",6") -> "people") ** Note that there are also dual and other [[:w:grammatical number|grammatical number]]s in other languages. [[User:魔琴|魔琴]] ([[User talk:魔琴|talk]]) 18:54, 26 October 2023 (UTC) ** relevant interwiki link: [[d:WD:property proposal/plural forms]] [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 04:15, 9 February 2024 (UTC) **:Was rejected. **:The similar proposal {{P|13986}} was accepted, but per the comments on your proposal, just having that set (and [[Z30455|mapping it to one of our enums]]) isn't sufficient since a language might have exceptions to its conjugation rules, or handle rational/real numbers in different ways. **:Being able to make use of CLDR data might still be desirable to avoid hardcoding rules and exceptions into Functions. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 02:16, 18 December 2025 (UTC) ** This is duplicated with a suggestion above. There's some work done already: [[Z15977]]. We also have lightweight enums like {{Z|28215}} now. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 21:11, 30 November 2025 (UTC) === Cryptographic functions === (would be better with types representing a stream of bytes) * {{todo}} [[wikidata:Q47477417|MD2]] - {{z+|Z10135}} * {{todo}} [[wikidata:Q47462255|MD4]] - {{z+|Z10136}} * {{todo}} [[wikidata:Q27036232|MD5]] - {{z+|Z10137}} * {{todo}} [[wikidata:Q47208127|RIPEMD-128]] - {{z+|Z10138}} * {{todo}} [[wikidata:Q47208127|RIPEMD-160]] - {{z+|Z10139}} * {{todo}} [[wikidata:Q47463469|BLAKE2b-160]] - {{z+|Z10140}} * {{todo}} [[wikidata:Q47463469|BLAKE2b-256]] - {{z+|Z10141}} * {{todo}} [[wikidata:Q47463469|BLAKE2b-384]] - {{z+|Z10142}} * {{todo}} [[wikidata:Q47463469|BLAKE2b-512]] - {{z+|Z10143}} * {{todo}} [[wikidata:Q47463469|BLAKE2s-128]] - {{z+|Z10144}} * {{todo}} [[wikidata:Q47463469|BLAKE2s-160]] - {{z+|Z10145}} * {{todo}} [[wikidata:Q47463469|BLAKE2s-224]] - {{z+|Z10146}} * {{todo}} [[wikidata:Q47463469|BLAKE2s-256]] - {{z+|Z10147}} * {{todo}} [[wikidata:Q47465971|SHA-224]] - {{z+|Z10149}} * {{todo}} [[wikidata:Q47465971|HMAC-SHA-256]] * {{todo}} [[wikidata:Q87486893|SHAKE-128]] - {{z+|Z10150}} * {{todo}} [[wikidata:Q87486893|SHAKE-256]] - {{z+|Z10151}} * {{todo}} [[wikidata:Q56099240|ChaCha20]] - {{z+|Z25376}} * {{todo}} [[wikidata:Q56099436|X25519]] - {{z+|Z25393}} * {{todo}} [[wikidata:Q1190947|Keccak-f[1600]]] - {{z+|Z25399}} === Date, time, and calendric functions === Discussion of types: [[WF:type#Calendar types]] ==== Earth focus ==== [[file:Axial and apsidal precession.png|thumb|alt=diagram|orbit of Earth]] ===== Bengali calendar ===== {{z+|Z12926}} ===== Chinese calendar ===== ===== French Republican Calendar ===== decimalises and secularises the Gregorian * day names: {{z+|Z13006}}{{not done}} '''yet''' ===== Gregorian ===== widely used calendar derived from the Julian, basis for [[xkcd:1179|ISO 8601]] * date to ISO week number {{q|2110154}} * string to date * date to ISO 8601 string *: {{done}}, see {{z+|Z21842}}. --[[User:Sbb1413|Sbb1413]] ([[User talk:Sbb1413|talk]]) 18:47, 21 January 2025 (UTC) * date to year (yyyy) * date to month of the year (1-12) * date to month name (January-December) * date to day of the month (1-31) * date to hour of the day (0-23) * date to minutes (0-59) * date to seconds (0-59) Named Day from Date or day of year ; Input type : Date ; Output Type : String. ; The initial use case was automated population of On The Day, based on various collections of Holidays, festival days and observances. ? [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:35, 26 March 2025 (UTC) : So If you gave it 2025-05-01 It said "All Fools Day" etc.. Possibly an additional input of enumrated type to indicate which data set to pull holidays, fesitvals and observances from. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:35, 26 March 2025 (UTC) Diary/calander Header function - Using the above and other date functions, generates a data set from a given date. Hence if you give it 2003-05-01 you get back a JOSN set contianing the {Day of week:String, Day in the Month, Observances} etc. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:35, 26 March 2025 (UTC) ===== Holocene calendar ===== * [[w:en:Holocene calendar#Conversion]] *: {{done}}, see {{z+|Z21913}}. --[[User:Sbb1413|Sbb1413]] ([[User talk:Sbb1413|talk]]) 13:30, 25 January 2025 (UTC) ===== Indian national calendar ===== ===== Islamic ===== a Lunar calendar, also called Hijri ===== Julian ===== mostly used by astronomers, some historians, and some Orthodox Christian denominations ===== Mesoamerican calendars ===== including civil and clerical forms ===== Persian ===== also called Jalali ===== Thai calendar ===== ===== Hebrew calendar ===== ==== Mars focus ==== [[file:Lowell - Mars (1894) - Diagram of the Orbits of Mars and the Earth.jpg|thumb|alt=diagram|orbit of Mars]] ===== Asgardian calendar ===== Proposed time-keeping system for Mars; base on the [https://asgardia.space/en/calendar online converter]; see [[w:Asgardia|Asgardia]] for context ===== Darian calendar ===== Proposed time-keeping system for Mars, requires Julian Date/Time to calculate and a month enumeration: [[WF:type proposals#Something to think about]] ===== Lukashian calendars ===== Proposed simple perpetual calendar system designed to be extensible to other reference frames (for example a Mars-centric one). Eschews leap-units. * [https://lukashian.org/download Java] reference implementation * [https://github.com/The-Lukashian-Calendar/lukashian GitHub] === Basic numerical functions === * round up ("1.289" & "2" ⇒ "1.29"; "5678" & "2" ⇒ "5700") *: So if the number is floating point, round to n decimal places, and if not, round to n significant figures. Is that right? [[User:BrightSunMan|BrightSunMan]] ([[User talk:BrightSunMan|talk]]) 19:36, 24 December 2023 (UTC) *: {{done}} {{Z|20053}}/{{Z|21043}} and {{Z|27705}}/{{Z|21047}} * round down ** {{done}} {{Z|20032}}/{{Z|20841}} * return integer value (5678.678 ⇒ 5678) ** {{done}} {{Z|19841}}/{{Z|26315}} * {{z+|Z13587}} (23 ⇒ "twenty-three") * Convert money from US$ to anything else ** requires source of conversion rates, which is a hole in function-likeness * Arabic numeral to Etruscan numeral * Etruscan numeral to Arabic numeral === Data serialization functions === * parse a string as [[:en:JSON|JSON]] * extract string from JSON object based on [[:d:Q121208951|JSONPath]] (<code>{"name":"Alice"}</code>, "$.name" ⇒ "Alice") *:Why not first convert a JSON string to an object, and then have a function that extracts fields based on JSONPath? Doing Stringly-typed things like this proposal as defined isn't a good idea. [[User:0xDeadbeef|0xDeadbeef]] ([[User talk:0xDeadbeef|talk]]) 16:16, 5 August 2023 (UTC) *::This seems to be a good idea, thanks! I moved and splitted the proposal accordingly. --[[User:1-Byte|1-Byte]] ([[User talk:1-Byte|talk]]) 09:51, 6 August 2023 (UTC) *:: is it okay to go ahead to create this 'extract string from JSON object based on JSONPath' as a function ? [[User:Dolphyb|Dolphyb]] ([[User talk:Dolphyb|talk]]) 16:14, 15 February 2024 (UTC) === Basic list/iterable functions requiring numeric types === * Sum the elements of a numeric list - {{z+|Z14038}} * Product of the elements of a numeric list ** {{done}} {{Z|23909}}/{{Z|13558}} * {{z+|Z12676}} * Slice of list elements: for the supplied list, return a list of elements that are at indexes between a supplied range n:m ** Zero indexing is used (first element is index 0)? ** n and m are are included in the range? ** What happens if n and/or m are invalid indexes? ** {{done}} {{Z+|Z26556}} * Remove slice of elements from list: return the supplied list with elements between a supplied range of indexes removed ** Zero indexing is used (first element is index 0)? ** n and m are are included in the range? ** What happens if n and/or m are invalid indexes? * Every nth element of list: returns every nth element of the supplied list ** {{done}} {{Z+|Z28735}} * Remove every nth element of list: removes every nth element of the supplied list - * sample n objects from list (return up to n [[Wikifunctions:Determinism|random]] objects from the list) * Jaccard similarity coefficient (see https://en.wikipedia.org/wiki/Jaccard_index) * Weighted average. Supply a list of values, and a second list of the same length of their weights. Returns a weighted average ** Example Input: <code>values = [10, 20, 30]</code>, <code>weights = [1, 2, 3]</code> ** Output: <code>23.33</code> ** {{done}} {{Z+|Z28066}} === Geodetics functions === [[w:en:planetary coordinate system]], [[w:en:well-known text representation of coordinate reference systems]] ==== Earth ==== * convert coordinates outside of the ranges (-180, 180) for longitude and (-90, 90) for latitude to a canonical form * [https://plus.codes Plus Codes] to/from geocoordinates ** functions should match the semantics of the [https://github.com/google/open-location-code/blob/main/Documentation/Specification/specification.md#api-requirements expected API]: <code>is valid Plus Code?</code>, <code>is shortened Plus Code?</code>, <code>is full Plus Code?</code>, {{z+|Z25963}}, <code>co-ordinates from Plus Code</code> ([https://github.com/google/open-location-code/blob/main/Documentation/Specification/specification.md#decoding SW corner]), <code>shorten Plus Code</code>, <code>recover nearest Plus Code</code> ** implementations for JS and Python are provided, Apache 2.0 licenced, not sure how self-contained they are ** most of the functions could also be implemented by composition ** sample data is provided for testing (it's ~500 cases for each of encode/decode and ~50 cases for each of the others, but they're grouped nicely so maybe take 1 from each) ==== Mars ==== [[w:en:areography#Cartography and geodesy]] * convert coordinates outside of the ranges [0, 360) for longitude and (-90, 90) for latitude to a canonical form ==== Moon ==== [[w:en:selenography#Lunar cartography and toponymy]] === Unit conversion functions === * {{z+|Z15560}} ::The function has two implementations now. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 20:32, 20 February 2026 (UTC) === Conversion function : 2D Cartesian to 2D Polar === Input : matrix [x,y] Output: matrix [θ,r] Short text : Polar conversion of x,y to a polar space centred at 0,0 in the Cartesian. Constraints: x,y,r are reals (float64), θ lies in the range -π<0<π (Sign determined in relation to standards used in STEM applications. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 14:30, 26 March 2025 (UTC) :The companion could also be provided. As I never did Geodetic functions, I am not sure how Lat, Long to map projection would work , but useful. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 14:30, 26 March 2025 (UTC) :See also [[WF:Type proposals/complex128]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 10:17, 1 December 2025 (UTC) === Trigonometric functions === * {{Z|Z16463}}, {{Z|Z12473}}, *: Input : float64 Angle in radians. *: Output : float64 desired trignometric value [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:40, 26 March 2025 (UTC) * {{Z|Z29125}} *:Inputs: 2D Point (float64s, Reals, or perhaps [[WF:Type_proposals/complex128|a single complex number]]), angle (float64 or Real) *:Output: 2D Point (matching the input type) *:Not necessarily one single function; one can be created for each input type [[User:WrenFalcon|WrenFalcon]] ([[User talk:WrenFalcon|talk]]) 22:05, 31 July 2025 (UTC) ==== Function proposal : Decimalise angle of the form ('1:x' or '1 in x') to % (in 100) or ‰ (in 1000) ==== *Suggested name: gardient_decimal. *Input type: Integer ( The 1 is implied.). Lower Bound +1: Upper Bound: 1000 (for most practical situations?) *Output type: Real/float 64. Proposer: [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:05, 28 March 2025 (UTC) ===Color Functions=== ==== Colorspace Conversion ==== x,y,Y to sRGB (Illuminant D65). Input : 3tuple of float64, Output: 3 tuple of integer, where 0>=r<=255, 0>=g<=255 0>=b<=255. Convert a color specfied as 3 float64 values, from x,y,Y colorspace to sRGB or raise an "Out of Gaumt" exception. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:09, 7 April 2025 (UTC) ==== Spectral Approximate from sRGB or XYZ values. ==== I'd like to see the techniques detailed here: http://scottburns.us/reflectance-curves-from-srgb/ implemented in Wikifunctions as the provided spreadhseet later in the paper doesn't appear to work with Libre Office. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:32, 2 June 2025 (UTC) ==== Subtractive color mix (Pigment style) ==== Implement the mixing function from Spectral.js (https://github.com/rvanwijnen/spectral.js/blob/3.0.0/spectral.js )(MIT license), to allow 2 or more sRGB triplets to be mixed like pigment colors. This is different from the subtract colors function implemented previously. === Music Functions === It would be nice to have '''12 equal temperament pitch class''' and '''12 equal temperament pitch''' types, as they would be useful for calculating harmonies and melodies. The pitch classes could be stored as natural numbers from 0 to 11, and represented with symbols C, C♯, D, ..., B. The pitches could be stored as integers with -1 being B3, 0 being C4, 1 being C♯4, etc. Over time, we could expand the pitch class and pitch types to other temperaments and just intonation. As I'm new to Wikifunctions and my coding skills are next to zero, this is just a suggestion to the community. (edited) [[User:CaffeineP|CaffeineP]] ([[User talk:CaffeineP|talk]]) 14:48, 9 April 2025 (UTC) :Yes… There are some notational challenges because of enharmonics as well as naming conventions varying by language/culture, so English A♯ is equivalent to German B and English B♭, for example. Ideally, I would want the (English) pitch class that is five semitones higher than G♭ to be displayed as C♭ rather than B. :Also, given some reference pitch like A4 = 440 Hz, we should be able to return the frequency in hertz of a given pitch and, conversely, the nearest pitch for a given frequency and its offset in cents (or whatever). The computation is a lot simpler than representing the result (or capturing how the result should be represented)! [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 20:08, 9 April 2025 (UTC) :If you use the cardinal values for the pitches from the MIDI standard (or an extension to such, since they're limited to 0..<128) then you could make some of these functions already, no [[WF:Type_proposals|type proposal]] needed. Granted a lot of them would just be addition/subtraction. And if you semi-arbitrarily map A = 0, A# = 1, etc. then you could do all of them. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 10:33, 1 December 2025 (UTC) * '''12-ET Pitch Class of a Pitch''': Return the 12 equal temperament pitch class of a given 12 equal temperament pitch. For example, C4 returns C. * '''12-ET Pitch based on Pitch Class''': Return a 12 equal temperament pitch based on a given 12 equal temperament pitch class and a given integer. For example, C and 4 return C4. * '''Interval between 12-ET Pitch Classes in Semitones''': Get the interval in semitones between two 12 equal temperament pitch classes, always assuming that the first is lower than (or the same as) the second, and the interval is less than an octave. For example, C and B return 11, while B and C return 1. * '''Interval between 12-ET Pitches in Semitones''': Get the interval in semitones between two 12 equal temperament pitches. For example, C4 and B3 return -1, while C3 and B4 return 23. ** {{Z+|Z25219}} * '''Raise 12-ET Pitch Class by Semitones''': Get a new 12 equal temperament pitch class through raising a given pitch class by the provided number of semitones. For example, raising B by 1 semitone returns C. ** {{Z+|Z25407}} * '''Lower 12-ET Pitch Class by Semitones''': Same as above, but lower the pitch class instead of raising it. ** {{Z+|Z25407}} * '''Raise 12-ET Pitch by Semitones''': Get a new 12 equal temperament pitch through raising a given pitch by the provided number of semitones. For example, raising B3 by 1 semitone returns C4. * '''Lower 12-ET Pitch by Semitones''': Same as above, but lower the pitch instead of raising it. * '''Frequency of a 12-ET Pitch''': Return a float64 frequency in Hz based on the provided 12 equal temperament pitch (and possibly a reference pitch with its frequency; if not provided, take default A4 = 440 Hz). ** {{Z+|Z25217}} * '''Approximate 12-ET Pitch Class based on Frequency''': Return a 12 equal temperament pitch class approximately based on the provided frequency in Hz. * '''Approximate 12-ET Pitch based on Frequency''': Return a 12 equal temperament pitch approximately based on the provided frequency in Hz. === SVG Functions === I would be nice to generate SVG (a XML-based vector image format which is basically a long string), it could allow to replace a lot of images on Commons or templates/tools. Here some examples: * create simple forms, * create graphs (line graph/bar graph for population or for production, elections diagrams like [[:File:1900Hawaii.svg]], etc.), * create more complex visualisation like genealogical trees, * create coat of arms (?), * etc. Cheers, [[User:VIGNERON|VIGNERON]] ([[User talk:VIGNERON|talk]]) 10:47, 23 April 2025 (UTC) :@[[User:VIGNERON|VIGNERON]]: Eventually that is something we might support, but there'll be nothing any time soon. It has a number of complex security and scalability concerns, sadly. [[User:Jdforrester (WMF)|Jdforrester (WMF)]] ([[User talk:Jdforrester (WMF)|talk]]) 13:21, 23 April 2025 (UTC) ::{{ping|Jdforrester (WMF)}} thanks. I talked about it for the last Corner but I wanted to leave a record here, if we have time, maybe I'll use that time to write some things to prepare (like listing templates and tools on the Wikimedia projects that generate SVG or visualisations). Cheers, [[User:VIGNERON|VIGNERON]] ([[User talk:VIGNERON|talk]]) 15:28, 23 April 2025 (UTC) :::Of course! I've explicitly added a section on this here: [[Wikifunctions:Embedded function calls#Non-text output]] — hope that helps assure you that we're thinking about it. [[User:Jdforrester (WMF)|Jdforrester (WMF)]] ([[User talk:Jdforrester (WMF)|talk]]) 21:40, 23 April 2025 (UTC) === Biology === ==== Taxon functions ==== A taxon type could be useful, as could a taxon rank enum ({{Q|P31}} {{Q|Q427626}}). --[[User:WrenFalcon|WrenFalcon]] ([[User talk:WrenFalcon|talk]]) 16:49, 22 September 2025 (UTC) * Wikidata item representing taxon rank ({{Q|P31}} {{Q|Q427626}}) is at genus level or below ** Should(?) be possible with the current Wikidata functionality, from what I understand. See [[:Wikifunctions:Project chat#Taxon rank function(s)]] for a more detailed explanation. --[[User:WrenFalcon|WrenFalcon]] ([[User talk:WrenFalcon|talk]]) 23:27, 16 May 2025 (UTC) * compare taxon ranks ** Cases: a < b, a == b, a > b, undetermined/incomparable (if a or b are clades, this should be returned/used) * get taxon code of nomenclature ({{Q|P944}}) * is parent taxon of / is child taxon of ** <code>is parent taxon of(Taxon a, Taxon b) => b.parent == a OR is parent taxon of(a, b.parent)</code> * format taxon name (according to relevant rules of nomenclature) ** Include author and year citation? Maybe page too, if present? == Object / type / function functions == == External function lists == * [[WF:importing]] sz7u68aovbxmsj16yiujlubp9fbe4op 272371 272370 2026-05-05T03:06:05Z Arlo Barnes 1231 /* Date, time, and calendric functions */ Lua module 272371 wikitext text/x-wiki {{Shortcut|[[WF:SAF]]|[[WF:RF]]}} Do you have an idea for a new function? Suggest it here! It may help to refer to [[Wikifunctions:Glossary|our glossary]]. You can [https://www.wikifunctions.org/wiki/Special:CreateZObject?zid=Z8 create a function] right away if you have the user-rights. If a function requires a new type, consider [[WF:TP|proposing it]]. Note that for now '''we only support a limited number of types as input and output types''' of functions. More types are coming in the next few months. For the full list, see [[WF:Type]]. Once created, consider adding new Functions to the [[Wikifunctions:Catalogue|catalogue]]. [[Category:Maintenance]] == Requests from Abstract Wikipedia editors == {{main|abstract:Project:Suggested functions}} === Infobox === I'm thinking we can adapt [[w:module:infobox]] to create infobox HTML in abstract articles. Maybe it can even use info from Wikidata to populate it, like it already does on some wikis. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 06:34, 28 April 2026 (UTC) == Proposed functions requiring only available types == === String === ==== String character discard functions ==== ==== String character replacement functions ==== Add the word 'the' to the start of a function. e.g United Kingdom - the United Kingdom. [[User:FantasticWikiUser|FantasticWikiUser]] ([[User talk:FantasticWikiUser|talk]]) 11:27, 25 March 2026 (UTC) :Yes… simple enough to do but not entirely clear when it is required. We’ve been [https://t.me/Wikifunctions/29989 discussing it on Telegram]. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 12:10, 25 March 2026 (UTC) ::This was an issue I found on [[abstract:Q21]] when I couldn't add it there. [[User:FantasticWikiUser|FantasticWikiUser]] ([[User talk:FantasticWikiUser|talk]]) 12:16, 25 March 2026 (UTC) :I worked on {{z|Z33138}} today. I'm not sure it covers all corner cases, feel free to try it out and add more tests :) [[User:So9q|So9q]] ([[User talk:So9q|talk]]) 20:32, 5 April 2026 (UTC) ==== String search functions ==== ==== String escaping and unescaping functions ==== ==== String encoding and decoding functions ==== * Unicode normalising functions (there are several types of normalisation) * [https://html.spec.whatwg.org/#named-character-references HTML named character encode] * [[wikidata:Q47466379|Punycode encode]] - {{z+|Z10178}} (part only, not whole url); see also {{z+|Z10185}} * [[:en:Unified_English_Braille|Unified English Braille encode]] (discarding invalid characters?) *[https://braille-autoriteit.org/standaarden/achtpuntsbraille/ Dutch eight-dot Braille] encode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 21:38, 17 January 2026 (UTC) *[https://braille-autoriteit.org/standaarden/achtpuntsbraille/ Dutch eight-dot Braille] decode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 21:38, 17 January 2026 (UTC) *[https://braille-autoriteit.org/versie-2019-van-zespunts-standaard/ Dutch six-dot Braille] encode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 21:38, 17 January 2026 (UTC) *[https://braille-autoriteit.org/versie-2019-van-zespunts-standaard/ Dutch six-dot Braille] decode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 21:38, 17 January 2026 (UTC) *[[google:ipa+braille&oq=IPA+Braille&gs_lcrp=EgZjaHJvbWUqDAgAECMYJxiABBiKBTIMCAAQIxgnGIAEGIoFMg0IARAAGIYDGIAEGIoFMg0IAhAAGIYDGIAEGIoFMgoIAxAAGIAEGKIEMgoIBBAAGIAEGKIEMgYIBRBFGDwyBggGEEUYPTIGCAcQRRg90gEHMjMyajBqN6gCALACAA&sourceid=chrome&ie=UTF-8|IPA Braille]] encode (IPA --> IPA Braille) [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 11:42, 18 January 2026 (UTC) *[[google:ipa+braille&oq=IPA+Braille&gs_lcrp=EgZjaHJvbWUqDAgAECMYJxiABBiKBTIMCAAQIxgnGIAEGIoFMg0IARAAGIYDGIAEGIoFMg0IAhAAGIYDGIAEGIoFMgoIAxAAGIAEGKIEMgoIBBAAGIAEGKIEMgYIBRBFGDwyBggGEEUYPTIGCAcQRRg90gEHMjMyajBqN6gCALACAA&sourceid=chrome&ie=UTF-8|IPA Braille]] decode (IPA Braille --> IPA) [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 11:42, 18 January 2026 (UTC) ==== String presentation functions ==== * add [[:en:Quotation_mark|locale-specific quotation marks]] to string ** Shouldn't the output depend on the locale? See [[mw:Extension:Scribunto/Lua_reference_manual#mw.language:formatNum|mw.language:formatNum]]. —[[User:Dexxor|Dexxor]] ([[User talk:Dexxor|talk]]) 17:15, 4 September 2023 (UTC) ==== String colour notation functions ==== * Hue of color (since we already have [[Z13017]], [[Z18263]] and [[Z18268]]) ==== String notation validation checks ==== * check if string is an [[:en:International_Chemical_Identifier]] ** {{Partly done}} see {{z+|Z21539}}. Supports the verification of the chemical formula and the stereochemical layer. There are 13 testcaes that I've written, all of which are passed by my JavaScript implementation. Note that a python implementation is not possible as the regex module is not available in Wikifunctions. [[User:MolecularPilot|MolecularPilot]] ([[User talk:MolecularPilot|talk]]) 03:09, 11 January 2025 (UTC) ** To do: *** Needs to verify the hydrogen and connection sections of the main layer *** Support the charge layer *** Support the isotopic layer **[[User:MolecularPilot|MolecularPilot]] ([[User talk:MolecularPilot|talk]]) 03:09, 11 January 2025 (UTC) ***{{ping|MolecularPilot}} A python impl. is infact possible. I created a basic direct translation at {{z+|Z22823}}. Some tests are failing as the regex needs a bit of sorting out, out of scope for me, but you can give it a try! Keep in mind that you need to escape any \ with a \\ just before saving per [[Wikifunctions:Python_implementations#Known_limitations_as_of_October_2024]]. <span style="font-family:monospace;font-weight:bold">[[User:Bunnypranav|<span style="color:#63b3ed">~/Bunny</span><span style="color:#2c5282">pranav</span>]]:&lt;[[User talk:Bunnypranav|<span style="color:#63b3ed">ping</span>]]&gt;</span> 06:14, 26 February 2025 (UTC) * check if string is a [[:en:SMILES_arbitrary_target_specification|SMILES arbitrary target specification (SMARTS) notation]] * check if string is an [[:en:ABC_notation|ABC notation]] * check if string is a [[:en:LilyPond|LilyPond notation]] * check if string is a [[:en:UIC_classification_of_locomotive_axle_arrangements|UIC classification of locomotive axle arrangements notation]] * check if a string is a valid [[:en:Digital_object_identifier|DOI]] ** Something about implementation difficulties: https://stackoverflow.com/questions/27910/finding-a-doi-in-a-document-or-page [[User:Alexander-Mart-Earth|Alexander-Mart-Earth]] ([[User talk:Alexander-Mart-Earth|talk]]) 14:28, 21 December 2023 (UTC) ==== String validation checks ==== * check if string is a valid ISO 3166 country code * check if string is a valid [[:en:ISO_8601#EDTF|EDTF]] date/time ====String analysis functions==== ==== Monolingual text ==== ==== String Wikitext operations ==== ... === Natural number === === Integer=== === Byte === See [[Wikifunctions:Catalogue/Boolean operations#Byte functions|existing Byte functions]] in catalogue. * next byte without overflow: byte → byte * previous byte without overflow: byte → byte * next byte by Gray code: byte → byte * previous byte by Gray code: byte → byte * all bits set: byte → boolean * no bits set: byte → boolean * add bytes without overflow: byte, byte → byte * subtract bytes without overflow: byte, byte → byte * multiply bytes without overflow: byte, byte → byte * add bytes with overflow: byte, byte → byte * subtract bytes with overflow: byte, byte → byte * multiply bytes with overflow: byte, byte → byte * modulo bytes: byte, byte → byte * byte division: byte, byte → byte * right shift: byte → byte * left shift: byte → byte * right shift by n: byte, natural number → byte * left shift by n: byte, natural number → byte * right shift as ring: byte → byte * left shift as ring: byte → byte * right shift by n as ring: byte, natural number → byte * left shift by n as ring: byte, natural number → byte === Unicode code point === See [[Wikifunctions:Catalogue/Character operations#Unicode code points|existing code point functions in catalogue]]. * Codepoint to list of bytes for UTF-8 * Codepoint to list of bytes for UTF-16 * Codepoint to list of bytes for UTF-32 ===Object=== === List === ==== Basic list/iterable functions ==== ==== Complex list functions ==== ==== CSV list operations ==== === Functions with functions as arguments === * test whether certain functions have specific properties of [[:w:Homogeneous_relation|homogeneous relations]] for particular lists/sets === Gregorian calendar date === See [[Wikifunctions:Catalogue/Date operations#Gregorian calendar dates|catalogue of calendar date functions]] for existing functions. * Create a reading function for Dagbani that handles all the possible formats (both the English-linke and the traditional ones, both the Gregorian and the Hijra calendars). [https://docs.google.com/document/d/1u7-ZeY7NHt75JICUPAYky3-7KgkvauD_W3fBjmvpFO0/edit?tab=t.0#heading=h.gf6hp9o3gi0j] [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 15:43, 31 May 2025 (UTC) * same day of the year: date, date → boolean * same day of the week: date, date → boolean * within a year: date, date → boolean * within a week: date, date → boolean * within n days: date, date → boolean * months between: date, date → natural number * weeks between: date, date → natural number * n days later: date, natural number → date * n days earlier: date, natural number → date * n weeks earlier: date, natural number → date * n months later: date, natural number → date * n months earlier: date, natural number → date * n years later: date, natural number → date * n years earlier: date, natural number → date * Julian day number to date: integer → date * how many leap days passed between two dates: date, date → natural number * how many weekdays between two dates: date, date, day of the week → natural number * within JavaScript's date implementation: date → boolean * next time a day of the month is on a specific weekday: date, natural number, day of the week → date * next Friday the 13th: date → date * nth weekday of the month: date, day of the week, natural number → date * nth working days after: date, list of wikidata item references (list of holidays), wikidata item reference (place) → date === Gregorian year === See [[Wikifunctions:Catalogue/Date operations#Gregorian year|catalogue of year functions]] for existing functions. == Morphological functions == morphology is the part of linguistics that studies how language parts are 'shaped' and change diachronically and when inflected. Hausa, Igbo, Malayalam, Bangla/Bengali and Dagbani are [[d:Wikidata:Lexicographical data/Focus languages|focus languages]] for Wikidata's lexicographic dataset, which is an important aspect of [[WF:glossary#Abstract Wikipedia|Abstract Wikipedia]]. === mul - Multiple languages === * inputs: natural number (new numeric type) and language Z-number; output: 'singular', 'dual', 'paucal', 'plural', etc. as string *: {{doing}}: {{z+|Z15977}} * {{z|Z26570}} but with a {{z|Z881}} of {{z|Z6091}} for the {{para|location}} input;<br/>such as in "{{q|Q122962941}} is an {{q|Q350604}} in {{em|{{q|Q801}} and {{q|Q39760}}}}" === ase - American Sign Language === * string: Stokoe to ase-[https://github.com/sutton-signwriting/core Sgnw] and vice-versa (consult {{ping|Slevinski}} as to best approach) === bn - Bangla === === bzs - Brazilian Sign Language === * [[w:en:Brazilian Sign Language#Writing|SignWriting]] * [[incubator:wp/bzs/AS1f502S22f00M513x521S1f502492x497S22f00488x480_AS15d22S22b04M514x527S22b04493x497S15d22487x473|sample text]] === cy - Welsh === [[w:en:colloquial Welsh morphology]] === dag - Dagbani === === de - German === * tense * person * number for each verb ** tenses: present, past, ...? ** person: first, second, third ** number: singular, plural ** {{doing}} third person singular present ** second person singular preterite === en - English === * {{z+|Z11390}} Verb -> agent noun, e.g. "dance"->"dancer" * Join English morphemes (extends {{z+|Z13254}} to cases like re + en + able + er + s → re-enablers. {{z+|Z13254}} will correctly join re-enable + ers or re- + enablers, but re + enablers → “renablers” (incorrect). {{z+|Z13275}} tests the Reduce function to produce “detoxification” from a list of four morphemes (orchestrator limit exceeded with five). I doubt we’ll want to derive “toxify” from “toxic”, however. * Derive lemmas from a form. This is envisaged as the converse of Join English morphemes. The focus would be identifying the base form (the lexeme’s lemma) rather than further segmenting the lemma. For example, “underlay” should return “underlie” (for which it is the past participle) and the noun “underlay” (for which it is the lemma) and (perhaps) the verb “underlay”, which might be the tendency of an unproductive hen or the activity of a carpet-fitter. As this is a purely functional converse, every string will have itself as a possible lemma. * Generate [[:w:Numeral_prefix|Numerical prefixes]] of various kinds from a natural number input. * {{z+|Z19499}} * Intro for geographical feature: Returns a intro sentence for a geographical feature. ** Example 1: The '''Centre for Fine Arts''' is an '''arts center''' on '''Coudenberg - Koudenberg''' in '''Mont des Arts - Kunstberg, City of Brussels''', '''Belgium''' *** Wikidata label = Centre for Fine Arts *** {{Property|P31}} = {{Q|Q2190251}} *** {{Property|P706}} = {{Q|Q13451667}} *** {{Property|P276}} = {{Q|Q115180808}} *** {{Property|P131}} = {{Q|Q239}} *** {{Property|P17}} = {{Q|Q31}} **Example 2: '''Olympus Mons''' is a '''mons''' on '''Mars''' on '''Tharsis''', '''Amazonis quadrangle''' and '''Tharsis quadrangle'''. ***Wikidata label = Olympus Mons ***{{Property|P31}} = {{Q|Q429088}} ***{{Property|P376}} = {{Q|Q111}} ***{{Property|P706}} = {{Q|Q2170645}} ***{{Property|P276}} = {{Q|Q3054547}}, {{Q|Q3054525}} **Example 3: '''Princess Elisabeth Antarctica''' is a '''Antarctic research station''' on '''Utsteinen Nunatak''', '''Antarctic Treaty area''', '''Antartica''' ***Wikidata label = Princess Elisabeth Antarctica ***{{Property|P31}} = {{Q|Q749622}} ***{{Property|P706}} = {{Q|Q7754959}} ***{{Property|P131}} = {{Q|Q21590062}} ***{{Property|P17}} = ''none'' ***{{Property|P30}} = {{Q|Q51}} '''<big>eu - Basque</big>''' * Basque language declension system in rather regular based on suffixes. ** Here a few examples for Basque declension: *** {{z+|Z18541}} *** {{z+|Z18670}} **Before implementing all of them, we may propose an overall classification that eases both the implementation and the future usage of the functions. Here a first try based on bibliography from the [https://www.euskaltzaindia.eus/index.php?option=com_ebe&view=bilaketa&task=pdf&Itemid=1161&atala=deklinabide-taulak Basque Language Academy]: ***Personal pronouns: they can be treated as exceptions (e.g. "zuek -> zuei", etc.) together with proper noun declension, or as a separate case. ***Determiners: they can be treated as exceptions (e.g. "hau" -> "honek", etc) together with common noun declension, or as a separated case ***Grammatical cases: ****Absolutive ("Nor"): indefinite, singular and plural ****Ergative ("Nork"): indefinite, singular and plural ****Dative ("Nori"): indefinite, singular and plural ***Place and Time: we must distinguish animate (AN) and inanimate (IN) ****Inessive IN ("Non"): indefinite, singular and plural ****Inessive AN ("Norengan"): indefinite, singular and plural - It could be a composition of "Noren" + "-gan" ****Place and time ("Nongo"): indefinite, singular and plural ****Allative IN ("Nora"): indefinite, singular and plural ****Allative AN ("Norengana"): indefinite, singular and plural - It could be a composition of "Noren/Norengan" + "-gan/-a" ****Finished Allative AN ("Noraino"): indefinite, singular and plural - It could be a composition of "Nora" + "-ino" ****Finished Allative AN ("Norengainaino"): indefinite, singular and plural - It could be a composition of "Noregana" + "-ino" ****Right way Allative IN ("Noratz"): indefinite, singular and plural - It could be a composition of "Nora" + "-ntz" ****Right way Allative AN ("Norenganantz"): indefinite, singular and plural - It could be a composition of "Norengana" + "-ntz" ****Ablative IN ("Nondik"): indefinite, singular and plural ****Ablative AN ("Norengandik"): indefinite, singular and plural ***Rest of the cases: ****Partitive ("Zerik"): indefinite ****Possessive ("Noren"): indefinite, singular and plural ****Sociative ("Norekin"): indefinite, singular and plural ****Instrumental ("Zerez"): indefinite, singular and plural ****Motivative ("Zerengatik"): indefinite, singular and plural ****Destinative ("Norentzat"): indefinite, singular and plural - It could be a composition of "Noren" + "-tzat" ***Special case: ****Prolative ("Nortzat"): indefinite ***To take into consideration: ****Together with animate and inanimate classification, we should also consider if the noun is a proper noun ("izen berezia"). We can identify that automatically (e.g. check if written in Title case, but this may not be always possible like in the beginning of sentences), but a dedicated function may be preferred (or a boolean to the generic function saying it is a proper noun). ****The main distinction is between noun ending by vowel or consonant that can be easily computed === fr - French === * {{z+|Z11590}} Masculine adjective -> feminine, e.g. "exact"->"exacte" * Conjugated verb => Infinitive, e.g. "alla" => "aller", "mordit" => "mordre" === ha - Hausa === A notated demo sentence ("Aishà taa jeefar dà kàren Indoo" ― "Aisha threw away Indo's dog") is available at http://intent.xigt.org === ig - Igbo === === ldn - Láadan === section moved to [[WF:human languages/Z1882]] === ml - Malayalam === === nl - Dutch === * Cardinals ** Cardinal to number ** Number to cardinal * Verbs ** [https://e-ans.ivdnt.org/topics/pid/ans0203lingtopic Conjugations] * Morphology ** Diminutive to root word *** Belgian diminutive to root word ** Root word to diminutive *** Belgian root word to diminutive (-ke) ** Plural diminutive to root word *** Belgian plural diminutive to root word ** Root word to plural diminutive *** Belgian root word to plural diminutive (-kes) ===kcg - Tyap=== * Tyap has six determiners/definite articles which determine the pronoun, number (1-5), etc. forms used. ** ka & wu (basically for singular nouns and adjectives with a few exceptions) ** hu & ji (for singular and plural nouns and adjectives) ** ba & na (mainly for plural nouns. *** Determiners come after nouns. *** When an adjective comes before a noun, the determiner used is that of the adjective. E.g., a̱sham (ka) - (the) beautiful, kyang (hu) - (the) thing = a̱sham kyang (ka) - (the) beautiful thing. * Tyap has a non-uniform noun class system used for noun pluralization and conversion from one part of speech to another. E.g., a̱bwom (song) and bwom (to sing), a̱fufwuo (ears) and fufwuo (ear). * Affixation: Prefixes exist but suffixes hardly are found. === vgt - Flemish Sign Language === * SignWriting encode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 12:44, 18 January 2026 (UTC) == Proposed functions requiring future types == '''Note these functions cannot be implemented properly until the needed types are requested and approved.''' If one wishes to nevertheless attempt to define and implement them, * the functions and implementations should indicate prominently in their labels that their input/output types must be adjusted once support for the appropriate replacement types become available; ''and'' * the functions should ''not'' be used in the implementations of any other functions, as the later adjustment of input/output types to appropriate replacements will break those implementations. === String manipulation functions === === String analysis functions === * count distance between two letters in given alphabet (default to 26-charcater western alphabet. case insensitive. e.g. "a" & "A" ⇒ 0; "K" & "N" ⇒ 3) === String encoding and decoding functions === (would be better with types representing a stream of bytes) * [[wikidata:Q113486941|BASE45 encode]] * [[wikidata:Q113486941|BASE45 decode]] * Hexadecimal UTF-8 encode ("ABC ₤" ⇒ "41 42 43 20 E2 82 A4") * Hexadecimal UTF-8 decode ("41 42 43 20 E2 82 A4" ⇒ "ABC ₤") * Decimal UTF-8 encode ("ABC ₤" ⇒ "65 66 67 32 226 130 164") * Decimal UTF-8 decode ("65 66 67 32 226 130 164" ⇒ "ABC ₤") * Octal UTF-8 encode ("ABC ₤" ⇒ "101 102 103 40 342 202 244") * Octal UTF-8 decode ("101 102 103 40 342 202 244" ⇒ "ABC ₤") * Binary UTF-8 encode ("ABC ₤" ⇒ "01000001 01000010 01000011 00100000 11100010 10000010 10100100") * Binary UTF-8 decode ("01000001 01000010 01000011 00100000 11100010 10000010 10100100" ⇒ "ABC ₤") * Unicode code point encode ("ABC ₤" ⇒ "41 42 43 20 20A4") - {{z+|Z10785}} * Unicode code point decode ("41 42 43 20 20A4" ⇒ "ABC ₤") * Create regular expression object/string (i.e: "test" & "i" to /test/i) === Natural language functions === * Choose singular or plural based on number (e.g. singularOrPlural("person",6") -> "people") ** Note that there are also dual and other [[:w:grammatical number|grammatical number]]s in other languages. [[User:魔琴|魔琴]] ([[User talk:魔琴|talk]]) 18:54, 26 October 2023 (UTC) ** relevant interwiki link: [[d:WD:property proposal/plural forms]] [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 04:15, 9 February 2024 (UTC) **:Was rejected. **:The similar proposal {{P|13986}} was accepted, but per the comments on your proposal, just having that set (and [[Z30455|mapping it to one of our enums]]) isn't sufficient since a language might have exceptions to its conjugation rules, or handle rational/real numbers in different ways. **:Being able to make use of CLDR data might still be desirable to avoid hardcoding rules and exceptions into Functions. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 02:16, 18 December 2025 (UTC) ** This is duplicated with a suggestion above. There's some work done already: [[Z15977]]. We also have lightweight enums like {{Z|28215}} now. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 21:11, 30 November 2025 (UTC) === Cryptographic functions === (would be better with types representing a stream of bytes) * {{todo}} [[wikidata:Q47477417|MD2]] - {{z+|Z10135}} * {{todo}} [[wikidata:Q47462255|MD4]] - {{z+|Z10136}} * {{todo}} [[wikidata:Q27036232|MD5]] - {{z+|Z10137}} * {{todo}} [[wikidata:Q47208127|RIPEMD-128]] - {{z+|Z10138}} * {{todo}} [[wikidata:Q47208127|RIPEMD-160]] - {{z+|Z10139}} * {{todo}} [[wikidata:Q47463469|BLAKE2b-160]] - {{z+|Z10140}} * {{todo}} [[wikidata:Q47463469|BLAKE2b-256]] - {{z+|Z10141}} * {{todo}} [[wikidata:Q47463469|BLAKE2b-384]] - {{z+|Z10142}} * {{todo}} [[wikidata:Q47463469|BLAKE2b-512]] - {{z+|Z10143}} * {{todo}} [[wikidata:Q47463469|BLAKE2s-128]] - {{z+|Z10144}} * {{todo}} [[wikidata:Q47463469|BLAKE2s-160]] - {{z+|Z10145}} * {{todo}} [[wikidata:Q47463469|BLAKE2s-224]] - {{z+|Z10146}} * {{todo}} [[wikidata:Q47463469|BLAKE2s-256]] - {{z+|Z10147}} * {{todo}} [[wikidata:Q47465971|SHA-224]] - {{z+|Z10149}} * {{todo}} [[wikidata:Q47465971|HMAC-SHA-256]] * {{todo}} [[wikidata:Q87486893|SHAKE-128]] - {{z+|Z10150}} * {{todo}} [[wikidata:Q87486893|SHAKE-256]] - {{z+|Z10151}} * {{todo}} [[wikidata:Q56099240|ChaCha20]] - {{z+|Z25376}} * {{todo}} [[wikidata:Q56099436|X25519]] - {{z+|Z25393}} * {{todo}} [[wikidata:Q1190947|Keccak-f[1600]]] - {{z+|Z25399}} === Date, time, and calendric functions === See also: * Discussion of types at [[WF:type#Calendar types]] * {{q|139667974}} Lua module ==== Earth focus ==== [[file:Axial and apsidal precession.png|thumb|alt=diagram|orbit of Earth]] ===== Bengali calendar ===== {{z+|Z12926}} ===== Chinese calendar ===== ===== French Republican Calendar ===== decimalises and secularises the Gregorian * day names: {{z+|Z13006}}{{not done}} '''yet''' ===== Gregorian ===== widely used calendar derived from the Julian, basis for [[xkcd:1179|ISO 8601]] * date to ISO week number {{q|2110154}} * string to date * date to ISO 8601 string *: {{done}}, see {{z+|Z21842}}. --[[User:Sbb1413|Sbb1413]] ([[User talk:Sbb1413|talk]]) 18:47, 21 January 2025 (UTC) * date to year (yyyy) * date to month of the year (1-12) * date to month name (January-December) * date to day of the month (1-31) * date to hour of the day (0-23) * date to minutes (0-59) * date to seconds (0-59) Named Day from Date or day of year ; Input type : Date ; Output Type : String. ; The initial use case was automated population of On The Day, based on various collections of Holidays, festival days and observances. ? [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:35, 26 March 2025 (UTC) : So If you gave it 2025-05-01 It said "All Fools Day" etc.. Possibly an additional input of enumrated type to indicate which data set to pull holidays, fesitvals and observances from. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:35, 26 March 2025 (UTC) Diary/calander Header function - Using the above and other date functions, generates a data set from a given date. Hence if you give it 2003-05-01 you get back a JOSN set contianing the {Day of week:String, Day in the Month, Observances} etc. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:35, 26 March 2025 (UTC) ===== Holocene calendar ===== * [[w:en:Holocene calendar#Conversion]] *: {{done}}, see {{z+|Z21913}}. --[[User:Sbb1413|Sbb1413]] ([[User talk:Sbb1413|talk]]) 13:30, 25 January 2025 (UTC) ===== Indian national calendar ===== ===== Islamic ===== a Lunar calendar, also called Hijri ===== Julian ===== mostly used by astronomers, some historians, and some Orthodox Christian denominations ===== Mesoamerican calendars ===== including civil and clerical forms ===== Persian ===== also called Jalali ===== Thai calendar ===== ===== Hebrew calendar ===== ==== Mars focus ==== [[file:Lowell - Mars (1894) - Diagram of the Orbits of Mars and the Earth.jpg|thumb|alt=diagram|orbit of Mars]] ===== Asgardian calendar ===== Proposed time-keeping system for Mars; base on the [https://asgardia.space/en/calendar online converter]; see [[w:Asgardia|Asgardia]] for context ===== Darian calendar ===== Proposed time-keeping system for Mars, requires Julian Date/Time to calculate and a month enumeration: [[WF:type proposals#Something to think about]] ===== Lukashian calendars ===== Proposed simple perpetual calendar system designed to be extensible to other reference frames (for example a Mars-centric one). Eschews leap-units. * [https://lukashian.org/download Java] reference implementation * [https://github.com/The-Lukashian-Calendar/lukashian GitHub] === Basic numerical functions === * round up ("1.289" & "2" ⇒ "1.29"; "5678" & "2" ⇒ "5700") *: So if the number is floating point, round to n decimal places, and if not, round to n significant figures. Is that right? [[User:BrightSunMan|BrightSunMan]] ([[User talk:BrightSunMan|talk]]) 19:36, 24 December 2023 (UTC) *: {{done}} {{Z|20053}}/{{Z|21043}} and {{Z|27705}}/{{Z|21047}} * round down ** {{done}} {{Z|20032}}/{{Z|20841}} * return integer value (5678.678 ⇒ 5678) ** {{done}} {{Z|19841}}/{{Z|26315}} * {{z+|Z13587}} (23 ⇒ "twenty-three") * Convert money from US$ to anything else ** requires source of conversion rates, which is a hole in function-likeness * Arabic numeral to Etruscan numeral * Etruscan numeral to Arabic numeral === Data serialization functions === * parse a string as [[:en:JSON|JSON]] * extract string from JSON object based on [[:d:Q121208951|JSONPath]] (<code>{"name":"Alice"}</code>, "$.name" ⇒ "Alice") *:Why not first convert a JSON string to an object, and then have a function that extracts fields based on JSONPath? Doing Stringly-typed things like this proposal as defined isn't a good idea. [[User:0xDeadbeef|0xDeadbeef]] ([[User talk:0xDeadbeef|talk]]) 16:16, 5 August 2023 (UTC) *::This seems to be a good idea, thanks! I moved and splitted the proposal accordingly. --[[User:1-Byte|1-Byte]] ([[User talk:1-Byte|talk]]) 09:51, 6 August 2023 (UTC) *:: is it okay to go ahead to create this 'extract string from JSON object based on JSONPath' as a function ? [[User:Dolphyb|Dolphyb]] ([[User talk:Dolphyb|talk]]) 16:14, 15 February 2024 (UTC) === Basic list/iterable functions requiring numeric types === * Sum the elements of a numeric list - {{z+|Z14038}} * Product of the elements of a numeric list ** {{done}} {{Z|23909}}/{{Z|13558}} * {{z+|Z12676}} * Slice of list elements: for the supplied list, return a list of elements that are at indexes between a supplied range n:m ** Zero indexing is used (first element is index 0)? ** n and m are are included in the range? ** What happens if n and/or m are invalid indexes? ** {{done}} {{Z+|Z26556}} * Remove slice of elements from list: return the supplied list with elements between a supplied range of indexes removed ** Zero indexing is used (first element is index 0)? ** n and m are are included in the range? ** What happens if n and/or m are invalid indexes? * Every nth element of list: returns every nth element of the supplied list ** {{done}} {{Z+|Z28735}} * Remove every nth element of list: removes every nth element of the supplied list - * sample n objects from list (return up to n [[Wikifunctions:Determinism|random]] objects from the list) * Jaccard similarity coefficient (see https://en.wikipedia.org/wiki/Jaccard_index) * Weighted average. Supply a list of values, and a second list of the same length of their weights. Returns a weighted average ** Example Input: <code>values = [10, 20, 30]</code>, <code>weights = [1, 2, 3]</code> ** Output: <code>23.33</code> ** {{done}} {{Z+|Z28066}} === Geodetics functions === [[w:en:planetary coordinate system]], [[w:en:well-known text representation of coordinate reference systems]] ==== Earth ==== * convert coordinates outside of the ranges (-180, 180) for longitude and (-90, 90) for latitude to a canonical form * [https://plus.codes Plus Codes] to/from geocoordinates ** functions should match the semantics of the [https://github.com/google/open-location-code/blob/main/Documentation/Specification/specification.md#api-requirements expected API]: <code>is valid Plus Code?</code>, <code>is shortened Plus Code?</code>, <code>is full Plus Code?</code>, {{z+|Z25963}}, <code>co-ordinates from Plus Code</code> ([https://github.com/google/open-location-code/blob/main/Documentation/Specification/specification.md#decoding SW corner]), <code>shorten Plus Code</code>, <code>recover nearest Plus Code</code> ** implementations for JS and Python are provided, Apache 2.0 licenced, not sure how self-contained they are ** most of the functions could also be implemented by composition ** sample data is provided for testing (it's ~500 cases for each of encode/decode and ~50 cases for each of the others, but they're grouped nicely so maybe take 1 from each) ==== Mars ==== [[w:en:areography#Cartography and geodesy]] * convert coordinates outside of the ranges [0, 360) for longitude and (-90, 90) for latitude to a canonical form ==== Moon ==== [[w:en:selenography#Lunar cartography and toponymy]] === Unit conversion functions === * {{z+|Z15560}} ::The function has two implementations now. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 20:32, 20 February 2026 (UTC) === Conversion function : 2D Cartesian to 2D Polar === Input : matrix [x,y] Output: matrix [θ,r] Short text : Polar conversion of x,y to a polar space centred at 0,0 in the Cartesian. Constraints: x,y,r are reals (float64), θ lies in the range -π<0<π (Sign determined in relation to standards used in STEM applications. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 14:30, 26 March 2025 (UTC) :The companion could also be provided. As I never did Geodetic functions, I am not sure how Lat, Long to map projection would work , but useful. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 14:30, 26 March 2025 (UTC) :See also [[WF:Type proposals/complex128]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 10:17, 1 December 2025 (UTC) === Trigonometric functions === * {{Z|Z16463}}, {{Z|Z12473}}, *: Input : float64 Angle in radians. *: Output : float64 desired trignometric value [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:40, 26 March 2025 (UTC) * {{Z|Z29125}} *:Inputs: 2D Point (float64s, Reals, or perhaps [[WF:Type_proposals/complex128|a single complex number]]), angle (float64 or Real) *:Output: 2D Point (matching the input type) *:Not necessarily one single function; one can be created for each input type [[User:WrenFalcon|WrenFalcon]] ([[User talk:WrenFalcon|talk]]) 22:05, 31 July 2025 (UTC) ==== Function proposal : Decimalise angle of the form ('1:x' or '1 in x') to % (in 100) or ‰ (in 1000) ==== *Suggested name: gardient_decimal. *Input type: Integer ( The 1 is implied.). Lower Bound +1: Upper Bound: 1000 (for most practical situations?) *Output type: Real/float 64. Proposer: [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:05, 28 March 2025 (UTC) ===Color Functions=== ==== Colorspace Conversion ==== x,y,Y to sRGB (Illuminant D65). Input : 3tuple of float64, Output: 3 tuple of integer, where 0>=r<=255, 0>=g<=255 0>=b<=255. Convert a color specfied as 3 float64 values, from x,y,Y colorspace to sRGB or raise an "Out of Gaumt" exception. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:09, 7 April 2025 (UTC) ==== Spectral Approximate from sRGB or XYZ values. ==== I'd like to see the techniques detailed here: http://scottburns.us/reflectance-curves-from-srgb/ implemented in Wikifunctions as the provided spreadhseet later in the paper doesn't appear to work with Libre Office. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:32, 2 June 2025 (UTC) ==== Subtractive color mix (Pigment style) ==== Implement the mixing function from Spectral.js (https://github.com/rvanwijnen/spectral.js/blob/3.0.0/spectral.js )(MIT license), to allow 2 or more sRGB triplets to be mixed like pigment colors. This is different from the subtract colors function implemented previously. === Music Functions === It would be nice to have '''12 equal temperament pitch class''' and '''12 equal temperament pitch''' types, as they would be useful for calculating harmonies and melodies. The pitch classes could be stored as natural numbers from 0 to 11, and represented with symbols C, C♯, D, ..., B. The pitches could be stored as integers with -1 being B3, 0 being C4, 1 being C♯4, etc. Over time, we could expand the pitch class and pitch types to other temperaments and just intonation. As I'm new to Wikifunctions and my coding skills are next to zero, this is just a suggestion to the community. (edited) [[User:CaffeineP|CaffeineP]] ([[User talk:CaffeineP|talk]]) 14:48, 9 April 2025 (UTC) :Yes… There are some notational challenges because of enharmonics as well as naming conventions varying by language/culture, so English A♯ is equivalent to German B and English B♭, for example. Ideally, I would want the (English) pitch class that is five semitones higher than G♭ to be displayed as C♭ rather than B. :Also, given some reference pitch like A4 = 440 Hz, we should be able to return the frequency in hertz of a given pitch and, conversely, the nearest pitch for a given frequency and its offset in cents (or whatever). The computation is a lot simpler than representing the result (or capturing how the result should be represented)! [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 20:08, 9 April 2025 (UTC) :If you use the cardinal values for the pitches from the MIDI standard (or an extension to such, since they're limited to 0..<128) then you could make some of these functions already, no [[WF:Type_proposals|type proposal]] needed. Granted a lot of them would just be addition/subtraction. And if you semi-arbitrarily map A = 0, A# = 1, etc. then you could do all of them. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 10:33, 1 December 2025 (UTC) * '''12-ET Pitch Class of a Pitch''': Return the 12 equal temperament pitch class of a given 12 equal temperament pitch. For example, C4 returns C. * '''12-ET Pitch based on Pitch Class''': Return a 12 equal temperament pitch based on a given 12 equal temperament pitch class and a given integer. For example, C and 4 return C4. * '''Interval between 12-ET Pitch Classes in Semitones''': Get the interval in semitones between two 12 equal temperament pitch classes, always assuming that the first is lower than (or the same as) the second, and the interval is less than an octave. For example, C and B return 11, while B and C return 1. * '''Interval between 12-ET Pitches in Semitones''': Get the interval in semitones between two 12 equal temperament pitches. For example, C4 and B3 return -1, while C3 and B4 return 23. ** {{Z+|Z25219}} * '''Raise 12-ET Pitch Class by Semitones''': Get a new 12 equal temperament pitch class through raising a given pitch class by the provided number of semitones. For example, raising B by 1 semitone returns C. ** {{Z+|Z25407}} * '''Lower 12-ET Pitch Class by Semitones''': Same as above, but lower the pitch class instead of raising it. ** {{Z+|Z25407}} * '''Raise 12-ET Pitch by Semitones''': Get a new 12 equal temperament pitch through raising a given pitch by the provided number of semitones. For example, raising B3 by 1 semitone returns C4. * '''Lower 12-ET Pitch by Semitones''': Same as above, but lower the pitch instead of raising it. * '''Frequency of a 12-ET Pitch''': Return a float64 frequency in Hz based on the provided 12 equal temperament pitch (and possibly a reference pitch with its frequency; if not provided, take default A4 = 440 Hz). ** {{Z+|Z25217}} * '''Approximate 12-ET Pitch Class based on Frequency''': Return a 12 equal temperament pitch class approximately based on the provided frequency in Hz. * '''Approximate 12-ET Pitch based on Frequency''': Return a 12 equal temperament pitch approximately based on the provided frequency in Hz. === SVG Functions === I would be nice to generate SVG (a XML-based vector image format which is basically a long string), it could allow to replace a lot of images on Commons or templates/tools. Here some examples: * create simple forms, * create graphs (line graph/bar graph for population or for production, elections diagrams like [[:File:1900Hawaii.svg]], etc.), * create more complex visualisation like genealogical trees, * create coat of arms (?), * etc. Cheers, [[User:VIGNERON|VIGNERON]] ([[User talk:VIGNERON|talk]]) 10:47, 23 April 2025 (UTC) :@[[User:VIGNERON|VIGNERON]]: Eventually that is something we might support, but there'll be nothing any time soon. It has a number of complex security and scalability concerns, sadly. [[User:Jdforrester (WMF)|Jdforrester (WMF)]] ([[User talk:Jdforrester (WMF)|talk]]) 13:21, 23 April 2025 (UTC) ::{{ping|Jdforrester (WMF)}} thanks. I talked about it for the last Corner but I wanted to leave a record here, if we have time, maybe I'll use that time to write some things to prepare (like listing templates and tools on the Wikimedia projects that generate SVG or visualisations). Cheers, [[User:VIGNERON|VIGNERON]] ([[User talk:VIGNERON|talk]]) 15:28, 23 April 2025 (UTC) :::Of course! I've explicitly added a section on this here: [[Wikifunctions:Embedded function calls#Non-text output]] — hope that helps assure you that we're thinking about it. [[User:Jdforrester (WMF)|Jdforrester (WMF)]] ([[User talk:Jdforrester (WMF)|talk]]) 21:40, 23 April 2025 (UTC) === Biology === ==== Taxon functions ==== A taxon type could be useful, as could a taxon rank enum ({{Q|P31}} {{Q|Q427626}}). --[[User:WrenFalcon|WrenFalcon]] ([[User talk:WrenFalcon|talk]]) 16:49, 22 September 2025 (UTC) * Wikidata item representing taxon rank ({{Q|P31}} {{Q|Q427626}}) is at genus level or below ** Should(?) be possible with the current Wikidata functionality, from what I understand. See [[:Wikifunctions:Project chat#Taxon rank function(s)]] for a more detailed explanation. --[[User:WrenFalcon|WrenFalcon]] ([[User talk:WrenFalcon|talk]]) 23:27, 16 May 2025 (UTC) * compare taxon ranks ** Cases: a < b, a == b, a > b, undetermined/incomparable (if a or b are clades, this should be returned/used) * get taxon code of nomenclature ({{Q|P944}}) * is parent taxon of / is child taxon of ** <code>is parent taxon of(Taxon a, Taxon b) => b.parent == a OR is parent taxon of(a, b.parent)</code> * format taxon name (according to relevant rules of nomenclature) ** Include author and year citation? Maybe page too, if present? == Object / type / function functions == == External function lists == * [[WF:importing]] h9du7i73ph0g0c6072lvtfrzywvoemk 272375 272371 2026-05-05T05:41:51Z Arlo Barnes 1231 /* Morphological functions */ move to respective WF:HL subpages 272375 wikitext text/x-wiki {{Shortcut|[[WF:SAF]]|[[WF:RF]]}} Do you have an idea for a new function? Suggest it here! It may help to refer to [[Wikifunctions:Glossary|our glossary]]. You can [https://www.wikifunctions.org/wiki/Special:CreateZObject?zid=Z8 create a function] right away if you have the user-rights. If a function requires a new type, consider [[WF:TP|proposing it]]. Note that for now '''we only support a limited number of types as input and output types''' of functions. More types are coming in the next few months. For the full list, see [[WF:Type]]. Once created, consider adding new Functions to the [[Wikifunctions:Catalogue|catalogue]]. [[Category:Maintenance]] == Requests from Abstract Wikipedia editors == {{main|abstract:Project:Suggested functions}} === Infobox === I'm thinking we can adapt [[w:module:infobox]] to create infobox HTML in abstract articles. Maybe it can even use info from Wikidata to populate it, like it already does on some wikis. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 06:34, 28 April 2026 (UTC) == Proposed functions requiring only available types == === String === ==== String character discard functions ==== ==== String character replacement functions ==== Add the word 'the' to the start of a function. e.g United Kingdom - the United Kingdom. [[User:FantasticWikiUser|FantasticWikiUser]] ([[User talk:FantasticWikiUser|talk]]) 11:27, 25 March 2026 (UTC) :Yes… simple enough to do but not entirely clear when it is required. We’ve been [https://t.me/Wikifunctions/29989 discussing it on Telegram]. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 12:10, 25 March 2026 (UTC) ::This was an issue I found on [[abstract:Q21]] when I couldn't add it there. [[User:FantasticWikiUser|FantasticWikiUser]] ([[User talk:FantasticWikiUser|talk]]) 12:16, 25 March 2026 (UTC) :I worked on {{z|Z33138}} today. I'm not sure it covers all corner cases, feel free to try it out and add more tests :) [[User:So9q|So9q]] ([[User talk:So9q|talk]]) 20:32, 5 April 2026 (UTC) ==== String search functions ==== ==== String escaping and unescaping functions ==== ==== String encoding and decoding functions ==== * Unicode normalising functions (there are several types of normalisation) * [https://html.spec.whatwg.org/#named-character-references HTML named character encode] * [[wikidata:Q47466379|Punycode encode]] - {{z+|Z10178}} (part only, not whole url); see also {{z+|Z10185}} * [[:en:Unified_English_Braille|Unified English Braille encode]] (discarding invalid characters?) *[https://braille-autoriteit.org/standaarden/achtpuntsbraille/ Dutch eight-dot Braille] encode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 21:38, 17 January 2026 (UTC) *[https://braille-autoriteit.org/standaarden/achtpuntsbraille/ Dutch eight-dot Braille] decode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 21:38, 17 January 2026 (UTC) *[https://braille-autoriteit.org/versie-2019-van-zespunts-standaard/ Dutch six-dot Braille] encode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 21:38, 17 January 2026 (UTC) *[https://braille-autoriteit.org/versie-2019-van-zespunts-standaard/ Dutch six-dot Braille] decode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 21:38, 17 January 2026 (UTC) *[[google:ipa+braille&oq=IPA+Braille&gs_lcrp=EgZjaHJvbWUqDAgAECMYJxiABBiKBTIMCAAQIxgnGIAEGIoFMg0IARAAGIYDGIAEGIoFMg0IAhAAGIYDGIAEGIoFMgoIAxAAGIAEGKIEMgoIBBAAGIAEGKIEMgYIBRBFGDwyBggGEEUYPTIGCAcQRRg90gEHMjMyajBqN6gCALACAA&sourceid=chrome&ie=UTF-8|IPA Braille]] encode (IPA --> IPA Braille) [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 11:42, 18 January 2026 (UTC) *[[google:ipa+braille&oq=IPA+Braille&gs_lcrp=EgZjaHJvbWUqDAgAECMYJxiABBiKBTIMCAAQIxgnGIAEGIoFMg0IARAAGIYDGIAEGIoFMg0IAhAAGIYDGIAEGIoFMgoIAxAAGIAEGKIEMgoIBBAAGIAEGKIEMgYIBRBFGDwyBggGEEUYPTIGCAcQRRg90gEHMjMyajBqN6gCALACAA&sourceid=chrome&ie=UTF-8|IPA Braille]] decode (IPA Braille --> IPA) [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 11:42, 18 January 2026 (UTC) ==== String presentation functions ==== * add [[:en:Quotation_mark|locale-specific quotation marks]] to string ** Shouldn't the output depend on the locale? See [[mw:Extension:Scribunto/Lua_reference_manual#mw.language:formatNum|mw.language:formatNum]]. —[[User:Dexxor|Dexxor]] ([[User talk:Dexxor|talk]]) 17:15, 4 September 2023 (UTC) ==== String colour notation functions ==== * Hue of color (since we already have [[Z13017]], [[Z18263]] and [[Z18268]]) ==== String notation validation checks ==== * check if string is an [[:en:International_Chemical_Identifier]] ** {{Partly done}} see {{z+|Z21539}}. Supports the verification of the chemical formula and the stereochemical layer. There are 13 testcaes that I've written, all of which are passed by my JavaScript implementation. Note that a python implementation is not possible as the regex module is not available in Wikifunctions. [[User:MolecularPilot|MolecularPilot]] ([[User talk:MolecularPilot|talk]]) 03:09, 11 January 2025 (UTC) ** To do: *** Needs to verify the hydrogen and connection sections of the main layer *** Support the charge layer *** Support the isotopic layer **[[User:MolecularPilot|MolecularPilot]] ([[User talk:MolecularPilot|talk]]) 03:09, 11 January 2025 (UTC) ***{{ping|MolecularPilot}} A python impl. is infact possible. I created a basic direct translation at {{z+|Z22823}}. Some tests are failing as the regex needs a bit of sorting out, out of scope for me, but you can give it a try! Keep in mind that you need to escape any \ with a \\ just before saving per [[Wikifunctions:Python_implementations#Known_limitations_as_of_October_2024]]. <span style="font-family:monospace;font-weight:bold">[[User:Bunnypranav|<span style="color:#63b3ed">~/Bunny</span><span style="color:#2c5282">pranav</span>]]:&lt;[[User talk:Bunnypranav|<span style="color:#63b3ed">ping</span>]]&gt;</span> 06:14, 26 February 2025 (UTC) * check if string is a [[:en:SMILES_arbitrary_target_specification|SMILES arbitrary target specification (SMARTS) notation]] * check if string is an [[:en:ABC_notation|ABC notation]] * check if string is a [[:en:LilyPond|LilyPond notation]] * check if string is a [[:en:UIC_classification_of_locomotive_axle_arrangements|UIC classification of locomotive axle arrangements notation]] * check if a string is a valid [[:en:Digital_object_identifier|DOI]] ** Something about implementation difficulties: https://stackoverflow.com/questions/27910/finding-a-doi-in-a-document-or-page [[User:Alexander-Mart-Earth|Alexander-Mart-Earth]] ([[User talk:Alexander-Mart-Earth|talk]]) 14:28, 21 December 2023 (UTC) ==== String validation checks ==== * check if string is a valid ISO 3166 country code * check if string is a valid [[:en:ISO_8601#EDTF|EDTF]] date/time ====String analysis functions==== ==== Monolingual text ==== ==== String Wikitext operations ==== ... === Natural number === === Integer=== === Byte === See [[Wikifunctions:Catalogue/Boolean operations#Byte functions|existing Byte functions]] in catalogue. * next byte without overflow: byte → byte * previous byte without overflow: byte → byte * next byte by Gray code: byte → byte * previous byte by Gray code: byte → byte * all bits set: byte → boolean * no bits set: byte → boolean * add bytes without overflow: byte, byte → byte * subtract bytes without overflow: byte, byte → byte * multiply bytes without overflow: byte, byte → byte * add bytes with overflow: byte, byte → byte * subtract bytes with overflow: byte, byte → byte * multiply bytes with overflow: byte, byte → byte * modulo bytes: byte, byte → byte * byte division: byte, byte → byte * right shift: byte → byte * left shift: byte → byte * right shift by n: byte, natural number → byte * left shift by n: byte, natural number → byte * right shift as ring: byte → byte * left shift as ring: byte → byte * right shift by n as ring: byte, natural number → byte * left shift by n as ring: byte, natural number → byte === Unicode code point === See [[Wikifunctions:Catalogue/Character operations#Unicode code points|existing code point functions in catalogue]]. * Codepoint to list of bytes for UTF-8 * Codepoint to list of bytes for UTF-16 * Codepoint to list of bytes for UTF-32 ===Object=== === List === ==== Basic list/iterable functions ==== ==== Complex list functions ==== ==== CSV list operations ==== === Functions with functions as arguments === * test whether certain functions have specific properties of [[:w:Homogeneous_relation|homogeneous relations]] for particular lists/sets === Gregorian calendar date === See [[Wikifunctions:Catalogue/Date operations#Gregorian calendar dates|catalogue of calendar date functions]] for existing functions. * Create a reading function for Dagbani that handles all the possible formats (both the English-linke and the traditional ones, both the Gregorian and the Hijra calendars). [https://docs.google.com/document/d/1u7-ZeY7NHt75JICUPAYky3-7KgkvauD_W3fBjmvpFO0/edit?tab=t.0#heading=h.gf6hp9o3gi0j] [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 15:43, 31 May 2025 (UTC) * same day of the year: date, date → boolean * same day of the week: date, date → boolean * within a year: date, date → boolean * within a week: date, date → boolean * within n days: date, date → boolean * months between: date, date → natural number * weeks between: date, date → natural number * n days later: date, natural number → date * n days earlier: date, natural number → date * n weeks earlier: date, natural number → date * n months later: date, natural number → date * n months earlier: date, natural number → date * n years later: date, natural number → date * n years earlier: date, natural number → date * Julian day number to date: integer → date * how many leap days passed between two dates: date, date → natural number * how many weekdays between two dates: date, date, day of the week → natural number * within JavaScript's date implementation: date → boolean * next time a day of the month is on a specific weekday: date, natural number, day of the week → date * next Friday the 13th: date → date * nth weekday of the month: date, day of the week, natural number → date * nth working days after: date, list of wikidata item references (list of holidays), wikidata item reference (place) → date === Gregorian year === See [[Wikifunctions:Catalogue/Date operations#Gregorian year|catalogue of year functions]] for existing functions. == Morphological functions == {{main|WF:HL}} == Proposed functions requiring future types == '''Note these functions cannot be implemented properly until the needed types are requested and approved.''' If one wishes to nevertheless attempt to define and implement them, * the functions and implementations should indicate prominently in their labels that their input/output types must be adjusted once support for the appropriate replacement types become available; ''and'' * the functions should ''not'' be used in the implementations of any other functions, as the later adjustment of input/output types to appropriate replacements will break those implementations. === String manipulation functions === === String analysis functions === * count distance between two letters in given alphabet (default to 26-charcater western alphabet. case insensitive. e.g. "a" & "A" ⇒ 0; "K" & "N" ⇒ 3) === String encoding and decoding functions === (would be better with types representing a stream of bytes) * [[wikidata:Q113486941|BASE45 encode]] * [[wikidata:Q113486941|BASE45 decode]] * Hexadecimal UTF-8 encode ("ABC ₤" ⇒ "41 42 43 20 E2 82 A4") * Hexadecimal UTF-8 decode ("41 42 43 20 E2 82 A4" ⇒ "ABC ₤") * Decimal UTF-8 encode ("ABC ₤" ⇒ "65 66 67 32 226 130 164") * Decimal UTF-8 decode ("65 66 67 32 226 130 164" ⇒ "ABC ₤") * Octal UTF-8 encode ("ABC ₤" ⇒ "101 102 103 40 342 202 244") * Octal UTF-8 decode ("101 102 103 40 342 202 244" ⇒ "ABC ₤") * Binary UTF-8 encode ("ABC ₤" ⇒ "01000001 01000010 01000011 00100000 11100010 10000010 10100100") * Binary UTF-8 decode ("01000001 01000010 01000011 00100000 11100010 10000010 10100100" ⇒ "ABC ₤") * Unicode code point encode ("ABC ₤" ⇒ "41 42 43 20 20A4") - {{z+|Z10785}} * Unicode code point decode ("41 42 43 20 20A4" ⇒ "ABC ₤") * Create regular expression object/string (i.e: "test" & "i" to /test/i) === Natural language functions === * Choose singular or plural based on number (e.g. singularOrPlural("person",6") -> "people") ** Note that there are also dual and other [[:w:grammatical number|grammatical number]]s in other languages. [[User:魔琴|魔琴]] ([[User talk:魔琴|talk]]) 18:54, 26 October 2023 (UTC) ** relevant interwiki link: [[d:WD:property proposal/plural forms]] [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 04:15, 9 February 2024 (UTC) **:Was rejected. **:The similar proposal {{P|13986}} was accepted, but per the comments on your proposal, just having that set (and [[Z30455|mapping it to one of our enums]]) isn't sufficient since a language might have exceptions to its conjugation rules, or handle rational/real numbers in different ways. **:Being able to make use of CLDR data might still be desirable to avoid hardcoding rules and exceptions into Functions. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 02:16, 18 December 2025 (UTC) ** This is duplicated with a suggestion above. There's some work done already: [[Z15977]]. We also have lightweight enums like {{Z|28215}} now. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 21:11, 30 November 2025 (UTC) === Cryptographic functions === (would be better with types representing a stream of bytes) * {{todo}} [[wikidata:Q47477417|MD2]] - {{z+|Z10135}} * {{todo}} [[wikidata:Q47462255|MD4]] - {{z+|Z10136}} * {{todo}} [[wikidata:Q27036232|MD5]] - {{z+|Z10137}} * {{todo}} [[wikidata:Q47208127|RIPEMD-128]] - {{z+|Z10138}} * {{todo}} [[wikidata:Q47208127|RIPEMD-160]] - {{z+|Z10139}} * {{todo}} [[wikidata:Q47463469|BLAKE2b-160]] - {{z+|Z10140}} * {{todo}} [[wikidata:Q47463469|BLAKE2b-256]] - {{z+|Z10141}} * {{todo}} [[wikidata:Q47463469|BLAKE2b-384]] - {{z+|Z10142}} * {{todo}} [[wikidata:Q47463469|BLAKE2b-512]] - {{z+|Z10143}} * {{todo}} [[wikidata:Q47463469|BLAKE2s-128]] - {{z+|Z10144}} * {{todo}} [[wikidata:Q47463469|BLAKE2s-160]] - {{z+|Z10145}} * {{todo}} [[wikidata:Q47463469|BLAKE2s-224]] - {{z+|Z10146}} * {{todo}} [[wikidata:Q47463469|BLAKE2s-256]] - {{z+|Z10147}} * {{todo}} [[wikidata:Q47465971|SHA-224]] - {{z+|Z10149}} * {{todo}} [[wikidata:Q47465971|HMAC-SHA-256]] * {{todo}} [[wikidata:Q87486893|SHAKE-128]] - {{z+|Z10150}} * {{todo}} [[wikidata:Q87486893|SHAKE-256]] - {{z+|Z10151}} * {{todo}} [[wikidata:Q56099240|ChaCha20]] - {{z+|Z25376}} * {{todo}} [[wikidata:Q56099436|X25519]] - {{z+|Z25393}} * {{todo}} [[wikidata:Q1190947|Keccak-f[1600]]] - {{z+|Z25399}} === Date, time, and calendric functions === See also: * Discussion of types at [[WF:type#Calendar types]] * {{q|139667974}} Lua module ==== Earth focus ==== [[file:Axial and apsidal precession.png|thumb|alt=diagram|orbit of Earth]] ===== Bengali calendar ===== {{z+|Z12926}} ===== Chinese calendar ===== ===== French Republican Calendar ===== decimalises and secularises the Gregorian * day names: {{z+|Z13006}}{{not done}} '''yet''' ===== Gregorian ===== widely used calendar derived from the Julian, basis for [[xkcd:1179|ISO 8601]] * date to ISO week number {{q|2110154}} * string to date * date to ISO 8601 string *: {{done}}, see {{z+|Z21842}}. --[[User:Sbb1413|Sbb1413]] ([[User talk:Sbb1413|talk]]) 18:47, 21 January 2025 (UTC) * date to year (yyyy) * date to month of the year (1-12) * date to month name (January-December) * date to day of the month (1-31) * date to hour of the day (0-23) * date to minutes (0-59) * date to seconds (0-59) Named Day from Date or day of year ; Input type : Date ; Output Type : String. ; The initial use case was automated population of On The Day, based on various collections of Holidays, festival days and observances. ? [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:35, 26 March 2025 (UTC) : So If you gave it 2025-05-01 It said "All Fools Day" etc.. Possibly an additional input of enumrated type to indicate which data set to pull holidays, fesitvals and observances from. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:35, 26 March 2025 (UTC) Diary/calander Header function - Using the above and other date functions, generates a data set from a given date. Hence if you give it 2003-05-01 you get back a JOSN set contianing the {Day of week:String, Day in the Month, Observances} etc. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:35, 26 March 2025 (UTC) ===== Holocene calendar ===== * [[w:en:Holocene calendar#Conversion]] *: {{done}}, see {{z+|Z21913}}. --[[User:Sbb1413|Sbb1413]] ([[User talk:Sbb1413|talk]]) 13:30, 25 January 2025 (UTC) ===== Indian national calendar ===== ===== Islamic ===== a Lunar calendar, also called Hijri ===== Julian ===== mostly used by astronomers, some historians, and some Orthodox Christian denominations ===== Mesoamerican calendars ===== including civil and clerical forms ===== Persian ===== also called Jalali ===== Thai calendar ===== ===== Hebrew calendar ===== ==== Mars focus ==== [[file:Lowell - Mars (1894) - Diagram of the Orbits of Mars and the Earth.jpg|thumb|alt=diagram|orbit of Mars]] ===== Asgardian calendar ===== Proposed time-keeping system for Mars; base on the [https://asgardia.space/en/calendar online converter]; see [[w:Asgardia|Asgardia]] for context ===== Darian calendar ===== Proposed time-keeping system for Mars, requires Julian Date/Time to calculate and a month enumeration: [[WF:type proposals#Something to think about]] ===== Lukashian calendars ===== Proposed simple perpetual calendar system designed to be extensible to other reference frames (for example a Mars-centric one). Eschews leap-units. * [https://lukashian.org/download Java] reference implementation * [https://github.com/The-Lukashian-Calendar/lukashian GitHub] === Basic numerical functions === * round up ("1.289" & "2" ⇒ "1.29"; "5678" & "2" ⇒ "5700") *: So if the number is floating point, round to n decimal places, and if not, round to n significant figures. Is that right? [[User:BrightSunMan|BrightSunMan]] ([[User talk:BrightSunMan|talk]]) 19:36, 24 December 2023 (UTC) *: {{done}} {{Z|20053}}/{{Z|21043}} and {{Z|27705}}/{{Z|21047}} * round down ** {{done}} {{Z|20032}}/{{Z|20841}} * return integer value (5678.678 ⇒ 5678) ** {{done}} {{Z|19841}}/{{Z|26315}} * {{z+|Z13587}} (23 ⇒ "twenty-three") * Convert money from US$ to anything else ** requires source of conversion rates, which is a hole in function-likeness * Arabic numeral to Etruscan numeral * Etruscan numeral to Arabic numeral === Data serialization functions === * parse a string as [[:en:JSON|JSON]] * extract string from JSON object based on [[:d:Q121208951|JSONPath]] (<code>{"name":"Alice"}</code>, "$.name" ⇒ "Alice") *:Why not first convert a JSON string to an object, and then have a function that extracts fields based on JSONPath? Doing Stringly-typed things like this proposal as defined isn't a good idea. [[User:0xDeadbeef|0xDeadbeef]] ([[User talk:0xDeadbeef|talk]]) 16:16, 5 August 2023 (UTC) *::This seems to be a good idea, thanks! I moved and splitted the proposal accordingly. --[[User:1-Byte|1-Byte]] ([[User talk:1-Byte|talk]]) 09:51, 6 August 2023 (UTC) *:: is it okay to go ahead to create this 'extract string from JSON object based on JSONPath' as a function ? [[User:Dolphyb|Dolphyb]] ([[User talk:Dolphyb|talk]]) 16:14, 15 February 2024 (UTC) === Basic list/iterable functions requiring numeric types === * Sum the elements of a numeric list - {{z+|Z14038}} * Product of the elements of a numeric list ** {{done}} {{Z|23909}}/{{Z|13558}} * {{z+|Z12676}} * Slice of list elements: for the supplied list, return a list of elements that are at indexes between a supplied range n:m ** Zero indexing is used (first element is index 0)? ** n and m are are included in the range? ** What happens if n and/or m are invalid indexes? ** {{done}} {{Z+|Z26556}} * Remove slice of elements from list: return the supplied list with elements between a supplied range of indexes removed ** Zero indexing is used (first element is index 0)? ** n and m are are included in the range? ** What happens if n and/or m are invalid indexes? * Every nth element of list: returns every nth element of the supplied list ** {{done}} {{Z+|Z28735}} * Remove every nth element of list: removes every nth element of the supplied list - * sample n objects from list (return up to n [[Wikifunctions:Determinism|random]] objects from the list) * Jaccard similarity coefficient (see https://en.wikipedia.org/wiki/Jaccard_index) * Weighted average. Supply a list of values, and a second list of the same length of their weights. Returns a weighted average ** Example Input: <code>values = [10, 20, 30]</code>, <code>weights = [1, 2, 3]</code> ** Output: <code>23.33</code> ** {{done}} {{Z+|Z28066}} === Geodetics functions === [[w:en:planetary coordinate system]], [[w:en:well-known text representation of coordinate reference systems]] ==== Earth ==== * convert coordinates outside of the ranges (-180, 180) for longitude and (-90, 90) for latitude to a canonical form * [https://plus.codes Plus Codes] to/from geocoordinates ** functions should match the semantics of the [https://github.com/google/open-location-code/blob/main/Documentation/Specification/specification.md#api-requirements expected API]: <code>is valid Plus Code?</code>, <code>is shortened Plus Code?</code>, <code>is full Plus Code?</code>, {{z+|Z25963}}, <code>co-ordinates from Plus Code</code> ([https://github.com/google/open-location-code/blob/main/Documentation/Specification/specification.md#decoding SW corner]), <code>shorten Plus Code</code>, <code>recover nearest Plus Code</code> ** implementations for JS and Python are provided, Apache 2.0 licenced, not sure how self-contained they are ** most of the functions could also be implemented by composition ** sample data is provided for testing (it's ~500 cases for each of encode/decode and ~50 cases for each of the others, but they're grouped nicely so maybe take 1 from each) ==== Mars ==== [[w:en:areography#Cartography and geodesy]] * convert coordinates outside of the ranges [0, 360) for longitude and (-90, 90) for latitude to a canonical form ==== Moon ==== [[w:en:selenography#Lunar cartography and toponymy]] === Unit conversion functions === * {{z+|Z15560}} ::The function has two implementations now. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 20:32, 20 February 2026 (UTC) === Conversion function : 2D Cartesian to 2D Polar === Input : matrix [x,y] Output: matrix [θ,r] Short text : Polar conversion of x,y to a polar space centred at 0,0 in the Cartesian. Constraints: x,y,r are reals (float64), θ lies in the range -π<0<π (Sign determined in relation to standards used in STEM applications. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 14:30, 26 March 2025 (UTC) :The companion could also be provided. As I never did Geodetic functions, I am not sure how Lat, Long to map projection would work , but useful. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 14:30, 26 March 2025 (UTC) :See also [[WF:Type proposals/complex128]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 10:17, 1 December 2025 (UTC) === Trigonometric functions === * {{Z|Z16463}}, {{Z|Z12473}}, *: Input : float64 Angle in radians. *: Output : float64 desired trignometric value [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:40, 26 March 2025 (UTC) * {{Z|Z29125}} *:Inputs: 2D Point (float64s, Reals, or perhaps [[WF:Type_proposals/complex128|a single complex number]]), angle (float64 or Real) *:Output: 2D Point (matching the input type) *:Not necessarily one single function; one can be created for each input type [[User:WrenFalcon|WrenFalcon]] ([[User talk:WrenFalcon|talk]]) 22:05, 31 July 2025 (UTC) ==== Function proposal : Decimalise angle of the form ('1:x' or '1 in x') to % (in 100) or ‰ (in 1000) ==== *Suggested name: gardient_decimal. *Input type: Integer ( The 1 is implied.). Lower Bound +1: Upper Bound: 1000 (for most practical situations?) *Output type: Real/float 64. Proposer: [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:05, 28 March 2025 (UTC) ===Color Functions=== ==== Colorspace Conversion ==== x,y,Y to sRGB (Illuminant D65). Input : 3tuple of float64, Output: 3 tuple of integer, where 0>=r<=255, 0>=g<=255 0>=b<=255. Convert a color specfied as 3 float64 values, from x,y,Y colorspace to sRGB or raise an "Out of Gaumt" exception. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:09, 7 April 2025 (UTC) ==== Spectral Approximate from sRGB or XYZ values. ==== I'd like to see the techniques detailed here: http://scottburns.us/reflectance-curves-from-srgb/ implemented in Wikifunctions as the provided spreadhseet later in the paper doesn't appear to work with Libre Office. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:32, 2 June 2025 (UTC) ==== Subtractive color mix (Pigment style) ==== Implement the mixing function from Spectral.js (https://github.com/rvanwijnen/spectral.js/blob/3.0.0/spectral.js )(MIT license), to allow 2 or more sRGB triplets to be mixed like pigment colors. This is different from the subtract colors function implemented previously. === Music Functions === It would be nice to have '''12 equal temperament pitch class''' and '''12 equal temperament pitch''' types, as they would be useful for calculating harmonies and melodies. The pitch classes could be stored as natural numbers from 0 to 11, and represented with symbols C, C♯, D, ..., B. The pitches could be stored as integers with -1 being B3, 0 being C4, 1 being C♯4, etc. Over time, we could expand the pitch class and pitch types to other temperaments and just intonation. As I'm new to Wikifunctions and my coding skills are next to zero, this is just a suggestion to the community. (edited) [[User:CaffeineP|CaffeineP]] ([[User talk:CaffeineP|talk]]) 14:48, 9 April 2025 (UTC) :Yes… There are some notational challenges because of enharmonics as well as naming conventions varying by language/culture, so English A♯ is equivalent to German B and English B♭, for example. Ideally, I would want the (English) pitch class that is five semitones higher than G♭ to be displayed as C♭ rather than B. :Also, given some reference pitch like A4 = 440 Hz, we should be able to return the frequency in hertz of a given pitch and, conversely, the nearest pitch for a given frequency and its offset in cents (or whatever). The computation is a lot simpler than representing the result (or capturing how the result should be represented)! [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 20:08, 9 April 2025 (UTC) :If you use the cardinal values for the pitches from the MIDI standard (or an extension to such, since they're limited to 0..<128) then you could make some of these functions already, no [[WF:Type_proposals|type proposal]] needed. Granted a lot of them would just be addition/subtraction. And if you semi-arbitrarily map A = 0, A# = 1, etc. then you could do all of them. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 10:33, 1 December 2025 (UTC) * '''12-ET Pitch Class of a Pitch''': Return the 12 equal temperament pitch class of a given 12 equal temperament pitch. For example, C4 returns C. * '''12-ET Pitch based on Pitch Class''': Return a 12 equal temperament pitch based on a given 12 equal temperament pitch class and a given integer. For example, C and 4 return C4. * '''Interval between 12-ET Pitch Classes in Semitones''': Get the interval in semitones between two 12 equal temperament pitch classes, always assuming that the first is lower than (or the same as) the second, and the interval is less than an octave. For example, C and B return 11, while B and C return 1. * '''Interval between 12-ET Pitches in Semitones''': Get the interval in semitones between two 12 equal temperament pitches. For example, C4 and B3 return -1, while C3 and B4 return 23. ** {{Z+|Z25219}} * '''Raise 12-ET Pitch Class by Semitones''': Get a new 12 equal temperament pitch class through raising a given pitch class by the provided number of semitones. For example, raising B by 1 semitone returns C. ** {{Z+|Z25407}} * '''Lower 12-ET Pitch Class by Semitones''': Same as above, but lower the pitch class instead of raising it. ** {{Z+|Z25407}} * '''Raise 12-ET Pitch by Semitones''': Get a new 12 equal temperament pitch through raising a given pitch by the provided number of semitones. For example, raising B3 by 1 semitone returns C4. * '''Lower 12-ET Pitch by Semitones''': Same as above, but lower the pitch instead of raising it. * '''Frequency of a 12-ET Pitch''': Return a float64 frequency in Hz based on the provided 12 equal temperament pitch (and possibly a reference pitch with its frequency; if not provided, take default A4 = 440 Hz). ** {{Z+|Z25217}} * '''Approximate 12-ET Pitch Class based on Frequency''': Return a 12 equal temperament pitch class approximately based on the provided frequency in Hz. * '''Approximate 12-ET Pitch based on Frequency''': Return a 12 equal temperament pitch approximately based on the provided frequency in Hz. === SVG Functions === I would be nice to generate SVG (a XML-based vector image format which is basically a long string), it could allow to replace a lot of images on Commons or templates/tools. Here some examples: * create simple forms, * create graphs (line graph/bar graph for population or for production, elections diagrams like [[:File:1900Hawaii.svg]], etc.), * create more complex visualisation like genealogical trees, * create coat of arms (?), * etc. Cheers, [[User:VIGNERON|VIGNERON]] ([[User talk:VIGNERON|talk]]) 10:47, 23 April 2025 (UTC) :@[[User:VIGNERON|VIGNERON]]: Eventually that is something we might support, but there'll be nothing any time soon. It has a number of complex security and scalability concerns, sadly. [[User:Jdforrester (WMF)|Jdforrester (WMF)]] ([[User talk:Jdforrester (WMF)|talk]]) 13:21, 23 April 2025 (UTC) ::{{ping|Jdforrester (WMF)}} thanks. I talked about it for the last Corner but I wanted to leave a record here, if we have time, maybe I'll use that time to write some things to prepare (like listing templates and tools on the Wikimedia projects that generate SVG or visualisations). Cheers, [[User:VIGNERON|VIGNERON]] ([[User talk:VIGNERON|talk]]) 15:28, 23 April 2025 (UTC) :::Of course! I've explicitly added a section on this here: [[Wikifunctions:Embedded function calls#Non-text output]] — hope that helps assure you that we're thinking about it. [[User:Jdforrester (WMF)|Jdforrester (WMF)]] ([[User talk:Jdforrester (WMF)|talk]]) 21:40, 23 April 2025 (UTC) === Biology === ==== Taxon functions ==== A taxon type could be useful, as could a taxon rank enum ({{Q|P31}} {{Q|Q427626}}). --[[User:WrenFalcon|WrenFalcon]] ([[User talk:WrenFalcon|talk]]) 16:49, 22 September 2025 (UTC) * Wikidata item representing taxon rank ({{Q|P31}} {{Q|Q427626}}) is at genus level or below ** Should(?) be possible with the current Wikidata functionality, from what I understand. See [[:Wikifunctions:Project chat#Taxon rank function(s)]] for a more detailed explanation. --[[User:WrenFalcon|WrenFalcon]] ([[User talk:WrenFalcon|talk]]) 23:27, 16 May 2025 (UTC) * compare taxon ranks ** Cases: a < b, a == b, a > b, undetermined/incomparable (if a or b are clades, this should be returned/used) * get taxon code of nomenclature ({{Q|P944}}) * is parent taxon of / is child taxon of ** <code>is parent taxon of(Taxon a, Taxon b) => b.parent == a OR is parent taxon of(a, b.parent)</code> * format taxon name (according to relevant rules of nomenclature) ** Include author and year citation? Maybe page too, if present? == Object / type / function functions == == External function lists == * [[WF:importing]] p1g2m83qkalf1it6hqa697cx2y0skp0 272393 272375 2026-05-05T06:22:44Z Arlo Barnes 1231 /* SVG Functions */ Reply 272393 wikitext text/x-wiki {{Shortcut|[[WF:SAF]]|[[WF:RF]]}} Do you have an idea for a new function? Suggest it here! It may help to refer to [[Wikifunctions:Glossary|our glossary]]. You can [https://www.wikifunctions.org/wiki/Special:CreateZObject?zid=Z8 create a function] right away if you have the user-rights. If a function requires a new type, consider [[WF:TP|proposing it]]. Note that for now '''we only support a limited number of types as input and output types''' of functions. More types are coming in the next few months. For the full list, see [[WF:Type]]. Once created, consider adding new Functions to the [[Wikifunctions:Catalogue|catalogue]]. [[Category:Maintenance]] == Requests from Abstract Wikipedia editors == {{main|abstract:Project:Suggested functions}} === Infobox === I'm thinking we can adapt [[w:module:infobox]] to create infobox HTML in abstract articles. Maybe it can even use info from Wikidata to populate it, like it already does on some wikis. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 06:34, 28 April 2026 (UTC) == Proposed functions requiring only available types == === String === ==== String character discard functions ==== ==== String character replacement functions ==== Add the word 'the' to the start of a function. e.g United Kingdom - the United Kingdom. [[User:FantasticWikiUser|FantasticWikiUser]] ([[User talk:FantasticWikiUser|talk]]) 11:27, 25 March 2026 (UTC) :Yes… simple enough to do but not entirely clear when it is required. We’ve been [https://t.me/Wikifunctions/29989 discussing it on Telegram]. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 12:10, 25 March 2026 (UTC) ::This was an issue I found on [[abstract:Q21]] when I couldn't add it there. [[User:FantasticWikiUser|FantasticWikiUser]] ([[User talk:FantasticWikiUser|talk]]) 12:16, 25 March 2026 (UTC) :I worked on {{z|Z33138}} today. I'm not sure it covers all corner cases, feel free to try it out and add more tests :) [[User:So9q|So9q]] ([[User talk:So9q|talk]]) 20:32, 5 April 2026 (UTC) ==== String search functions ==== ==== String escaping and unescaping functions ==== ==== String encoding and decoding functions ==== * Unicode normalising functions (there are several types of normalisation) * [https://html.spec.whatwg.org/#named-character-references HTML named character encode] * [[wikidata:Q47466379|Punycode encode]] - {{z+|Z10178}} (part only, not whole url); see also {{z+|Z10185}} * [[:en:Unified_English_Braille|Unified English Braille encode]] (discarding invalid characters?) *[https://braille-autoriteit.org/standaarden/achtpuntsbraille/ Dutch eight-dot Braille] encode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 21:38, 17 January 2026 (UTC) *[https://braille-autoriteit.org/standaarden/achtpuntsbraille/ Dutch eight-dot Braille] decode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 21:38, 17 January 2026 (UTC) *[https://braille-autoriteit.org/versie-2019-van-zespunts-standaard/ Dutch six-dot Braille] encode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 21:38, 17 January 2026 (UTC) *[https://braille-autoriteit.org/versie-2019-van-zespunts-standaard/ Dutch six-dot Braille] decode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 21:38, 17 January 2026 (UTC) *[[google:ipa+braille&oq=IPA+Braille&gs_lcrp=EgZjaHJvbWUqDAgAECMYJxiABBiKBTIMCAAQIxgnGIAEGIoFMg0IARAAGIYDGIAEGIoFMg0IAhAAGIYDGIAEGIoFMgoIAxAAGIAEGKIEMgoIBBAAGIAEGKIEMgYIBRBFGDwyBggGEEUYPTIGCAcQRRg90gEHMjMyajBqN6gCALACAA&sourceid=chrome&ie=UTF-8|IPA Braille]] encode (IPA --> IPA Braille) [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 11:42, 18 January 2026 (UTC) *[[google:ipa+braille&oq=IPA+Braille&gs_lcrp=EgZjaHJvbWUqDAgAECMYJxiABBiKBTIMCAAQIxgnGIAEGIoFMg0IARAAGIYDGIAEGIoFMg0IAhAAGIYDGIAEGIoFMgoIAxAAGIAEGKIEMgoIBBAAGIAEGKIEMgYIBRBFGDwyBggGEEUYPTIGCAcQRRg90gEHMjMyajBqN6gCALACAA&sourceid=chrome&ie=UTF-8|IPA Braille]] decode (IPA Braille --> IPA) [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 11:42, 18 January 2026 (UTC) ==== String presentation functions ==== * add [[:en:Quotation_mark|locale-specific quotation marks]] to string ** Shouldn't the output depend on the locale? See [[mw:Extension:Scribunto/Lua_reference_manual#mw.language:formatNum|mw.language:formatNum]]. —[[User:Dexxor|Dexxor]] ([[User talk:Dexxor|talk]]) 17:15, 4 September 2023 (UTC) ==== String colour notation functions ==== * Hue of color (since we already have [[Z13017]], [[Z18263]] and [[Z18268]]) ==== String notation validation checks ==== * check if string is an [[:en:International_Chemical_Identifier]] ** {{Partly done}} see {{z+|Z21539}}. Supports the verification of the chemical formula and the stereochemical layer. There are 13 testcaes that I've written, all of which are passed by my JavaScript implementation. Note that a python implementation is not possible as the regex module is not available in Wikifunctions. [[User:MolecularPilot|MolecularPilot]] ([[User talk:MolecularPilot|talk]]) 03:09, 11 January 2025 (UTC) ** To do: *** Needs to verify the hydrogen and connection sections of the main layer *** Support the charge layer *** Support the isotopic layer **[[User:MolecularPilot|MolecularPilot]] ([[User talk:MolecularPilot|talk]]) 03:09, 11 January 2025 (UTC) ***{{ping|MolecularPilot}} A python impl. is infact possible. I created a basic direct translation at {{z+|Z22823}}. Some tests are failing as the regex needs a bit of sorting out, out of scope for me, but you can give it a try! Keep in mind that you need to escape any \ with a \\ just before saving per [[Wikifunctions:Python_implementations#Known_limitations_as_of_October_2024]]. <span style="font-family:monospace;font-weight:bold">[[User:Bunnypranav|<span style="color:#63b3ed">~/Bunny</span><span style="color:#2c5282">pranav</span>]]:&lt;[[User talk:Bunnypranav|<span style="color:#63b3ed">ping</span>]]&gt;</span> 06:14, 26 February 2025 (UTC) * check if string is a [[:en:SMILES_arbitrary_target_specification|SMILES arbitrary target specification (SMARTS) notation]] * check if string is an [[:en:ABC_notation|ABC notation]] * check if string is a [[:en:LilyPond|LilyPond notation]] * check if string is a [[:en:UIC_classification_of_locomotive_axle_arrangements|UIC classification of locomotive axle arrangements notation]] * check if a string is a valid [[:en:Digital_object_identifier|DOI]] ** Something about implementation difficulties: https://stackoverflow.com/questions/27910/finding-a-doi-in-a-document-or-page [[User:Alexander-Mart-Earth|Alexander-Mart-Earth]] ([[User talk:Alexander-Mart-Earth|talk]]) 14:28, 21 December 2023 (UTC) ==== String validation checks ==== * check if string is a valid ISO 3166 country code * check if string is a valid [[:en:ISO_8601#EDTF|EDTF]] date/time ====String analysis functions==== ==== Monolingual text ==== ==== String Wikitext operations ==== ... === Natural number === === Integer=== === Byte === See [[Wikifunctions:Catalogue/Boolean operations#Byte functions|existing Byte functions]] in catalogue. * next byte without overflow: byte → byte * previous byte without overflow: byte → byte * next byte by Gray code: byte → byte * previous byte by Gray code: byte → byte * all bits set: byte → boolean * no bits set: byte → boolean * add bytes without overflow: byte, byte → byte * subtract bytes without overflow: byte, byte → byte * multiply bytes without overflow: byte, byte → byte * add bytes with overflow: byte, byte → byte * subtract bytes with overflow: byte, byte → byte * multiply bytes with overflow: byte, byte → byte * modulo bytes: byte, byte → byte * byte division: byte, byte → byte * right shift: byte → byte * left shift: byte → byte * right shift by n: byte, natural number → byte * left shift by n: byte, natural number → byte * right shift as ring: byte → byte * left shift as ring: byte → byte * right shift by n as ring: byte, natural number → byte * left shift by n as ring: byte, natural number → byte === Unicode code point === See [[Wikifunctions:Catalogue/Character operations#Unicode code points|existing code point functions in catalogue]]. * Codepoint to list of bytes for UTF-8 * Codepoint to list of bytes for UTF-16 * Codepoint to list of bytes for UTF-32 ===Object=== === List === ==== Basic list/iterable functions ==== ==== Complex list functions ==== ==== CSV list operations ==== === Functions with functions as arguments === * test whether certain functions have specific properties of [[:w:Homogeneous_relation|homogeneous relations]] for particular lists/sets === Gregorian calendar date === See [[Wikifunctions:Catalogue/Date operations#Gregorian calendar dates|catalogue of calendar date functions]] for existing functions. * Create a reading function for Dagbani that handles all the possible formats (both the English-linke and the traditional ones, both the Gregorian and the Hijra calendars). [https://docs.google.com/document/d/1u7-ZeY7NHt75JICUPAYky3-7KgkvauD_W3fBjmvpFO0/edit?tab=t.0#heading=h.gf6hp9o3gi0j] [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 15:43, 31 May 2025 (UTC) * same day of the year: date, date → boolean * same day of the week: date, date → boolean * within a year: date, date → boolean * within a week: date, date → boolean * within n days: date, date → boolean * months between: date, date → natural number * weeks between: date, date → natural number * n days later: date, natural number → date * n days earlier: date, natural number → date * n weeks earlier: date, natural number → date * n months later: date, natural number → date * n months earlier: date, natural number → date * n years later: date, natural number → date * n years earlier: date, natural number → date * Julian day number to date: integer → date * how many leap days passed between two dates: date, date → natural number * how many weekdays between two dates: date, date, day of the week → natural number * within JavaScript's date implementation: date → boolean * next time a day of the month is on a specific weekday: date, natural number, day of the week → date * next Friday the 13th: date → date * nth weekday of the month: date, day of the week, natural number → date * nth working days after: date, list of wikidata item references (list of holidays), wikidata item reference (place) → date === Gregorian year === See [[Wikifunctions:Catalogue/Date operations#Gregorian year|catalogue of year functions]] for existing functions. == Morphological functions == {{main|WF:HL}} == Proposed functions requiring future types == '''Note these functions cannot be implemented properly until the needed types are requested and approved.''' If one wishes to nevertheless attempt to define and implement them, * the functions and implementations should indicate prominently in their labels that their input/output types must be adjusted once support for the appropriate replacement types become available; ''and'' * the functions should ''not'' be used in the implementations of any other functions, as the later adjustment of input/output types to appropriate replacements will break those implementations. === String manipulation functions === === String analysis functions === * count distance between two letters in given alphabet (default to 26-charcater western alphabet. case insensitive. e.g. "a" & "A" ⇒ 0; "K" & "N" ⇒ 3) === String encoding and decoding functions === (would be better with types representing a stream of bytes) * [[wikidata:Q113486941|BASE45 encode]] * [[wikidata:Q113486941|BASE45 decode]] * Hexadecimal UTF-8 encode ("ABC ₤" ⇒ "41 42 43 20 E2 82 A4") * Hexadecimal UTF-8 decode ("41 42 43 20 E2 82 A4" ⇒ "ABC ₤") * Decimal UTF-8 encode ("ABC ₤" ⇒ "65 66 67 32 226 130 164") * Decimal UTF-8 decode ("65 66 67 32 226 130 164" ⇒ "ABC ₤") * Octal UTF-8 encode ("ABC ₤" ⇒ "101 102 103 40 342 202 244") * Octal UTF-8 decode ("101 102 103 40 342 202 244" ⇒ "ABC ₤") * Binary UTF-8 encode ("ABC ₤" ⇒ "01000001 01000010 01000011 00100000 11100010 10000010 10100100") * Binary UTF-8 decode ("01000001 01000010 01000011 00100000 11100010 10000010 10100100" ⇒ "ABC ₤") * Unicode code point encode ("ABC ₤" ⇒ "41 42 43 20 20A4") - {{z+|Z10785}} * Unicode code point decode ("41 42 43 20 20A4" ⇒ "ABC ₤") * Create regular expression object/string (i.e: "test" & "i" to /test/i) === Natural language functions === * Choose singular or plural based on number (e.g. singularOrPlural("person",6") -> "people") ** Note that there are also dual and other [[:w:grammatical number|grammatical number]]s in other languages. [[User:魔琴|魔琴]] ([[User talk:魔琴|talk]]) 18:54, 26 October 2023 (UTC) ** relevant interwiki link: [[d:WD:property proposal/plural forms]] [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 04:15, 9 February 2024 (UTC) **:Was rejected. **:The similar proposal {{P|13986}} was accepted, but per the comments on your proposal, just having that set (and [[Z30455|mapping it to one of our enums]]) isn't sufficient since a language might have exceptions to its conjugation rules, or handle rational/real numbers in different ways. **:Being able to make use of CLDR data might still be desirable to avoid hardcoding rules and exceptions into Functions. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 02:16, 18 December 2025 (UTC) ** This is duplicated with a suggestion above. There's some work done already: [[Z15977]]. We also have lightweight enums like {{Z|28215}} now. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 21:11, 30 November 2025 (UTC) === Cryptographic functions === (would be better with types representing a stream of bytes) * {{todo}} [[wikidata:Q47477417|MD2]] - {{z+|Z10135}} * {{todo}} [[wikidata:Q47462255|MD4]] - {{z+|Z10136}} * {{todo}} [[wikidata:Q27036232|MD5]] - {{z+|Z10137}} * {{todo}} [[wikidata:Q47208127|RIPEMD-128]] - {{z+|Z10138}} * {{todo}} [[wikidata:Q47208127|RIPEMD-160]] - {{z+|Z10139}} * {{todo}} [[wikidata:Q47463469|BLAKE2b-160]] - {{z+|Z10140}} * {{todo}} [[wikidata:Q47463469|BLAKE2b-256]] - {{z+|Z10141}} * {{todo}} [[wikidata:Q47463469|BLAKE2b-384]] - {{z+|Z10142}} * {{todo}} [[wikidata:Q47463469|BLAKE2b-512]] - {{z+|Z10143}} * {{todo}} [[wikidata:Q47463469|BLAKE2s-128]] - {{z+|Z10144}} * {{todo}} [[wikidata:Q47463469|BLAKE2s-160]] - {{z+|Z10145}} * {{todo}} [[wikidata:Q47463469|BLAKE2s-224]] - {{z+|Z10146}} * {{todo}} [[wikidata:Q47463469|BLAKE2s-256]] - {{z+|Z10147}} * {{todo}} [[wikidata:Q47465971|SHA-224]] - {{z+|Z10149}} * {{todo}} [[wikidata:Q47465971|HMAC-SHA-256]] * {{todo}} [[wikidata:Q87486893|SHAKE-128]] - {{z+|Z10150}} * {{todo}} [[wikidata:Q87486893|SHAKE-256]] - {{z+|Z10151}} * {{todo}} [[wikidata:Q56099240|ChaCha20]] - {{z+|Z25376}} * {{todo}} [[wikidata:Q56099436|X25519]] - {{z+|Z25393}} * {{todo}} [[wikidata:Q1190947|Keccak-f[1600]]] - {{z+|Z25399}} === Date, time, and calendric functions === See also: * Discussion of types at [[WF:type#Calendar types]] * {{q|139667974}} Lua module ==== Earth focus ==== [[file:Axial and apsidal precession.png|thumb|alt=diagram|orbit of Earth]] ===== Bengali calendar ===== {{z+|Z12926}} ===== Chinese calendar ===== ===== French Republican Calendar ===== decimalises and secularises the Gregorian * day names: {{z+|Z13006}}{{not done}} '''yet''' ===== Gregorian ===== widely used calendar derived from the Julian, basis for [[xkcd:1179|ISO 8601]] * date to ISO week number {{q|2110154}} * string to date * date to ISO 8601 string *: {{done}}, see {{z+|Z21842}}. --[[User:Sbb1413|Sbb1413]] ([[User talk:Sbb1413|talk]]) 18:47, 21 January 2025 (UTC) * date to year (yyyy) * date to month of the year (1-12) * date to month name (January-December) * date to day of the month (1-31) * date to hour of the day (0-23) * date to minutes (0-59) * date to seconds (0-59) Named Day from Date or day of year ; Input type : Date ; Output Type : String. ; The initial use case was automated population of On The Day, based on various collections of Holidays, festival days and observances. ? [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:35, 26 March 2025 (UTC) : So If you gave it 2025-05-01 It said "All Fools Day" etc.. Possibly an additional input of enumrated type to indicate which data set to pull holidays, fesitvals and observances from. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:35, 26 March 2025 (UTC) Diary/calander Header function - Using the above and other date functions, generates a data set from a given date. Hence if you give it 2003-05-01 you get back a JOSN set contianing the {Day of week:String, Day in the Month, Observances} etc. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:35, 26 March 2025 (UTC) ===== Holocene calendar ===== * [[w:en:Holocene calendar#Conversion]] *: {{done}}, see {{z+|Z21913}}. --[[User:Sbb1413|Sbb1413]] ([[User talk:Sbb1413|talk]]) 13:30, 25 January 2025 (UTC) ===== Indian national calendar ===== ===== Islamic ===== a Lunar calendar, also called Hijri ===== Julian ===== mostly used by astronomers, some historians, and some Orthodox Christian denominations ===== Mesoamerican calendars ===== including civil and clerical forms ===== Persian ===== also called Jalali ===== Thai calendar ===== ===== Hebrew calendar ===== ==== Mars focus ==== [[file:Lowell - Mars (1894) - Diagram of the Orbits of Mars and the Earth.jpg|thumb|alt=diagram|orbit of Mars]] ===== Asgardian calendar ===== Proposed time-keeping system for Mars; base on the [https://asgardia.space/en/calendar online converter]; see [[w:Asgardia|Asgardia]] for context ===== Darian calendar ===== Proposed time-keeping system for Mars, requires Julian Date/Time to calculate and a month enumeration: [[WF:type proposals#Something to think about]] ===== Lukashian calendars ===== Proposed simple perpetual calendar system designed to be extensible to other reference frames (for example a Mars-centric one). Eschews leap-units. * [https://lukashian.org/download Java] reference implementation * [https://github.com/The-Lukashian-Calendar/lukashian GitHub] === Basic numerical functions === * round up ("1.289" & "2" ⇒ "1.29"; "5678" & "2" ⇒ "5700") *: So if the number is floating point, round to n decimal places, and if not, round to n significant figures. Is that right? [[User:BrightSunMan|BrightSunMan]] ([[User talk:BrightSunMan|talk]]) 19:36, 24 December 2023 (UTC) *: {{done}} {{Z|20053}}/{{Z|21043}} and {{Z|27705}}/{{Z|21047}} * round down ** {{done}} {{Z|20032}}/{{Z|20841}} * return integer value (5678.678 ⇒ 5678) ** {{done}} {{Z|19841}}/{{Z|26315}} * {{z+|Z13587}} (23 ⇒ "twenty-three") * Convert money from US$ to anything else ** requires source of conversion rates, which is a hole in function-likeness * Arabic numeral to Etruscan numeral * Etruscan numeral to Arabic numeral === Data serialization functions === * parse a string as [[:en:JSON|JSON]] * extract string from JSON object based on [[:d:Q121208951|JSONPath]] (<code>{"name":"Alice"}</code>, "$.name" ⇒ "Alice") *:Why not first convert a JSON string to an object, and then have a function that extracts fields based on JSONPath? Doing Stringly-typed things like this proposal as defined isn't a good idea. [[User:0xDeadbeef|0xDeadbeef]] ([[User talk:0xDeadbeef|talk]]) 16:16, 5 August 2023 (UTC) *::This seems to be a good idea, thanks! I moved and splitted the proposal accordingly. --[[User:1-Byte|1-Byte]] ([[User talk:1-Byte|talk]]) 09:51, 6 August 2023 (UTC) *:: is it okay to go ahead to create this 'extract string from JSON object based on JSONPath' as a function ? [[User:Dolphyb|Dolphyb]] ([[User talk:Dolphyb|talk]]) 16:14, 15 February 2024 (UTC) === Basic list/iterable functions requiring numeric types === * Sum the elements of a numeric list - {{z+|Z14038}} * Product of the elements of a numeric list ** {{done}} {{Z|23909}}/{{Z|13558}} * {{z+|Z12676}} * Slice of list elements: for the supplied list, return a list of elements that are at indexes between a supplied range n:m ** Zero indexing is used (first element is index 0)? ** n and m are are included in the range? ** What happens if n and/or m are invalid indexes? ** {{done}} {{Z+|Z26556}} * Remove slice of elements from list: return the supplied list with elements between a supplied range of indexes removed ** Zero indexing is used (first element is index 0)? ** n and m are are included in the range? ** What happens if n and/or m are invalid indexes? * Every nth element of list: returns every nth element of the supplied list ** {{done}} {{Z+|Z28735}} * Remove every nth element of list: removes every nth element of the supplied list - * sample n objects from list (return up to n [[Wikifunctions:Determinism|random]] objects from the list) * Jaccard similarity coefficient (see https://en.wikipedia.org/wiki/Jaccard_index) * Weighted average. Supply a list of values, and a second list of the same length of their weights. Returns a weighted average ** Example Input: <code>values = [10, 20, 30]</code>, <code>weights = [1, 2, 3]</code> ** Output: <code>23.33</code> ** {{done}} {{Z+|Z28066}} === Geodetics functions === [[w:en:planetary coordinate system]], [[w:en:well-known text representation of coordinate reference systems]] ==== Earth ==== * convert coordinates outside of the ranges (-180, 180) for longitude and (-90, 90) for latitude to a canonical form * [https://plus.codes Plus Codes] to/from geocoordinates ** functions should match the semantics of the [https://github.com/google/open-location-code/blob/main/Documentation/Specification/specification.md#api-requirements expected API]: <code>is valid Plus Code?</code>, <code>is shortened Plus Code?</code>, <code>is full Plus Code?</code>, {{z+|Z25963}}, <code>co-ordinates from Plus Code</code> ([https://github.com/google/open-location-code/blob/main/Documentation/Specification/specification.md#decoding SW corner]), <code>shorten Plus Code</code>, <code>recover nearest Plus Code</code> ** implementations for JS and Python are provided, Apache 2.0 licenced, not sure how self-contained they are ** most of the functions could also be implemented by composition ** sample data is provided for testing (it's ~500 cases for each of encode/decode and ~50 cases for each of the others, but they're grouped nicely so maybe take 1 from each) ==== Mars ==== [[w:en:areography#Cartography and geodesy]] * convert coordinates outside of the ranges [0, 360) for longitude and (-90, 90) for latitude to a canonical form ==== Moon ==== [[w:en:selenography#Lunar cartography and toponymy]] === Unit conversion functions === * {{z+|Z15560}} ::The function has two implementations now. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 20:32, 20 February 2026 (UTC) === Conversion function : 2D Cartesian to 2D Polar === Input : matrix [x,y] Output: matrix [θ,r] Short text : Polar conversion of x,y to a polar space centred at 0,0 in the Cartesian. Constraints: x,y,r are reals (float64), θ lies in the range -π<0<π (Sign determined in relation to standards used in STEM applications. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 14:30, 26 March 2025 (UTC) :The companion could also be provided. As I never did Geodetic functions, I am not sure how Lat, Long to map projection would work , but useful. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 14:30, 26 March 2025 (UTC) :See also [[WF:Type proposals/complex128]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 10:17, 1 December 2025 (UTC) === Trigonometric functions === * {{Z|Z16463}}, {{Z|Z12473}}, *: Input : float64 Angle in radians. *: Output : float64 desired trignometric value [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:40, 26 March 2025 (UTC) * {{Z|Z29125}} *:Inputs: 2D Point (float64s, Reals, or perhaps [[WF:Type_proposals/complex128|a single complex number]]), angle (float64 or Real) *:Output: 2D Point (matching the input type) *:Not necessarily one single function; one can be created for each input type [[User:WrenFalcon|WrenFalcon]] ([[User talk:WrenFalcon|talk]]) 22:05, 31 July 2025 (UTC) ==== Function proposal : Decimalise angle of the form ('1:x' or '1 in x') to % (in 100) or ‰ (in 1000) ==== *Suggested name: gardient_decimal. *Input type: Integer ( The 1 is implied.). Lower Bound +1: Upper Bound: 1000 (for most practical situations?) *Output type: Real/float 64. Proposer: [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:05, 28 March 2025 (UTC) ===Color Functions=== ==== Colorspace Conversion ==== x,y,Y to sRGB (Illuminant D65). Input : 3tuple of float64, Output: 3 tuple of integer, where 0>=r<=255, 0>=g<=255 0>=b<=255. Convert a color specfied as 3 float64 values, from x,y,Y colorspace to sRGB or raise an "Out of Gaumt" exception. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:09, 7 April 2025 (UTC) ==== Spectral Approximate from sRGB or XYZ values. ==== I'd like to see the techniques detailed here: http://scottburns.us/reflectance-curves-from-srgb/ implemented in Wikifunctions as the provided spreadhseet later in the paper doesn't appear to work with Libre Office. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:32, 2 June 2025 (UTC) ==== Subtractive color mix (Pigment style) ==== Implement the mixing function from Spectral.js (https://github.com/rvanwijnen/spectral.js/blob/3.0.0/spectral.js )(MIT license), to allow 2 or more sRGB triplets to be mixed like pigment colors. This is different from the subtract colors function implemented previously. === Music Functions === It would be nice to have '''12 equal temperament pitch class''' and '''12 equal temperament pitch''' types, as they would be useful for calculating harmonies and melodies. The pitch classes could be stored as natural numbers from 0 to 11, and represented with symbols C, C♯, D, ..., B. The pitches could be stored as integers with -1 being B3, 0 being C4, 1 being C♯4, etc. Over time, we could expand the pitch class and pitch types to other temperaments and just intonation. As I'm new to Wikifunctions and my coding skills are next to zero, this is just a suggestion to the community. (edited) [[User:CaffeineP|CaffeineP]] ([[User talk:CaffeineP|talk]]) 14:48, 9 April 2025 (UTC) :Yes… There are some notational challenges because of enharmonics as well as naming conventions varying by language/culture, so English A♯ is equivalent to German B and English B♭, for example. Ideally, I would want the (English) pitch class that is five semitones higher than G♭ to be displayed as C♭ rather than B. :Also, given some reference pitch like A4 = 440 Hz, we should be able to return the frequency in hertz of a given pitch and, conversely, the nearest pitch for a given frequency and its offset in cents (or whatever). The computation is a lot simpler than representing the result (or capturing how the result should be represented)! [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 20:08, 9 April 2025 (UTC) :If you use the cardinal values for the pitches from the MIDI standard (or an extension to such, since they're limited to 0..<128) then you could make some of these functions already, no [[WF:Type_proposals|type proposal]] needed. Granted a lot of them would just be addition/subtraction. And if you semi-arbitrarily map A = 0, A# = 1, etc. then you could do all of them. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 10:33, 1 December 2025 (UTC) * '''12-ET Pitch Class of a Pitch''': Return the 12 equal temperament pitch class of a given 12 equal temperament pitch. For example, C4 returns C. * '''12-ET Pitch based on Pitch Class''': Return a 12 equal temperament pitch based on a given 12 equal temperament pitch class and a given integer. For example, C and 4 return C4. * '''Interval between 12-ET Pitch Classes in Semitones''': Get the interval in semitones between two 12 equal temperament pitch classes, always assuming that the first is lower than (or the same as) the second, and the interval is less than an octave. For example, C and B return 11, while B and C return 1. * '''Interval between 12-ET Pitches in Semitones''': Get the interval in semitones between two 12 equal temperament pitches. For example, C4 and B3 return -1, while C3 and B4 return 23. ** {{Z+|Z25219}} * '''Raise 12-ET Pitch Class by Semitones''': Get a new 12 equal temperament pitch class through raising a given pitch class by the provided number of semitones. For example, raising B by 1 semitone returns C. ** {{Z+|Z25407}} * '''Lower 12-ET Pitch Class by Semitones''': Same as above, but lower the pitch class instead of raising it. ** {{Z+|Z25407}} * '''Raise 12-ET Pitch by Semitones''': Get a new 12 equal temperament pitch through raising a given pitch by the provided number of semitones. For example, raising B3 by 1 semitone returns C4. * '''Lower 12-ET Pitch by Semitones''': Same as above, but lower the pitch instead of raising it. * '''Frequency of a 12-ET Pitch''': Return a float64 frequency in Hz based on the provided 12 equal temperament pitch (and possibly a reference pitch with its frequency; if not provided, take default A4 = 440 Hz). ** {{Z+|Z25217}} * '''Approximate 12-ET Pitch Class based on Frequency''': Return a 12 equal temperament pitch class approximately based on the provided frequency in Hz. * '''Approximate 12-ET Pitch based on Frequency''': Return a 12 equal temperament pitch approximately based on the provided frequency in Hz. === SVG Functions === I would be nice to generate SVG (a XML-based vector image format which is basically a long string), it could allow to replace a lot of images on Commons or templates/tools. Here some examples: * create simple forms, * create graphs (line graph/bar graph for population or for production, elections diagrams like [[:File:1900Hawaii.svg]], etc.), * create more complex visualisation like genealogical trees, * create coat of arms (?), * etc. Cheers, [[User:VIGNERON|VIGNERON]] ([[User talk:VIGNERON|talk]]) 10:47, 23 April 2025 (UTC) :@[[User:VIGNERON|VIGNERON]]: Eventually that is something we might support, but there'll be nothing any time soon. It has a number of complex security and scalability concerns, sadly. [[User:Jdforrester (WMF)|Jdforrester (WMF)]] ([[User talk:Jdforrester (WMF)|talk]]) 13:21, 23 April 2025 (UTC) ::{{ping|Jdforrester (WMF)}} thanks. I talked about it for the last Corner but I wanted to leave a record here, if we have time, maybe I'll use that time to write some things to prepare (like listing templates and tools on the Wikimedia projects that generate SVG or visualisations). Cheers, [[User:VIGNERON|VIGNERON]] ([[User talk:VIGNERON|talk]]) 15:28, 23 April 2025 (UTC) :::Of course! I've explicitly added a section on this here: [[Wikifunctions:Embedded function calls#Non-text output]] — hope that helps assure you that we're thinking about it. [[User:Jdforrester (WMF)|Jdforrester (WMF)]] ([[User talk:Jdforrester (WMF)|talk]]) 21:40, 23 April 2025 (UTC) :An intermediate step could be replicating some of the [https://w3.org/TR/SVG11/filters.html functions] contained within {{Q|1518348}} [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 06:22, 5 May 2026 (UTC) === Biology === ==== Taxon functions ==== A taxon type could be useful, as could a taxon rank enum ({{Q|P31}} {{Q|Q427626}}). --[[User:WrenFalcon|WrenFalcon]] ([[User talk:WrenFalcon|talk]]) 16:49, 22 September 2025 (UTC) * Wikidata item representing taxon rank ({{Q|P31}} {{Q|Q427626}}) is at genus level or below ** Should(?) be possible with the current Wikidata functionality, from what I understand. See [[:Wikifunctions:Project chat#Taxon rank function(s)]] for a more detailed explanation. --[[User:WrenFalcon|WrenFalcon]] ([[User talk:WrenFalcon|talk]]) 23:27, 16 May 2025 (UTC) * compare taxon ranks ** Cases: a < b, a == b, a > b, undetermined/incomparable (if a or b are clades, this should be returned/used) * get taxon code of nomenclature ({{Q|P944}}) * is parent taxon of / is child taxon of ** <code>is parent taxon of(Taxon a, Taxon b) => b.parent == a OR is parent taxon of(a, b.parent)</code> * format taxon name (according to relevant rules of nomenclature) ** Include author and year citation? Maybe page too, if present? == Object / type / function functions == == External function lists == * [[WF:importing]] aeyw1a7cd3jo51s6jqrn2e02uf9dcrg 272409 272393 2026-05-05T07:06:04Z Arlo Barnes 1231 /* Basic list/iterable functions requiring numeric types */ Lehmer RNG 272409 wikitext text/x-wiki {{Shortcut|[[WF:SAF]]|[[WF:RF]]}} Do you have an idea for a new function? Suggest it here! It may help to refer to [[Wikifunctions:Glossary|our glossary]]. You can [https://www.wikifunctions.org/wiki/Special:CreateZObject?zid=Z8 create a function] right away if you have the user-rights. If a function requires a new type, consider [[WF:TP|proposing it]]. Note that for now '''we only support a limited number of types as input and output types''' of functions. More types are coming in the next few months. For the full list, see [[WF:Type]]. Once created, consider adding new Functions to the [[Wikifunctions:Catalogue|catalogue]]. [[Category:Maintenance]] == Requests from Abstract Wikipedia editors == {{main|abstract:Project:Suggested functions}} === Infobox === I'm thinking we can adapt [[w:module:infobox]] to create infobox HTML in abstract articles. Maybe it can even use info from Wikidata to populate it, like it already does on some wikis. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 06:34, 28 April 2026 (UTC) == Proposed functions requiring only available types == === String === ==== String character discard functions ==== ==== String character replacement functions ==== Add the word 'the' to the start of a function. e.g United Kingdom - the United Kingdom. [[User:FantasticWikiUser|FantasticWikiUser]] ([[User talk:FantasticWikiUser|talk]]) 11:27, 25 March 2026 (UTC) :Yes… simple enough to do but not entirely clear when it is required. We’ve been [https://t.me/Wikifunctions/29989 discussing it on Telegram]. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 12:10, 25 March 2026 (UTC) ::This was an issue I found on [[abstract:Q21]] when I couldn't add it there. [[User:FantasticWikiUser|FantasticWikiUser]] ([[User talk:FantasticWikiUser|talk]]) 12:16, 25 March 2026 (UTC) :I worked on {{z|Z33138}} today. I'm not sure it covers all corner cases, feel free to try it out and add more tests :) [[User:So9q|So9q]] ([[User talk:So9q|talk]]) 20:32, 5 April 2026 (UTC) ==== String search functions ==== ==== String escaping and unescaping functions ==== ==== String encoding and decoding functions ==== * Unicode normalising functions (there are several types of normalisation) * [https://html.spec.whatwg.org/#named-character-references HTML named character encode] * [[wikidata:Q47466379|Punycode encode]] - {{z+|Z10178}} (part only, not whole url); see also {{z+|Z10185}} * [[:en:Unified_English_Braille|Unified English Braille encode]] (discarding invalid characters?) *[https://braille-autoriteit.org/standaarden/achtpuntsbraille/ Dutch eight-dot Braille] encode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 21:38, 17 January 2026 (UTC) *[https://braille-autoriteit.org/standaarden/achtpuntsbraille/ Dutch eight-dot Braille] decode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 21:38, 17 January 2026 (UTC) *[https://braille-autoriteit.org/versie-2019-van-zespunts-standaard/ Dutch six-dot Braille] encode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 21:38, 17 January 2026 (UTC) *[https://braille-autoriteit.org/versie-2019-van-zespunts-standaard/ Dutch six-dot Braille] decode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 21:38, 17 January 2026 (UTC) *[[google:ipa+braille&oq=IPA+Braille&gs_lcrp=EgZjaHJvbWUqDAgAECMYJxiABBiKBTIMCAAQIxgnGIAEGIoFMg0IARAAGIYDGIAEGIoFMg0IAhAAGIYDGIAEGIoFMgoIAxAAGIAEGKIEMgoIBBAAGIAEGKIEMgYIBRBFGDwyBggGEEUYPTIGCAcQRRg90gEHMjMyajBqN6gCALACAA&sourceid=chrome&ie=UTF-8|IPA Braille]] encode (IPA --> IPA Braille) [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 11:42, 18 January 2026 (UTC) *[[google:ipa+braille&oq=IPA+Braille&gs_lcrp=EgZjaHJvbWUqDAgAECMYJxiABBiKBTIMCAAQIxgnGIAEGIoFMg0IARAAGIYDGIAEGIoFMg0IAhAAGIYDGIAEGIoFMgoIAxAAGIAEGKIEMgoIBBAAGIAEGKIEMgYIBRBFGDwyBggGEEUYPTIGCAcQRRg90gEHMjMyajBqN6gCALACAA&sourceid=chrome&ie=UTF-8|IPA Braille]] decode (IPA Braille --> IPA) [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 11:42, 18 January 2026 (UTC) ==== String presentation functions ==== * add [[:en:Quotation_mark|locale-specific quotation marks]] to string ** Shouldn't the output depend on the locale? See [[mw:Extension:Scribunto/Lua_reference_manual#mw.language:formatNum|mw.language:formatNum]]. —[[User:Dexxor|Dexxor]] ([[User talk:Dexxor|talk]]) 17:15, 4 September 2023 (UTC) ==== String colour notation functions ==== * Hue of color (since we already have [[Z13017]], [[Z18263]] and [[Z18268]]) ==== String notation validation checks ==== * check if string is an [[:en:International_Chemical_Identifier]] ** {{Partly done}} see {{z+|Z21539}}. Supports the verification of the chemical formula and the stereochemical layer. There are 13 testcaes that I've written, all of which are passed by my JavaScript implementation. Note that a python implementation is not possible as the regex module is not available in Wikifunctions. [[User:MolecularPilot|MolecularPilot]] ([[User talk:MolecularPilot|talk]]) 03:09, 11 January 2025 (UTC) ** To do: *** Needs to verify the hydrogen and connection sections of the main layer *** Support the charge layer *** Support the isotopic layer **[[User:MolecularPilot|MolecularPilot]] ([[User talk:MolecularPilot|talk]]) 03:09, 11 January 2025 (UTC) ***{{ping|MolecularPilot}} A python impl. is infact possible. I created a basic direct translation at {{z+|Z22823}}. Some tests are failing as the regex needs a bit of sorting out, out of scope for me, but you can give it a try! Keep in mind that you need to escape any \ with a \\ just before saving per [[Wikifunctions:Python_implementations#Known_limitations_as_of_October_2024]]. <span style="font-family:monospace;font-weight:bold">[[User:Bunnypranav|<span style="color:#63b3ed">~/Bunny</span><span style="color:#2c5282">pranav</span>]]:&lt;[[User talk:Bunnypranav|<span style="color:#63b3ed">ping</span>]]&gt;</span> 06:14, 26 February 2025 (UTC) * check if string is a [[:en:SMILES_arbitrary_target_specification|SMILES arbitrary target specification (SMARTS) notation]] * check if string is an [[:en:ABC_notation|ABC notation]] * check if string is a [[:en:LilyPond|LilyPond notation]] * check if string is a [[:en:UIC_classification_of_locomotive_axle_arrangements|UIC classification of locomotive axle arrangements notation]] * check if a string is a valid [[:en:Digital_object_identifier|DOI]] ** Something about implementation difficulties: https://stackoverflow.com/questions/27910/finding-a-doi-in-a-document-or-page [[User:Alexander-Mart-Earth|Alexander-Mart-Earth]] ([[User talk:Alexander-Mart-Earth|talk]]) 14:28, 21 December 2023 (UTC) ==== String validation checks ==== * check if string is a valid ISO 3166 country code * check if string is a valid [[:en:ISO_8601#EDTF|EDTF]] date/time ====String analysis functions==== ==== Monolingual text ==== ==== String Wikitext operations ==== ... === Natural number === === Integer=== === Byte === See [[Wikifunctions:Catalogue/Boolean operations#Byte functions|existing Byte functions]] in catalogue. * next byte without overflow: byte → byte * previous byte without overflow: byte → byte * next byte by Gray code: byte → byte * previous byte by Gray code: byte → byte * all bits set: byte → boolean * no bits set: byte → boolean * add bytes without overflow: byte, byte → byte * subtract bytes without overflow: byte, byte → byte * multiply bytes without overflow: byte, byte → byte * add bytes with overflow: byte, byte → byte * subtract bytes with overflow: byte, byte → byte * multiply bytes with overflow: byte, byte → byte * modulo bytes: byte, byte → byte * byte division: byte, byte → byte * right shift: byte → byte * left shift: byte → byte * right shift by n: byte, natural number → byte * left shift by n: byte, natural number → byte * right shift as ring: byte → byte * left shift as ring: byte → byte * right shift by n as ring: byte, natural number → byte * left shift by n as ring: byte, natural number → byte === Unicode code point === See [[Wikifunctions:Catalogue/Character operations#Unicode code points|existing code point functions in catalogue]]. * Codepoint to list of bytes for UTF-8 * Codepoint to list of bytes for UTF-16 * Codepoint to list of bytes for UTF-32 ===Object=== === List === ==== Basic list/iterable functions ==== ==== Complex list functions ==== ==== CSV list operations ==== === Functions with functions as arguments === * test whether certain functions have specific properties of [[:w:Homogeneous_relation|homogeneous relations]] for particular lists/sets === Gregorian calendar date === See [[Wikifunctions:Catalogue/Date operations#Gregorian calendar dates|catalogue of calendar date functions]] for existing functions. * Create a reading function for Dagbani that handles all the possible formats (both the English-linke and the traditional ones, both the Gregorian and the Hijra calendars). [https://docs.google.com/document/d/1u7-ZeY7NHt75JICUPAYky3-7KgkvauD_W3fBjmvpFO0/edit?tab=t.0#heading=h.gf6hp9o3gi0j] [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 15:43, 31 May 2025 (UTC) * same day of the year: date, date → boolean * same day of the week: date, date → boolean * within a year: date, date → boolean * within a week: date, date → boolean * within n days: date, date → boolean * months between: date, date → natural number * weeks between: date, date → natural number * n days later: date, natural number → date * n days earlier: date, natural number → date * n weeks earlier: date, natural number → date * n months later: date, natural number → date * n months earlier: date, natural number → date * n years later: date, natural number → date * n years earlier: date, natural number → date * Julian day number to date: integer → date * how many leap days passed between two dates: date, date → natural number * how many weekdays between two dates: date, date, day of the week → natural number * within JavaScript's date implementation: date → boolean * next time a day of the month is on a specific weekday: date, natural number, day of the week → date * next Friday the 13th: date → date * nth weekday of the month: date, day of the week, natural number → date * nth working days after: date, list of wikidata item references (list of holidays), wikidata item reference (place) → date === Gregorian year === See [[Wikifunctions:Catalogue/Date operations#Gregorian year|catalogue of year functions]] for existing functions. == Morphological functions == {{main|WF:HL}} == Proposed functions requiring future types == '''Note these functions cannot be implemented properly until the needed types are requested and approved.''' If one wishes to nevertheless attempt to define and implement them, * the functions and implementations should indicate prominently in their labels that their input/output types must be adjusted once support for the appropriate replacement types become available; ''and'' * the functions should ''not'' be used in the implementations of any other functions, as the later adjustment of input/output types to appropriate replacements will break those implementations. === String manipulation functions === === String analysis functions === * count distance between two letters in given alphabet (default to 26-charcater western alphabet. case insensitive. e.g. "a" & "A" ⇒ 0; "K" & "N" ⇒ 3) === String encoding and decoding functions === (would be better with types representing a stream of bytes) * [[wikidata:Q113486941|BASE45 encode]] * [[wikidata:Q113486941|BASE45 decode]] * Hexadecimal UTF-8 encode ("ABC ₤" ⇒ "41 42 43 20 E2 82 A4") * Hexadecimal UTF-8 decode ("41 42 43 20 E2 82 A4" ⇒ "ABC ₤") * Decimal UTF-8 encode ("ABC ₤" ⇒ "65 66 67 32 226 130 164") * Decimal UTF-8 decode ("65 66 67 32 226 130 164" ⇒ "ABC ₤") * Octal UTF-8 encode ("ABC ₤" ⇒ "101 102 103 40 342 202 244") * Octal UTF-8 decode ("101 102 103 40 342 202 244" ⇒ "ABC ₤") * Binary UTF-8 encode ("ABC ₤" ⇒ "01000001 01000010 01000011 00100000 11100010 10000010 10100100") * Binary UTF-8 decode ("01000001 01000010 01000011 00100000 11100010 10000010 10100100" ⇒ "ABC ₤") * Unicode code point encode ("ABC ₤" ⇒ "41 42 43 20 20A4") - {{z+|Z10785}} * Unicode code point decode ("41 42 43 20 20A4" ⇒ "ABC ₤") * Create regular expression object/string (i.e: "test" & "i" to /test/i) === Natural language functions === * Choose singular or plural based on number (e.g. singularOrPlural("person",6") -> "people") ** Note that there are also dual and other [[:w:grammatical number|grammatical number]]s in other languages. [[User:魔琴|魔琴]] ([[User talk:魔琴|talk]]) 18:54, 26 October 2023 (UTC) ** relevant interwiki link: [[d:WD:property proposal/plural forms]] [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 04:15, 9 February 2024 (UTC) **:Was rejected. **:The similar proposal {{P|13986}} was accepted, but per the comments on your proposal, just having that set (and [[Z30455|mapping it to one of our enums]]) isn't sufficient since a language might have exceptions to its conjugation rules, or handle rational/real numbers in different ways. **:Being able to make use of CLDR data might still be desirable to avoid hardcoding rules and exceptions into Functions. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 02:16, 18 December 2025 (UTC) ** This is duplicated with a suggestion above. There's some work done already: [[Z15977]]. We also have lightweight enums like {{Z|28215}} now. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 21:11, 30 November 2025 (UTC) === Cryptographic functions === (would be better with types representing a stream of bytes) * {{todo}} [[wikidata:Q47477417|MD2]] - {{z+|Z10135}} * {{todo}} [[wikidata:Q47462255|MD4]] - {{z+|Z10136}} * {{todo}} [[wikidata:Q27036232|MD5]] - {{z+|Z10137}} * {{todo}} [[wikidata:Q47208127|RIPEMD-128]] - {{z+|Z10138}} * {{todo}} [[wikidata:Q47208127|RIPEMD-160]] - {{z+|Z10139}} * {{todo}} [[wikidata:Q47463469|BLAKE2b-160]] - {{z+|Z10140}} * {{todo}} [[wikidata:Q47463469|BLAKE2b-256]] - {{z+|Z10141}} * {{todo}} [[wikidata:Q47463469|BLAKE2b-384]] - {{z+|Z10142}} * {{todo}} [[wikidata:Q47463469|BLAKE2b-512]] - {{z+|Z10143}} * {{todo}} [[wikidata:Q47463469|BLAKE2s-128]] - {{z+|Z10144}} * {{todo}} [[wikidata:Q47463469|BLAKE2s-160]] - {{z+|Z10145}} * {{todo}} [[wikidata:Q47463469|BLAKE2s-224]] - {{z+|Z10146}} * {{todo}} [[wikidata:Q47463469|BLAKE2s-256]] - {{z+|Z10147}} * {{todo}} [[wikidata:Q47465971|SHA-224]] - {{z+|Z10149}} * {{todo}} [[wikidata:Q47465971|HMAC-SHA-256]] * {{todo}} [[wikidata:Q87486893|SHAKE-128]] - {{z+|Z10150}} * {{todo}} [[wikidata:Q87486893|SHAKE-256]] - {{z+|Z10151}} * {{todo}} [[wikidata:Q56099240|ChaCha20]] - {{z+|Z25376}} * {{todo}} [[wikidata:Q56099436|X25519]] - {{z+|Z25393}} * {{todo}} [[wikidata:Q1190947|Keccak-f[1600]]] - {{z+|Z25399}} === Date, time, and calendric functions === See also: * Discussion of types at [[WF:type#Calendar types]] * {{q|139667974}} Lua module ==== Earth focus ==== [[file:Axial and apsidal precession.png|thumb|alt=diagram|orbit of Earth]] ===== Bengali calendar ===== {{z+|Z12926}} ===== Chinese calendar ===== ===== French Republican Calendar ===== decimalises and secularises the Gregorian * day names: {{z+|Z13006}}{{not done}} '''yet''' ===== Gregorian ===== widely used calendar derived from the Julian, basis for [[xkcd:1179|ISO 8601]] * date to ISO week number {{q|2110154}} * string to date * date to ISO 8601 string *: {{done}}, see {{z+|Z21842}}. --[[User:Sbb1413|Sbb1413]] ([[User talk:Sbb1413|talk]]) 18:47, 21 January 2025 (UTC) * date to year (yyyy) * date to month of the year (1-12) * date to month name (January-December) * date to day of the month (1-31) * date to hour of the day (0-23) * date to minutes (0-59) * date to seconds (0-59) Named Day from Date or day of year ; Input type : Date ; Output Type : String. ; The initial use case was automated population of On The Day, based on various collections of Holidays, festival days and observances. ? [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:35, 26 March 2025 (UTC) : So If you gave it 2025-05-01 It said "All Fools Day" etc.. Possibly an additional input of enumrated type to indicate which data set to pull holidays, fesitvals and observances from. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:35, 26 March 2025 (UTC) Diary/calander Header function - Using the above and other date functions, generates a data set from a given date. Hence if you give it 2003-05-01 you get back a JOSN set contianing the {Day of week:String, Day in the Month, Observances} etc. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:35, 26 March 2025 (UTC) ===== Holocene calendar ===== * [[w:en:Holocene calendar#Conversion]] *: {{done}}, see {{z+|Z21913}}. --[[User:Sbb1413|Sbb1413]] ([[User talk:Sbb1413|talk]]) 13:30, 25 January 2025 (UTC) ===== Indian national calendar ===== ===== Islamic ===== a Lunar calendar, also called Hijri ===== Julian ===== mostly used by astronomers, some historians, and some Orthodox Christian denominations ===== Mesoamerican calendars ===== including civil and clerical forms ===== Persian ===== also called Jalali ===== Thai calendar ===== ===== Hebrew calendar ===== ==== Mars focus ==== [[file:Lowell - Mars (1894) - Diagram of the Orbits of Mars and the Earth.jpg|thumb|alt=diagram|orbit of Mars]] ===== Asgardian calendar ===== Proposed time-keeping system for Mars; base on the [https://asgardia.space/en/calendar online converter]; see [[w:Asgardia|Asgardia]] for context ===== Darian calendar ===== Proposed time-keeping system for Mars, requires Julian Date/Time to calculate and a month enumeration: [[WF:type proposals#Something to think about]] ===== Lukashian calendars ===== Proposed simple perpetual calendar system designed to be extensible to other reference frames (for example a Mars-centric one). Eschews leap-units. * [https://lukashian.org/download Java] reference implementation * [https://github.com/The-Lukashian-Calendar/lukashian GitHub] === Basic numerical functions === * round up ("1.289" & "2" ⇒ "1.29"; "5678" & "2" ⇒ "5700") *: So if the number is floating point, round to n decimal places, and if not, round to n significant figures. Is that right? [[User:BrightSunMan|BrightSunMan]] ([[User talk:BrightSunMan|talk]]) 19:36, 24 December 2023 (UTC) *: {{done}} {{Z|20053}}/{{Z|21043}} and {{Z|27705}}/{{Z|21047}} * round down ** {{done}} {{Z|20032}}/{{Z|20841}} * return integer value (5678.678 ⇒ 5678) ** {{done}} {{Z|19841}}/{{Z|26315}} * {{z+|Z13587}} (23 ⇒ "twenty-three") * Convert money from US$ to anything else ** requires source of conversion rates, which is a hole in function-likeness * Arabic numeral to Etruscan numeral * Etruscan numeral to Arabic numeral === Data serialization functions === * parse a string as [[:en:JSON|JSON]] * extract string from JSON object based on [[:d:Q121208951|JSONPath]] (<code>{"name":"Alice"}</code>, "$.name" ⇒ "Alice") *:Why not first convert a JSON string to an object, and then have a function that extracts fields based on JSONPath? Doing Stringly-typed things like this proposal as defined isn't a good idea. [[User:0xDeadbeef|0xDeadbeef]] ([[User talk:0xDeadbeef|talk]]) 16:16, 5 August 2023 (UTC) *::This seems to be a good idea, thanks! I moved and splitted the proposal accordingly. --[[User:1-Byte|1-Byte]] ([[User talk:1-Byte|talk]]) 09:51, 6 August 2023 (UTC) *:: is it okay to go ahead to create this 'extract string from JSON object based on JSONPath' as a function ? [[User:Dolphyb|Dolphyb]] ([[User talk:Dolphyb|talk]]) 16:14, 15 February 2024 (UTC) === Basic list/iterable functions requiring numeric types === * [[w:en:Lehmer random number generator#Sample C99 code]] * Sum the elements of a numeric list - {{z+|Z14038}} * Product of the elements of a numeric list ** {{done}} {{Z|23909}}/{{Z|13558}} * {{z+|Z12676}} * Slice of list elements: for the supplied list, return a list of elements that are at indexes between a supplied range n:m ** Zero indexing is used (first element is index 0)? ** n and m are are included in the range? ** What happens if n and/or m are invalid indexes? ** {{done}} {{Z+|Z26556}} * Remove slice of elements from list: return the supplied list with elements between a supplied range of indexes removed ** Zero indexing is used (first element is index 0)? ** n and m are are included in the range? ** What happens if n and/or m are invalid indexes? * Every nth element of list: returns every nth element of the supplied list ** {{done}} {{Z+|Z28735}} * Remove every nth element of list: removes every nth element of the supplied list - * sample n objects from list (return up to n [[Wikifunctions:Determinism|random]] objects from the list) * Jaccard similarity coefficient (see https://en.wikipedia.org/wiki/Jaccard_index) * Weighted average. Supply a list of values, and a second list of the same length of their weights. Returns a weighted average ** Example Input: <code>values = [10, 20, 30]</code>, <code>weights = [1, 2, 3]</code> ** Output: <code>23.33</code> ** {{done}} {{Z+|Z28066}} === Geodetics functions === [[w:en:planetary coordinate system]], [[w:en:well-known text representation of coordinate reference systems]] ==== Earth ==== * convert coordinates outside of the ranges (-180, 180) for longitude and (-90, 90) for latitude to a canonical form * [https://plus.codes Plus Codes] to/from geocoordinates ** functions should match the semantics of the [https://github.com/google/open-location-code/blob/main/Documentation/Specification/specification.md#api-requirements expected API]: <code>is valid Plus Code?</code>, <code>is shortened Plus Code?</code>, <code>is full Plus Code?</code>, {{z+|Z25963}}, <code>co-ordinates from Plus Code</code> ([https://github.com/google/open-location-code/blob/main/Documentation/Specification/specification.md#decoding SW corner]), <code>shorten Plus Code</code>, <code>recover nearest Plus Code</code> ** implementations for JS and Python are provided, Apache 2.0 licenced, not sure how self-contained they are ** most of the functions could also be implemented by composition ** sample data is provided for testing (it's ~500 cases for each of encode/decode and ~50 cases for each of the others, but they're grouped nicely so maybe take 1 from each) ==== Mars ==== [[w:en:areography#Cartography and geodesy]] * convert coordinates outside of the ranges [0, 360) for longitude and (-90, 90) for latitude to a canonical form ==== Moon ==== [[w:en:selenography#Lunar cartography and toponymy]] === Unit conversion functions === * {{z+|Z15560}} ::The function has two implementations now. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 20:32, 20 February 2026 (UTC) === Conversion function : 2D Cartesian to 2D Polar === Input : matrix [x,y] Output: matrix [θ,r] Short text : Polar conversion of x,y to a polar space centred at 0,0 in the Cartesian. Constraints: x,y,r are reals (float64), θ lies in the range -π<0<π (Sign determined in relation to standards used in STEM applications. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 14:30, 26 March 2025 (UTC) :The companion could also be provided. As I never did Geodetic functions, I am not sure how Lat, Long to map projection would work , but useful. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 14:30, 26 March 2025 (UTC) :See also [[WF:Type proposals/complex128]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 10:17, 1 December 2025 (UTC) === Trigonometric functions === * {{Z|Z16463}}, {{Z|Z12473}}, *: Input : float64 Angle in radians. *: Output : float64 desired trignometric value [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:40, 26 March 2025 (UTC) * {{Z|Z29125}} *:Inputs: 2D Point (float64s, Reals, or perhaps [[WF:Type_proposals/complex128|a single complex number]]), angle (float64 or Real) *:Output: 2D Point (matching the input type) *:Not necessarily one single function; one can be created for each input type [[User:WrenFalcon|WrenFalcon]] ([[User talk:WrenFalcon|talk]]) 22:05, 31 July 2025 (UTC) ==== Function proposal : Decimalise angle of the form ('1:x' or '1 in x') to % (in 100) or ‰ (in 1000) ==== *Suggested name: gardient_decimal. *Input type: Integer ( The 1 is implied.). Lower Bound +1: Upper Bound: 1000 (for most practical situations?) *Output type: Real/float 64. Proposer: [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:05, 28 March 2025 (UTC) ===Color Functions=== ==== Colorspace Conversion ==== x,y,Y to sRGB (Illuminant D65). Input : 3tuple of float64, Output: 3 tuple of integer, where 0>=r<=255, 0>=g<=255 0>=b<=255. Convert a color specfied as 3 float64 values, from x,y,Y colorspace to sRGB or raise an "Out of Gaumt" exception. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:09, 7 April 2025 (UTC) ==== Spectral Approximate from sRGB or XYZ values. ==== I'd like to see the techniques detailed here: http://scottburns.us/reflectance-curves-from-srgb/ implemented in Wikifunctions as the provided spreadhseet later in the paper doesn't appear to work with Libre Office. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:32, 2 June 2025 (UTC) ==== Subtractive color mix (Pigment style) ==== Implement the mixing function from Spectral.js (https://github.com/rvanwijnen/spectral.js/blob/3.0.0/spectral.js )(MIT license), to allow 2 or more sRGB triplets to be mixed like pigment colors. This is different from the subtract colors function implemented previously. === Music Functions === It would be nice to have '''12 equal temperament pitch class''' and '''12 equal temperament pitch''' types, as they would be useful for calculating harmonies and melodies. The pitch classes could be stored as natural numbers from 0 to 11, and represented with symbols C, C♯, D, ..., B. The pitches could be stored as integers with -1 being B3, 0 being C4, 1 being C♯4, etc. Over time, we could expand the pitch class and pitch types to other temperaments and just intonation. As I'm new to Wikifunctions and my coding skills are next to zero, this is just a suggestion to the community. (edited) [[User:CaffeineP|CaffeineP]] ([[User talk:CaffeineP|talk]]) 14:48, 9 April 2025 (UTC) :Yes… There are some notational challenges because of enharmonics as well as naming conventions varying by language/culture, so English A♯ is equivalent to German B and English B♭, for example. Ideally, I would want the (English) pitch class that is five semitones higher than G♭ to be displayed as C♭ rather than B. :Also, given some reference pitch like A4 = 440 Hz, we should be able to return the frequency in hertz of a given pitch and, conversely, the nearest pitch for a given frequency and its offset in cents (or whatever). The computation is a lot simpler than representing the result (or capturing how the result should be represented)! [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 20:08, 9 April 2025 (UTC) :If you use the cardinal values for the pitches from the MIDI standard (or an extension to such, since they're limited to 0..<128) then you could make some of these functions already, no [[WF:Type_proposals|type proposal]] needed. Granted a lot of them would just be addition/subtraction. And if you semi-arbitrarily map A = 0, A# = 1, etc. then you could do all of them. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 10:33, 1 December 2025 (UTC) * '''12-ET Pitch Class of a Pitch''': Return the 12 equal temperament pitch class of a given 12 equal temperament pitch. For example, C4 returns C. * '''12-ET Pitch based on Pitch Class''': Return a 12 equal temperament pitch based on a given 12 equal temperament pitch class and a given integer. For example, C and 4 return C4. * '''Interval between 12-ET Pitch Classes in Semitones''': Get the interval in semitones between two 12 equal temperament pitch classes, always assuming that the first is lower than (or the same as) the second, and the interval is less than an octave. For example, C and B return 11, while B and C return 1. * '''Interval between 12-ET Pitches in Semitones''': Get the interval in semitones between two 12 equal temperament pitches. For example, C4 and B3 return -1, while C3 and B4 return 23. ** {{Z+|Z25219}} * '''Raise 12-ET Pitch Class by Semitones''': Get a new 12 equal temperament pitch class through raising a given pitch class by the provided number of semitones. For example, raising B by 1 semitone returns C. ** {{Z+|Z25407}} * '''Lower 12-ET Pitch Class by Semitones''': Same as above, but lower the pitch class instead of raising it. ** {{Z+|Z25407}} * '''Raise 12-ET Pitch by Semitones''': Get a new 12 equal temperament pitch through raising a given pitch by the provided number of semitones. For example, raising B3 by 1 semitone returns C4. * '''Lower 12-ET Pitch by Semitones''': Same as above, but lower the pitch instead of raising it. * '''Frequency of a 12-ET Pitch''': Return a float64 frequency in Hz based on the provided 12 equal temperament pitch (and possibly a reference pitch with its frequency; if not provided, take default A4 = 440 Hz). ** {{Z+|Z25217}} * '''Approximate 12-ET Pitch Class based on Frequency''': Return a 12 equal temperament pitch class approximately based on the provided frequency in Hz. * '''Approximate 12-ET Pitch based on Frequency''': Return a 12 equal temperament pitch approximately based on the provided frequency in Hz. === SVG Functions === I would be nice to generate SVG (a XML-based vector image format which is basically a long string), it could allow to replace a lot of images on Commons or templates/tools. Here some examples: * create simple forms, * create graphs (line graph/bar graph for population or for production, elections diagrams like [[:File:1900Hawaii.svg]], etc.), * create more complex visualisation like genealogical trees, * create coat of arms (?), * etc. Cheers, [[User:VIGNERON|VIGNERON]] ([[User talk:VIGNERON|talk]]) 10:47, 23 April 2025 (UTC) :@[[User:VIGNERON|VIGNERON]]: Eventually that is something we might support, but there'll be nothing any time soon. It has a number of complex security and scalability concerns, sadly. [[User:Jdforrester (WMF)|Jdforrester (WMF)]] ([[User talk:Jdforrester (WMF)|talk]]) 13:21, 23 April 2025 (UTC) ::{{ping|Jdforrester (WMF)}} thanks. I talked about it for the last Corner but I wanted to leave a record here, if we have time, maybe I'll use that time to write some things to prepare (like listing templates and tools on the Wikimedia projects that generate SVG or visualisations). Cheers, [[User:VIGNERON|VIGNERON]] ([[User talk:VIGNERON|talk]]) 15:28, 23 April 2025 (UTC) :::Of course! I've explicitly added a section on this here: [[Wikifunctions:Embedded function calls#Non-text output]] — hope that helps assure you that we're thinking about it. [[User:Jdforrester (WMF)|Jdforrester (WMF)]] ([[User talk:Jdforrester (WMF)|talk]]) 21:40, 23 April 2025 (UTC) :An intermediate step could be replicating some of the [https://w3.org/TR/SVG11/filters.html functions] contained within {{Q|1518348}} [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 06:22, 5 May 2026 (UTC) === Biology === ==== Taxon functions ==== A taxon type could be useful, as could a taxon rank enum ({{Q|P31}} {{Q|Q427626}}). --[[User:WrenFalcon|WrenFalcon]] ([[User talk:WrenFalcon|talk]]) 16:49, 22 September 2025 (UTC) * Wikidata item representing taxon rank ({{Q|P31}} {{Q|Q427626}}) is at genus level or below ** Should(?) be possible with the current Wikidata functionality, from what I understand. See [[:Wikifunctions:Project chat#Taxon rank function(s)]] for a more detailed explanation. --[[User:WrenFalcon|WrenFalcon]] ([[User talk:WrenFalcon|talk]]) 23:27, 16 May 2025 (UTC) * compare taxon ranks ** Cases: a < b, a == b, a > b, undetermined/incomparable (if a or b are clades, this should be returned/used) * get taxon code of nomenclature ({{Q|P944}}) * is parent taxon of / is child taxon of ** <code>is parent taxon of(Taxon a, Taxon b) => b.parent == a OR is parent taxon of(a, b.parent)</code> * format taxon name (according to relevant rules of nomenclature) ** Include author and year citation? Maybe page too, if present? == Object / type / function functions == == External function lists == * [[WF:importing]] 0ka1y4r4fxevmzuqvvdwwodspth498n Wikifunctions:Project chat 4 1184 272373 272125 2026-05-05T03:08:05Z SpBot 978 archive 2 sections: 2 to [[Wikifunctions:Project chat/Archive/2026/04]] (after section [[Wikifunctions:Project chat/Archive/2026/04#Wikifunctions_&_Abstract_Wikipedia_Newsletter_#243_is_out:_Community_proposals_for_capturing_meaning|Wikifunctions_&_Abstract_Wikipedia_Newsletter_#243_is_out:_Community_proposals_for_capturing_meaning]]) - previous edit: [[:User:沈澄心|沈澄心]], 2026-05-04 05:16 272373 wikitext text/x-wiki {{shortcut|[[WF:CHAT]]|[[WF:PC]]|[[WF:VP]]}} __NEWSECTIONLINK__ [[Category:Help]] <!-- please do not remove this line --> Welcome to the Project chat, a place to discuss any and all aspects of Wikifunctions: the project itself, policy and proposals, individual data items, technical issues, etc. Other places to find help: * [[Wikifunctions:Administrators' noticeboard]] * [[Wikifunctions:Report a technical problem]] * [[Wikifunctions:FAQ]] {{Autoarchive resolved section |age = 1 |archive = ((FULLPAGENAME))/Archive/((year))/((month:##)) |timeout=30 }} {{Archives|{{#tag:div|<br />{{Flatlist|{{Special:PrefixIndex/WF:Project chat/Archive/|stripprefix=1|hideredirects=1}} |class=mw-collapsible-content|style=font-size:92%;}}|class="mw-collapsible mw-collapsible-toggle mw-collapsed"}} |prefix=WF:Project chat/Archive/ }} == "language" argument for certain functions == Hello. I am relatively new to Wikifunctions. Recently, I tried to create functions for Chinese translation of {{Z|Z26570}} and {{Z|Z26095}} (which became [[Z32788]] and [[Z32900]]). During the creation of these functions, I was trying to take {{Z|Z32212}} as reference. And I realized that the defining role sentence function is taking <code>language</code> as an argument (and the test case of the Chinese-language function already contains two varieties of Chinese). This makes it possible to output monolingual text in <code>zh-hant</code>, <code>zh-hans</code>, <code>zh-tw</code>, or any varieties of the language. I think for this reason, it is better to have <code>language</code> as arguments for the implementation of Z26570 and Z26095, and potentially more functions that require {{Z|Z14294}}, since it would output the varieties code instead of just saying <code>zh</code> for <code>zh-hant</code>, <code>zh-hans</code>, <code>zh-tw</code> in the output of type {{Z|Z11}}. I am not sure how the fallback mechanism works if one of the language (varieties) do not have a labels/lexemes, but to me, it is reasonable to have a <code>language</code> argument. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 09:38, 31 March 2026 (UTC) :The functions you mention do have a language argument. For Wikifunctions, the {{Z|Z60}} can be at a higher or lower level; whether a {{Z|Z11}} is for a language or a variant is determined by the function that constructs it. Please see {{Z|Z26565}} for an example and feel free to add test cases in Chinese. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 17:54, 11 April 2026 (UTC) ::Hello @[[User:GrounderUK|GrounderUK]], thanks for the answer. I understand that whether {{Z|Z11}} is for a language or a variant depends on the function. But that is exactly what I am asking for. It is true that [[Z26570]] and [[Z26095]] takes [[Z60]] as argument, but the language-specific functions in {{Z|Z29843}} and {{Z|Z26096}} don't. ::Let me give you an example: INPUT to [[Z26570]]: <code>entity</code>: Tokyo, <code>class</code>: city, <code>location</code>: Japan, <code>language</code>: zh-cn, the config would select [[Z33030]] (created after my previous comment by elseone) as the implementation, and it would RETURN 东京是日本的一个城市。(zh-hans), which is not zh-cn as requested in the INPUT. It would also be using the term not for the variant (when it is different) because it is hardcoded to use the term in zh-hans. However, if we have the implementation like [[Z32790]] (which was created by me but a natural language argument was added by elseone) or [[Z32213]] (that works in the defining role sentence function because of the extra argument), it could cater for different variant. ::If we don't have the language argument in the language-specific function, the desire for article creation on Abstract Wikipedia would be to create a function for every variant. Is it then better to create functions for every variant? [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 18:18, 11 April 2026 (UTC) :::I forgot to mention that there are some hardcoding in {{Z|Z32790}} as well, but I cannot fix it because it is a connected function and I am not a functioneer. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 18:31, 11 April 2026 (UTC) ::::Okay, I think it’s safe to disconnect this one as the function is not yet configured for use on Abstract Wikipedia. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 19:04, 11 April 2026 (UTC) :::Ah, sorry… I misunderstood you. I agree that the called function should be able to accept the original language argument. That is simpler in theory than in practice, because the configured functions all have to have the same argument types, as I understand it. I’m not sure which the best approach is, really, but we probably want to avoid two levels of configuration. That suggests that all language-specific functions would need to accept the additional argument, which is unrewarding work for someone. @[[User:99of9|99of9]], @[[User:Jdforrester (WMF)|Jdforrester (WMF)]], @[[User:DVrandecic (WMF)|DVrandecic (WMF)]] Any thoughts? [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 18:57, 11 April 2026 (UTC) ::::I mean, we would need to modify all the functions in each language, which could take some time. But we are still in an early stage. If we don't fix it now and we want to fix it later, it would be a disaster. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 19:25, 11 April 2026 (UTC) :::::Agreed. And we probably want them converted to HTML too, with separate language spans for text in different languages. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 19:35, 11 April 2026 (UTC) ::::@[[User:GrounderUK|GrounderUK]]: This sounds like a reasonable change to make. Note that (given these Functions are primarily for use on Abstract Wikipedia), altering/replacing them to return Z89/HTML fragments is already a desired but breaking change, so making a second breaking change at the same time is probably easiest for fixing things swiftly. That said, that's of course a decision for the Abstract Wikipedia and Wikifunctions communities, not me! [[User:Jdforrester (WMF)|Jdforrester (WMF)]] ([[User talk:Jdforrester (WMF)|talk]]) 19:43, 12 April 2026 (UTC) ::::@[[User:GrounderUK|GrounderUK]]@[[User:Sun8908|Sun8908]] to make it a non-breaking change, I've created {{Z|Z34039}} which allows a composition {{Z|Z34043}}. This way you can make functions which either need the specified variant or don't! --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 05:52, 24 April 2026 (UTC) :I have now created {{Z|Z33465}}, which is an implementation of [[Z26570]]. Maybe we can migrate to use that function when more (language-specific) functions for it are ready? [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 18:19, 14 April 2026 (UTC) == Help me understand why test passes but running function with same input errors == I've been working on a function that I thought I had working correctly: {{Z+|Z31108}}. It has a test which is passing, but when I enter the same Wikidata item as the test uses (or any other relevant item that it ought to work for), it errors. I can't figure out what's wrong (and the function itself seemed to be working as expected the last time worked on it, a month ago), and I don't know how to interpret the error info. The error output is: <code> Error type: Unspecified error Error data: error information: "cannot read property 'Z6003K4' of undefined" Execution debug logs: Z12696K2 (find this) ==> ZObject<Z1K1:{'Z1K1': 'Z9', 'Z9K1': 'Z6007'},Z6007K1:ZObject<Z1K1:{'Z1K1': 'Z9', 'Z9K1': 'Z6092'},Z6092K1:P3831>,Z6007K2:ZObject<Z1K1:{'Z1K1': 'Z9', 'Z9K1': 'Z6091'},Z6091K1:Q7380503>,Z6007K3:ZReference<Z6021>> </code> -- [[User:Ragesoss|Ragesoss]] ([[User talk:Ragesoss|talk]]) 18:02, 10 April 2026 (UTC) :Hmm… I’ve had a quick look and found a comparable error with {{Z|Z29937}}, which was passing “4 months ago”. The debug comes from {{Z|Z12863}}, after it fails to find a match. This is probably because Z6007K3 is ZReference("Z6021") rather than a Z6020 object, as it appears in the debug logs for your test “28 days ago”: :"Z6007K3":{"Z1K1":{"Z1K1":"Z9","Z9K1":"Z6020"},"Z6020K1":{"Z9K1":"Z6021"}} :This means it’s probably a bug introduced by a recent software change. I’ll take a closer look over the weekend, but the actual error for your test case now is: :Unspecified error (error information: "cannot read property 'Z6003K4' of undefined") :I’m guessing that’s from there being no guard against an empty array in {{Z|Z23681}}, but we’ll see. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 23:22, 10 April 2026 (UTC) :I tracked down the bug to [[Z29869]] and fixed that, but the tests for [[Z31659]] are still failing. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 05:44, 11 April 2026 (UTC) ::Thanks. I’ve re-implemented {{Z|Z23680}} with {{Z|Z33331}} so we at least get a meaningful error in {{Z|Z31108}}. The new implementation explicitly caters for the alternative representation of {{Z|Z6040}} and errors on the empty list it gets from {{Z|Z31659}}. ::I also made a [[Z33332|simple Python implementation]], which seems to work. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 16:29, 11 April 2026 (UTC) == No place to ask to activate a function? == I just discovered the {{Z|Z11390}} function and decided to make an overarching language-selecting function for it. After some fiddling around and studying how {{Z|Z32321}} and its set works, I now have {{Z|Z33439}} which has a config object ({{Z|Z33441}}) that selects between the two preexisting language-specific versions I found (English and Malayalam) and the new one I created for my other native language, {{Z|Z33440}}. Except I can't get these to work, because, from what I understand, only [[Wikifunctions:Functioneers|functioneers]] can activate newly created functions and implementations? So where do I apply for the {{Z|Z33439}} and {{Z|Z33440}} functions to be activated? Perhaps we should have a place to ask for it, a la [[w:WP:NPP]] — call it [[Project:New Functions Patrol|New Functions Patrol]] if you will. —[[User:UndueMarmot|<span style="color:#705ccb;">Undue</span><span style="color:#cfdfa3;background-color:#705ccb;">Marmot</span>]] ([[User talk:UndueMarmot|talk]]) 08:58, 14 April 2026 (UTC) :There's [[Wikifunctions:Community portal]] for this. By the way, {{Z|Z33445}} doesn't work because all the code must be inside the main function in Python code. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 09:19, 14 April 2026 (UTC) ::Huh. How could I have missed that? ::But anyway, I've moved the code in {{Z|Z33445}} into inside the main function block. ::Is there any reason why WF decided not to simply allow anyone to write functions? After all, that's how it works with wikitext templates, and these functions are fundamentally serving the same purposes as templates, just written in a different way. —[[User:UndueMarmot|<span style="color:#705ccb;">Undue</span><span style="color:#cfdfa3;background-color:#705ccb;">Marmot</span>]] <small>([[User talk:UndueMarmot|talk]])</small> 11:25, 14 April 2026 (UTC) :::I've fixed a couple of technical issues, but tests still fail. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 11:28, 14 April 2026 (UTC) ::::The tests pass now after some more changes to the code: [[Special:Diff/265232/cur]]. —[[User:UndueMarmot|<span style="color:#705ccb;">Undue</span><span style="color:#cfdfa3;background-color:#705ccb;">Marmot</span>]] <small>([[User talk:UndueMarmot|talk]])</small> 12:01, 14 April 2026 (UTC) :::::{{D|Connected}} [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 12:02, 14 April 2026 (UTC) :::I think it's a security issue, since Wikifunctions implementations could teoretically be malicious. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 11:29, 14 April 2026 (UTC) ::::This ^^^. We're very lenient, though, once you've created a few working functions you can apply for the right, per [[WF:Functioneer]]. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 12:26, 14 April 2026 (UTC) ::::That explanation [[phab:T343559#11421293|doesn't add up]]. A reason to limit ''connection powers'' to Functioneers might be to prevent vandalism, considering Functions can be used across wikis. But user-provided code is already being executed even without a Functioneer connecting it. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 20:01, 16 April 2026 (UTC) == Actual difference between {{Z|Z26039}} and {{Z|Z26095}} == What is the actual difference between these two functions? I ask, since it seems to me that the current distinction is more or less that the first one doesn't use an indefinite article in English, while the second does. Which is not a good distinction in a project that should be language neutral. This doubt emerged from my use of the first one in [[abstract:Q124441]], which @[[User:Hogü-456|Hogü-456]] made me notice that is probably wrong. My question is: why is it wrong? How could we clarify the difference? [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 19:46, 19 April 2026 (UTC) :I think the difference is if there is an indefinite article like a or an before the subject or not. In German there can be cases where a definite article is necessary before the subject. I looked at the functions and before the object both times an article is mentioned. As it depends on the language and the word what is the correct function to use I hope it will be clarified and it is an example of the necessity to have a human with understanding in a specific language check it. I hope there will be longer functions what generate more content about a specific kind of item. Then it is necessary to write one such function per language and it can be then applied to several items. It still requires checks and so maybe it is better to write down what item category needs what kind of introduction sentence function for what language. [[User:Hogü-456|Hogü-456]] ([[User talk:Hogü-456|talk]]) 20:05, 19 April 2026 (UTC) ::The point of these two functions (and of the entire Abstract Wikipedia project) is that they should be defined in a purely language-independent way, so that the translation to actual language can be done automatically. This is the reason why these functions have been renamed; I think that this attempt was not succesful, since meaning is still unclear. My proposal to clarify them would be to invoke the concept of [[w:specificity (linguistics)|specificity]]: {{Z|Z26039}} should be named "specific subject is instance of (string)", and should be used only when the QID of the subject uniquely identifies a single thing; {{Z|Z26095}} should instead be renamed in "non-specific subject is kind of (Monolingual text)", and should be used when the QID refers to a multitude of real life items, and we are specifying the class that all these item belong to. This clarification would not still be enough, since it doesn't explain how mass nouns are handled (is water a unique thing? Does {{Q|Q7802}} refer to a single piece of bread or to the entirety of bread, like water?). This problem is very tricky, since mass noun are language-specific and blurry the line between these two functions. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 20:58, 19 April 2026 (UTC) :Simply put, one corresponds to P31 and the other to P279. Paris is an {{Q|P31}} a {{Q|Q1549591}} :whereas a {{Q|Q1549591}} is a {{Q|P279}} (alias “kind of”) {{Q|Q515}}. Whether the Wikidata knowledge representation will be sufficient to resolve into fluent natural language representations in all languages is, of course, a crucial question. Where it is not, the Abstract Wikipedia knowledge representation will need to supplement the Wikidata content with additional details about the relation between the participants or the participants themselves, and these details should be language-neutral, to the extent that this is practicable. The item {{Q|Q124441}} has no [[:d:Q124441#P31|P31]] statements; it has only [[:d:Q124441#P279|P279]]s, including one relating it to {{Q|Q212920}}, which suggests {{Z|Z26095}} is the appropriate choice here even if the rendering in some languages is the same. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 22:52, 19 April 2026 (UTC) ::Thanks for explaining it. I think that I'll change the implementation of {{Z|Z26095}}, so that in Italian it produces more or less the same output of {{Z|Z26039}} (both with the definite article). [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 11:24, 20 April 2026 (UTC) == Equivalent of Z6830 for lexemes == Is there an equivalent of {{Z|Z6830}} that enables retrieving all lexemes pointing to a particular lexeme using a specific property? [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 21:06, 20 April 2026 (UTC) :There's {{Z|6831}} but I think that's slightly different again to what you're after. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 12:31, 21 April 2026 (UTC) ::Thanks for sharing that one, I did not know it existed. But you are right, it’s not quite what I am looking for. I want a function that would take a Wikidata property reference (like P5191, which is ‘derived from lexeme’) and a Wikidata lexeme reference, and return a list of lexemes that reference that lexeme using that property. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 13:23, 21 April 2026 (UTC) == Storing huge datasets == It is not a necessity I suppose, but an idea came to me earlier to write a function that would give the corresponding [[en:Shavian alphabet|Shavian alphabet representation]] of an English word written with the Latin alphabet, or perhaps apply that operation to an entire sentence. However, just trying to guess as to what the IPA pronunciation of each word passed into it could be is is both not ideal (pronunciations obviously can and will vary widely between accents) and infeasible <s>(Wikidata lexemes don't really seem to account for pronunciation)</s>. It happens, though, that a comprehensive Shavian dictionary exists named the [https://readlex.pythonanywhere.com/ ''Read Lexicon''], which uses pronunciation and spelling similar to that used by the creator of the alphabet himself. This would be a good dataset to use in performing this translation in the function, but it appears that, all in all, the total size of the dictionary is [https://github.com/Shavian-info/readlex/blob/main/readlex.json ''nearly 26MB''] when formatted as JSON, which would certainly be larger when converted into a typed list. I am wondering if this will ever be feasible or admissible, or if there is really a way around this if importing such a large set of data is deemed impractical. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 22:30, 20 April 2026 (UTC) :{{re|Theki}} "Wikidata lexemes don't really seem to account for pronunciation"" is patently untrue; not only does every Bokmål lexeme form have IPA attached to it (thanks to Jon Harald Søby), but there are lots of languages--including English--that have pronunciation information, whether through IPA or otherwise, indicated on their forms. The big issue of course is that adding this data is not always possible to perform efficiently--for instance, I'd love to have Yiddish pronunciation respellings from Paul Abelson's dictionary on as many English forms as possible, but this dictionary not being previously processed makes this difficult. The data set you have brought up, if a suitable reading of [[:m:Wikilegal/Lexicographical_Data]] allows it, could be added as {{P|7243}} statements on various English forms. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 23:20, 20 April 2026 (UTC) ::Well, sorry... I haven't witnessed these pronunciation statements before, I wasn't aware of their existence until you pointed it out. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 15:02, 21 April 2026 (UTC) :I got 1,900,000 characters into [[Z33875]] before the UI gave up on me. I'm not sure what the limit is. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 15:21, 21 April 2026 (UTC) == Could not serialize input JS object: Number <small><small>[insert tested number here]</small></small> == I'm not one to throw my problems at others, but I have no idea how to fix this. Am implementing {{Z|Z24602}} in JavaScript, which requires returning a typed map. It now works for every type of value except numbers. Tried explicitly converting the numbers to float64, but either way it throws the error above. Would appreciate it if anyone could diagnose or fix the problem, as my knowledge of Wikifunctions is amateur at best. Thank you. [[User:Some helpful person|Some helpful person]] ([[User talk:Some helpful person|talk]]) 00:32, 23 April 2026 (UTC) :The quick answer is that like some list-related functions, code implementations returning typed maps are not possible unless the type of the objects in the map is specified in the function signature (e.g. if it was a map from Strings to Natural numbers only). So unfortunately, I think you've chosen a function that is not really possible at the moment. There are a few ideas of how we might address this, but for the moment, work on something else. Sorry! --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 13:21, 23 April 2026 (UTC) :Maybe explicitly using [[Z13518|natural numbers]] would work? I would try using <code>{ "Z1K1": "Z13518", "Z13518K1": "[number]" }</code> to represent numbers, perhaps, and seeing if that works. Of course, you would also probably have to adapt this for other types that cannot be serialized, and I'm not sure how easy that would be to generalize (assuming [[w:Don't repeat yourself|DRYness]] is desired). &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 14:39, 23 April 2026 (UTC) == Help with creating a function for Abstract Wikipedia == Hello! I was inspired by {{Z|Z26570}} to create {{Z|Z33975}}, however I'm not sure how I add specific language implementations here. Can anybody help me? [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 10:41, 23 April 2026 (UTC) : I think I figured it out, I created a new object with the language config type, added {{Z|Z14310}} to my implementation, and added a new function for English... At least I think that's how it works... [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 13:16, 23 April 2026 (UTC) ::You have the right idea, as far as I know. I went ahead and connected the implementations you created as they appear to work fine for English, and added a test for {{Z|Z33975}} (which passes [[File:Twemoji 1f601.svg|24px]]). I also corrected an error you made on the config object where you appear to have accidentally connected English to {{Z|Z33975}} instead of {{Z|Z33977}}. Thank you for contributing! &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 13:45, 23 April 2026 (UTC) ::: {{re|Theki}} Thank you so much for you help! Could you please kindly also connect the implementations for {{Z|Z33986}} which I just made, which is going to be used for the Hebrew implementation of {{Z|Z33975}}. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 14:11, 23 April 2026 (UTC) ::::You seem to be returning the wrong type in both implementations. Functioneers should not connect implementations that don't work for non-functioneers. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 14:13, 23 April 2026 (UTC) ::::: {{re|Feeglgeef}} Oh thank you for pointing that out! I am still a bit new to this project and confused, so I need to read up some more about this. How do I return a monolingual text object? [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 14:17, 23 April 2026 (UTC) ::::::I'm trying to fix it for you, the construction of ZObjects in code implementations is a bit difficult right now. Since the State origin using entity and class function will (presumably) be composition, perhaps {{Z|33975}} can be adjusted to return a string, using {{Z|26107}} and {{Z|26107}}? [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 14:21, 23 April 2026 (UTC) :::::I did not notice any discrepancies from looking at the functions by themselves, and it seemed to work fine on my end. Is it bad practice for NLG functions to return the monolingual text type? I had assumed it was logical. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 14:24, 23 April 2026 (UTC) ::::::Both implementations are failing all three tests on my end. No consensus has been established as to whether monolingual texts or strings should be used, so it's like the [[w:War of the currents|war of the currents]] but for Wikifunctions. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 14:27, 23 April 2026 (UTC) :::::::Oh, you were referring to {{Z|Z33986}}. I assumed you were stating that something was wrong in the earlier English functions that I missed; I apologize for the misunderstanding. Has there been any centralized discussion on this string vs. monolingual text issue? &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 14:31, 23 April 2026 (UTC) ::::::::Not that I'm aware of, I've brought it up on the telegram twice before, though. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 14:49, 23 April 2026 (UTC) ::::::::The centralised discussion is at [[WT:Abstract Wikipedia/2025 fragment experiments#Proposed recommendation: Fragments should return Z11/monolingual strings]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 07:19, 24 April 2026 (UTC) ::::::: {{re|Theki|Feeglgeef}} Can only functioneers test implementations? For me I can't test it at all... [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 14:32, 23 April 2026 (UTC) ::::::::AFAIK, test cases are only immediately testable during editing of a function if they are connected. This is one of my personal pain points with Wikifunctions, iterating on functions without exhaustive connected test cases makes debugging practically impossible for non-functioneers working on newly-created functions... I (or Feeglgeef) can quickly connect the tests you need for you if you want, although if they are not well-formed they may need to be disconnected again afterwards. Additionally, I could temporarily connect the implementation you are writing so that you can test it on the sidebar as you work, but I'm not sure if this is advisable. That functionality is also something that unfortunately only works when not disconnected. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 14:43, 23 April 2026 (UTC) :::::::::Yup, agree with you on all points, thanks. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 14:48, 23 April 2026 (UTC) == Please disconnect implementation == I think I've fixed my issue with {{Z|Z33986}}, but I can't edit an actively connected implementations with my rights. I must admit it is an AI-aided fix, I feel very strongly about disclosing that. Courtesy pinging [[User:Theki]] and [[User:Feeglgeef]]. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 18:51, 23 April 2026 (UTC) : Additionally, I think the JS might be working. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 18:52, 23 April 2026 (UTC) : Just to clarify, I mean disconnect the Python implementation please. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 18:53, 23 April 2026 (UTC) :{{Done}} I've disconnected the Python implementation. :I've also added a couple of tests. The rule is a bit more complicated than adding a maqaf before every character that is not a Hebrew letter. Unfortunately, I don't think I'll have time to fix the implementations any time soon. [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 19:03, 23 April 2026 (UTC) :: Thank you! :: Also, for some reason I thought you put a maqaf before all gershayim, so thanks for correcting me. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 19:09, 23 April 2026 (UTC) :::No, that's not the rule. :::The rest of this reply is an [[:wikt:info-dump|infodump]], feel free to ignore it :) :::In [https://hebrew-academy.org.il/topic/hahlatot/punctuation/ the Academy's punctuation rules], the rule for adding a maqaf is written kind of badly: שמים מקף ברצף שיש בו שני סוגי גופנים, כגון אותיות ומספרים ("maqaf is added in a sequence in which there are two types of fonts, such as letters and numerals"). These are not different types of "fonts", but different types of characters, and I should email them about it. It gives the examples <span lang="he" dir="rtl">ה־12</span> and <span lang="he" dir="rtl">ב־DNA</span>. It doesn't say anything explicitly about quotation marks, but in other places on the same page, you have stuff like <span lang="he" dir="rtl">ב"הארץ"</span>, and from that I deduce that a maqaf is not needed before double quotes if there are Hebrew letters inside the double quotes. :::That said, a few people do think that there must be a maqaf before double quotes. I have a somewhat surprising example of somebody who always does it: translators of Scientology materials into Hebrew. At least that's what they did last time I looked at them, about ten years ago. Those people are certainly prolific, and they get points from me for consistency, but this not the prevalent standard. (And if I recall correctly, they use the minus and not the proper Hebrew maqaf, and they don't get any points from me for that!) :::Also, the name of the character is just "double quotes" and not "gershayim". Gershayim are mostly for abbreviations, although most people use the same character for them. I use ״ for gershayim, as do a few other nerds, but we're the minority. [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 19:35, 23 April 2026 (UTC) :::: {{re|Amire80}} Yeah, "font" is a weird choice of wording here by the Academy...<br> I think I'll follow your guidance and not use a maqaf for quotes beginning with Hebrew letters. <br> I should also add more tests for different types of quotes, like straight (", '), curly (“, ”, ‘, ’), gershayim (״, ׳), including single quotes.<br> P.S. gotta deduct points from Scientology for being a cult but that's neither here nor there [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 20:49, 23 April 2026 (UTC) :::: {{re|Amire80}} Courtesy ping because I mistyped your username on the last message. Anyways I'm also gonna do that tomorrow because I'm tired now... [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 20:50, 23 April 2026 (UTC) == Connect implementations == Hello! I'm done with the implementations of {{Z|Z33986}} both in JS and Python, and all tests pass. Pinging @[[User:Amire80|Amire80]] to check if all the tests I've added are alright. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 15:24, 24 April 2026 (UTC) :Connected. It's possible that some more changes will be needed, but it looks OK now. :Another little comment: It should be called "clitic" and not "prefix". [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 15:56, 24 April 2026 (UTC) : {{re|Amire80}} Thanks for your comment! Luckily labels are easy to edit, so I'll get to it. : Currently I'm working on Bulgarian {{z|Z34072}} and {{z|Z34084}}, along with other Bulgarian functions. After I'm finished with those I'll take your advice. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 16:01, 24 April 2026 (UTC) == Please connect my Bulgarian implementations == I recently created the following Bulgarian functions: * {{Z|Z34070}} (currently broken, I think because another function I built it upon is unimplemented) * {{Z|Z34088}} * {{Z|Z34105}} * {{Z|Z34072}} * {{Z|Z34084}} Can somebody please connect these functions, and perhaps suggest other functions I could localize? [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 19:03, 24 April 2026 (UTC) : Specifically, [[Z34070]] is based on [[Z34072]] [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 19:05, 24 April 2026 (UTC) :{{done}} for everything that passes, [[Z34070]] still does not work after purging WF's cache, though. For future reference, please request on the [[WF:Community portal|community portal]] instead of the project chat. Thank you for your work! [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 20:03, 24 April 2026 (UTC) :: {{re|Feeglgeef}} Thank you for your help! I will keep in mind to go to the [[project: community portal| community portal]] in future instead for this. :: I still don't understand why {{Z|Z34070}} fails... It's implementation is almost completely identical to [[Z30399]] from {{Z|Z30397}}, unless I messed something up... [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 20:11, 24 April 2026 (UTC) :::{{done}} No, it was mostly just timing out. It is better to use selective fetches where possible. One case is failing to match the expected results, but at least it is returning something. For all I know, it might even be acceptable! [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 20:35, 24 April 2026 (UTC) :::: {{re|GrounderUK}} Thank you so much for your help! The one failed case is with a definite article, so I feel like that might be fixed in the future... <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 20:43, 24 April 2026 (UTC) == Editor experience suggestions == I'm a bit frustrated with the editing experience on Wikifunctions, and I have suggestions based on pain points I've had contributing to this project: * Adding a wizard to create functions, implementations, and tests in one flow, somewhat like Wikimedia Commons' upload wizard * A sandbox for experimenting without changing mainspace functions, and maybe letting non-functioneers connect implementations ([[Project: Sandbox]] doesn't seem to fit this) * We could have functions for creation based on the sandbox, like how Wikipedia has articles for creation and edit requests, * Maybe even another test instance of Wikifunctions, like how Wikidata has [[testwikidata:|Test Wikidata]] I really like this project and I don't mean to whine, but it certainly has a lot of pain points both for technical and non-technical people. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 20:41, 24 April 2026 (UTC) : It's also really complicated to localize functions, so maybe we should add another wizard for that, where you can choose a language, and then create the new function with the aforementioned function wizard, and it just automatically adds it to the related language configuration object of the related function. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 20:48, 24 April 2026 (UTC) :# Sounds good to me. :# A sandbox available is [[Z10119]], though an extension-provided sandbox that allows you to manipulate the types, code, and tests easily without interfering with the mainspace would be nice. :# [[WF:Suggest a function|This page]] works to some extent, though it's too messy in my opinion. :# We used to have a "beta cluster" but it [[phab:rOMWC5f625c5846b5f779473fa32c9a02d87e59215dfa|got shut down]] just over a year ago because it was broken. :[[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 21:07, 24 April 2026 (UTC) == Language parameters in language-specific functions == I think that an effort should be made to give the different natural language options corresponding to different English dialects, Chinese scripts, etc. more of a use (I added the test {{Z|Z34119}} to {{Z|Z26095}} and unsurprisingly it fails). There are two main problems with this approach that I can identify: * If you ask the majority of these functions to make a sentence in British English, much of the time it will give you an output with missing words, because it does not fallback to English labels in the case of a British English label for that item missing. The same applies for every other English dialect, British English is just an example here. * Uninformed editors will probably see the presence of a language parameter on these functions, consider it redundant, and remove it. [[Special:Diff/268074|I have made this mistake before]]. In my opinion, in a perfect world, all of these language generation functions would output monolingual text, and if the user asks for American English text, then American English text is what they'll get. If the user asks for Japanese text in hiragana specifically, then that's what they'll get in return. This is not as high-priority as just rendering text in the language plainly in the first place, but it's something that I feel is still worth devoting some effort to. Right now switching functions to use this paradigm is difficult because, on the one hand, I don't know if consensus tends towards this direction being ideal or advisable, and I don't want to make changes like this without at least notifying the wider community. In addition, all tests break once a parameter is added or removed, and the function editor does not recognize the change in number of parameters and therefore you have to remove the function call, re-add it along with all of its parameters it had previously (which is a tedious cut-and-paste job), and then it will work again. This is something that you can do in five seconds by just adding a few lines of JSON to the test source, but this is not directly editable from the Web browser. This tedium is largely what's preventing me from doing this on a larger scale, besides asking for comments first. If anyone has any insights or comments on this, then that would be appreciated. If a reference of functions with and without the support for language variants is needed, of course [[WF:NLG]] can be perused, but I've also my own list cataloged at [[User:Theki/functions#language]]... Of course, this thread has many similarities to [[#"language" argument for certain functions|the one above]], but this concerns me going out and making this consistent across these NLG functions. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 21:09, 24 April 2026 (UTC) :I've created {{Z|Z34122}} as an extension to {{Z|Z34039}} for larger functions. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 21:34, 24 April 2026 (UTC) :Just to confirm that I, for one, support a Natural language parameter for all natural-language functions. The concern about getting them all aligned is just that we haven’t finally settled on {{Z|Z11}} being preferred to {{Z|Z89}} or some other type that conserves the text’s provenance, so we risk having to change them all again. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:07, 25 April 2026 (UTC) == “Key not found ()”? == What am I doing wrong in {{Z|Z34137}}? [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 00:39, 25 April 2026 (UTC) :You were passing a [[Z6091]] to {{Z|32290}}, but it takes a [[Z6001]]. Fixed. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 07:10, 26 April 2026 (UTC) ::{{done|Thank you}}! [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 14:13, 26 April 2026 (UTC) == Why is my test failing? == Hello! I recently made {{Z|Z34139}} based on [[wikt:Module:bg-translit]], and the test case {{Z|Z34141}} is failing on both implementations, despite the expected output and actual output being the same as far as I can tell. I tried looking at the Unicode codepoints of the output, but those are also identical. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 06:21, 25 April 2026 (UTC) :Yes, it’s a tricky one. I’ve added a normalize step to the result validation in {{Z|Z34141}}, which confirms it is a normalization issue. It looks like it is in the code but I don’t know whether simply normalizing the result is the way to go. Logically, you would normalize both the input and the result. The implementations of {{Z|Z10384}} show you how to do this. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 09:41, 25 April 2026 (UTC) == Edit request == Hello! I have an edit request for {{Z|Z23752}} and {{Z|Z23414}}. Please replace all the "an/a" logic with <code>Z21739(Argument reference)</code>, both for readability and for more accuracy ("a university is an institution") <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 09:50, 25 April 2026 (UTC) :{{D}} [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 12:24, 25 April 2026 (UTC) == Wikifunctions & Abstract Wikipedia Newsletter #245 is out: The Foundation's search for the perfect language == There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-04-25|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it! In this issue, we present an academic paper about Abstract Wikipedia, we discuss our latest Type created, and we take a look at the newest created functions. Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]! Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 09:54, 25 April 2026 (UTC) <!-- Message sent by User:Sannita (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=30325620 --> :@[[User:Sannita (WMF)|Sannita (WMF)]], @[[User:DVrandecic (WMF)|DVrandecic (WMF)]], technical meta-question: the newsletter quotes the article: ::the only way to contest its algorithm is to click 👍 or 👎 (Crawford and Gillespie 2016) :This quotation sounds sensible, but the article's [https://link.springer.com/article/10.1007/s00146-026-02899-w web version], and the PDF that is downloadable from the same page doesn't actually show the emojis. It rather shows text that looks lacking: ::the only way to contest its algorithm is to click or (Crawford and Gillespie [https://link.springer.com/article/10.1007/s00146-026-02899-w#ref-CR14 2016]) :Where did you get the emojis? Is it your (probably correct) guess or is there a version somewhere that actually shows the emojis? [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 15:16, 25 April 2026 (UTC) ::Scratch that. I've found a version with correct emojis: https://wikihistories.github.io/wikilambda-the-ultimate/ [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 15:37, 25 April 2026 (UTC) == Requested deletion of test == Please delete {{Z|Z34143}}. this was never valid Bulgarian, I messed up. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 10:19, 25 April 2026 (UTC) :[[WF:RFD]] please. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 16:40, 25 April 2026 (UTC) == Request for comment (global AI policy) == <bdi lang="en" dir="ltr" class="mw-content-ltr"> A [[:m:Requests for comment/Artificial intelligence policy|request for comment]] is currently being held to decide on a global AI policy. {{int:Feedback-thanks-title}} [[User:MediaWiki message delivery|MediaWiki message delivery]] ([[User talk:MediaWiki message delivery|talk]]) 00:57, 26 April 2026 (UTC) </bdi> <!-- Message sent by User:Codename Noreste@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30424282 --> == Is it OK to connect the implementation? == Hello! I recently applied for functioneer on [[WF:RFG]], and I was wondering whether I could connect the implementation for {{Z|Z34165}} despite its dependency {{Z|Z34149}} being currently unimplemented. That is <em>if</em> I get accepted. I am planning on implementing it based on [[wikt:module:bg-nominal]], but am still having trouble figuring it out for now. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 09:04, 26 April 2026 (UTC) == Past tense function == Is there a function like {{Z|Z26039}}, but for the past tense (e.g. "Leo Tolstoy <em>was</em> a writer.")? If not, I will create it myself, I just want to make sure there's not a duplicate. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 10:10, 26 April 2026 (UTC) : {{Done}} with {{Z|Z34224}}, but I have a few kinks to work out with it. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 10:35, 26 April 2026 (UTC) :: I need to create some other similar functions for the past tense, I have some ideas: ::* {{Z|Z26095}} ::* {{Z|Z32643}} ::* {{Z|Z28016}} ::* {{Z|Z26570}} ::* {{Z|Z33975}} ::* {{Z|Z27243}} ::* <ins>{{Z|Z26627}}</ins> ::* <ins>{{Z|Z27627}}</ins> ::* <ins>{{Z|Z27173}}</ins> ::* <ins>{{Z|Z29591}}</ins> :: :: Are there any I have missed? <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 10:57, 26 April 2026 (UTC) :I think that here we are starting to walk on dangerous waters: what does past mean? Is it a recent o a far past? Does it have ripercussions on the present or not? Is it just a thing that happened once, many times or for a continuative period of time? :Consider that various languages distinguish between many different types of past. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 12:38, 26 April 2026 (UTC) :: {{re|Dv103}} That is a fair point... :: How do we go about solving this problem though? I don't think having every sentence on Abstract Wikipedia be "X is a Y" is a very good idea. :: Maybe we have different functions for all these variations of past you mentioned that just map into "X was a Y." in English? <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 13:31, 26 April 2026 (UTC) :::To properly solve this problem, we should use a more complete abstract content representation model, like for example the proposal of [[Wikifunctions:Type proposals/Semantic unit|Semantic units]] (look at [[Wikifunctions:Type proposals/Semantic unit/Douglas Adams|the example]] to see how times could be handled). For now, since we're still stuck with single fragment generation functions (that I hope will be slowly replaced with the complete represenation model, when available), we could just restrict your function to a very specific meaning, like "subject was an instance of, for most of its existence" (which means for example that it could be used to say "Douglas Adams was a writer", but not "Abraham Lincoln was a president", since he only was a president for 4 years). Probably my definition is still too vague, and this is why we need to go beyond these fragment generating functions. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 19:47, 26 April 2026 (UTC) ::Nitpick... I don't like that it outputs a string instead of monolingual text. With {{Z|Z26039}} it's used so much that I think it's unfixable in that case beyond deprecating it if people care that much, but {{Z|Z34224}} doesn't even have any connected implementations yet. Consider it, maybe? ::Nitpick 2... {{Z|Z34227}} is missing a language parameter. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 16:08, 26 April 2026 (UTC) ::: I will consider that! ::: I just did that because that's what {{Z|Z26039}} does, so I assumed I should follow suit with it. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 16:48, 26 April 2026 (UTC) == Legacy functions == If and when more robust methods of abstractly representing and generating linguistic content come around, and more efficient ways of creating abstract content are devised and implemented, I suspect that our current methods will require some form of deprecation. This is a significant source of concern for me in relation to WF and AW, questioning how prone our current methods of doing things are and eventually will be prone to obsolescence, and how it will be worked around when it comes. We have over 1 250 articles on AW presently, and these are rather all over the place. I suspect the maintenance burden from keeping these articles up to code will eventually, err, creep up on us, I suppose, and some kind of major refactoring will be necessary. We are definitely in a period of experimentation and whatnot right now but eventually, like with enwiki, some sort of structure and rigor will form and I suspect it will start to become rather boring for me... I, for one, very much enjoy experimenting with new and better ways to do things here. I don't personally mind changing things to use a new and better paradigm if need be, that sort of thing highly excites me, but of course there will be things that are left behind, and I suspect maybe bots will be employed to deal with this? A lot of Wikipedia sister sites seem to do that, e.g. going and fixing up use of deprecated templates. Considering the nature of Wikifunctions and Abstract Wikipedia I suspect certain maintenance tasks will be made simpler or even trivial by the typical uniformity of our implementations. I guess I am just concerned if Wikifunctions or Abstract Wikipedia will ever accrue its own kind of "technical debt" with how we are plowing through things presently, and if there is a plan for how we will eventually seek to mitigate that. Maybe too early to ask this question, but I am a notoriously anxious person, so I thought it wouldn't hurt to raise the question regardless... &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 21:30, 26 April 2026 (UTC) :I very much agree, thank you for expressing my position so well. {{ping|Immanuelle}} has been using an AI-generated tool (well, they haven't edited in a week, perhaps it's a break or perhaps they don't wish to contribute to the project any more) to create a bunch of articles en masse, which I have warned them multiple times is a bad idea (on top of evolving functions, all of the articles are one-sentence-per-paragraph, [[abstract:Q12184|like so]]). That's why I've been avoiding creating articles recently, I'd say I have a good fourth (no data to support, rough guess) of the comments on the wiki, yet less than a percentage of the article count (only three, including the [[abstract:Q319|first article]], though, so perhaps I'm the next [[w:Special:Permalink/908493298|office.bomis.com]]). [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 19:41, 27 April 2026 (UTC) :: I feel that the overwhelming presence of these low-quality articles (which I admit I myself am [[abstract:Q1710970|guilty]]/[[abstract:Q7601858|of]]/[[abstract:Q39338|creating]], usually as testbeds) may incur a large maintenance burden. I do expect them to be easy to detect, however, as searching for the presence of "deprecated" NLG functions is trivial, and it is possible that replacing them with their future ''even abstracter&trade;'' counterparts could be done automatically since they all have the same signatures and can be expected to create the same form of sentence. If it needs to be done manually for a while or for certain delinquent instances, my hope is that it will be fun, at least for a while. :: I just hope that these hypothetical future waves of "this new and versatile way of abstractly representing linguistic content" obsoleting previous methods and requiring refactoring across all articles is only a one-time thing. We should strive to be as robust and flexible as possible from the outset as each brand new paradigm of abstraction is also a brand new maintenance burden for updating old articles. At the end of the day, at least ''some'' of these articles will still render to many different languages even if their methods of creating those sentences of theirs is completely outdated. Ergo, the time it takes for the switchover to be performed across our articles should not be a persistent inconvenience for users (as, of course, they will always still be able to read the content as it was before since these legacy functions aren't being deleted outright), and the increased availability that the new methods will bring about will likely act as motivation for them to join the effort in refactoring (&#x300C;You're telling me that if I rewrite this article in this cool Lisp-looking stuff then I can probably read it in [[abstract:Q9307|Galician]]?? COOL!&#x300D;). &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 20:26, 27 April 2026 (UTC) :::Totally agree. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 02:54, 28 April 2026 (UTC) :::My vague plan is to implement a default function returning an {{Z|Z89}}, for each language-neutral function. A single function would convert any of these to a {{Z|Z11}}, so that a composition of the two can be implemented as the current default until such time as the language-neutral function is ready to return a [[Z89]]. We can already convert a [[Z11]] to a [[Z89]] so, although there is more to be done in this space, existing language-specific functions could be adapted to return a [[Z89]] quite mechanistically. :::Although we certainly could deliver parallel Z89 functions for each existing Z11 function, I don’t think we should assume that particular outcome. Provided the Z89 captures a lang attribute from the Z11’s language tag, the two representations should be largely interchangeable, although I am expecting a Z89 to carry additional attributes at the span level that would be lost on conversion to a Z11 (along with any higher-level tags and attributes). :::When I say there is “more to be done in this space”, I am referring to a new type that would allow HTML fragments to be represented as tractable Wikifunctions objects, but this is currently drafted only in my head! [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:21, 29 April 2026 (UTC) == Filtering types of objects == Hello! I have tried to comb through my own edit history several times, but it's really hard to search for specifics because there's no differentiation between different types of objects (functions, implementations, tests, etc.) in the logs as far as I can tell. Am I missing anything? I want it to work sort of like how filtering by namespace works. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 16:48, 27 April 2026 (UTC) :There is differentiation, it's just rather hard to look through. Since all ZObjects are just JSON data at their core, you can search for instances of <code>{ "Z1K1": "Z[type]"</code>. I haven't tried this so I'm not sure how well it would work and I know MediaWiki search syntax treats quotation marks as a special character, but I have seen Wikifunctions pages link to searches using this before. There is also [[Special:ListObjectsByType]] but it is sitewide rather than specific to your edit history in particular. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 18:59, 27 April 2026 (UTC) ::''[It doesn’t help directly here, but please see [[WF:Find]] for more details of how this works.]'' [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:24, 29 April 2026 (UTC) :See the feature requests [[phab:T399244]]/[[phab:T373735]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 06:06, 28 April 2026 (UTC) :The lack of filtering edits by namespace is exactly the problem that I was trying to solve with the [[User:Amire80/wikifunctionsanalytics]] tool. :I even kind of succeeded, but it has two major problems: :# It doesn't have any real frontend, so you have to know some SQL to use it (or ask other people who know SQL). :# It doesn't get information from the live site, but from the dump, which appears to be updated once a month. :I've made a [https://quarry.wmcloud.org/query/104794 sample query for you]. Unfortunately, it won't do anything at the moment because of the second problem—your edits started in April 2026, which isn't over yet, so the dump for it hasn't been processed. But I hope that early in May you'll be able to use the same query and see something useful. :(I plan to add support for recent edits, but I haven't done it yet. Now that I more or less figured out how to process Wikifunctions edits, I'm focused on trying to understand Abstract Wikipedia edits. Processing up-to-date edits from both sites will possibly be the next thing I work on, but if you know some Python and want to try doing it yourself, don't wait for me—[https://gitlab.wikimedia.org/toolforge-repos/wikifunctions-analytics Patches welcome].) [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 18:51, 28 April 2026 (UTC) ::@[[User:QuickQuokka|QuickQuokka]], I've just updated the data until the end of April. Now the query to which I linked above gives some results. You can also try running other queries if you know SQL. (Or try asking for other queries if you don't.) [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 03:26, 3 May 2026 (UTC) == [[Z34213]] == I'm not quite sure why this implementation is failing. Could someone take a look? [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 02:24, 28 April 2026 (UTC) :I've [https://phabricator.wikimedia.org/T419933#11863997 notified] the team that this is still occurring, the issue was marked as resolved. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 02:52, 28 April 2026 (UTC) :Some useful tips: :* create more testcases: sometimes it is a random error, so try to see how consistent it is between testcases :* your implementation is very inefficient, since it fetches items and lexemes a lot of times. Ideally, each item and each lexeme should be only fetched once in all the execution tree. :[[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 06:06, 28 April 2026 (UTC) ::Caching (''should?'') means that the lexeme and item data are cached, so the call doesn't actually execute multiple times. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 17:51, 28 April 2026 (UTC) :::Are lexemes and items actually cached within the same function execution? Even if they are only partially fetched and/or fetched in bulk? [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 17:54, 28 April 2026 (UTC) ::::I don't have any evidence to prove that it works but that's definitely A. what's supposed to happen and B. the ideal behavior. This happens because the Z680X functions can be cached just like any other. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 18:02, 28 April 2026 (UTC) ::::It is unclear. In general, I believe identical branches are resolved only once in orchestration, but there is also independent caching of Wikidata fetches. ::::According to @[[User:DMartin (WMF)|DMartin (WMF)]] ([https://t.me/Wikifunctions/30374 on Telegram]): ::::<blockquote>Well, no. We have caching of Wikidata entities that have been retrieved, but not of the results of nested function calls. There is a proposal for doing this in the context of the V2 composition language, when it's a bit more mature, and it's regarded as a relatively high priority.</blockquote> ::::It’s hard to tell whether fetches in nested calls are, in fact, cached and available for other nested calls in the same call, since it is not generally the actual fetch that consumes the most resources. Rather (I believe), it is construction and transmission of the result object, which is currently repeated afresh in each nested call (unless it is in an identical branch). ::::I hope that’s clear, and I apologise in advance if it happens to be inaccurate! [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:16, 29 April 2026 (UTC) :::::Oh, I should clarify.  There is a lot of caching going on, in several different places.  Lexemes and items ''are'' cached by the orchestrator within the same function execution, even if they are only partially fetched and/or fetched in bulk.  When I said that we don't have caching of the results of nested function calls, I meant that's not happening in general, for all nested function calls in compositions.  But fetching of Wikidata entities gets special treatment, so yes, fetched content from Wikidata is cached, regardless if it was fetched by a top-level call or a nested call. :::::It is also true that the construction of a ZObject from the fetched JSON might happen more than once within the same function execution, depending on how a composition has been structured. However, the construction of the ZObject is actually very fast, compared to the elapsed time of getting the JSON from Wikidata. [[User:DMartin (WMF)|DMartin (WMF)]] ([[User talk:DMartin (WMF)|talk]]) 18:04, 1 May 2026 (UTC) == Question about cardinal numbers == I was about to edit {{Z|Z16435}} to add my function {{Z|Z34308}}, but I noticed that none of the other functions have a gender parameter. Should I create a new wrapper function "Bulgarian cardinal, neuter", or should I just remove the gender parameter and always return neuter? <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 10:39, 28 April 2026 (UTC) :The “cardinal” functions should return the words used for “counting” numbers in the abstract. :We should consider converting them to return a {{Z|Z11}} rather than a {{Z|Z6}}. It may even be appropriate to return a {{Z|Z12}} to cater for language variants. Either way, I think that would be the approach to adopt for inflected forms, unless reference to specific lexeme-forms is required. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 12:52, 28 April 2026 (UTC) ::This. If a native of your language were to count up, which form would they be most likely to use? [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 13:29, 28 April 2026 (UTC) ::: {{re|GrounderUK|Feeglgeef}} Thanks for both your input! ::: I relabeled the aforementioned function to {{Z|Z34308}}, and created a new wrapper function {{Z|Z34457}}. ::: Should I specify that my old function is a monolingual text in parentheses? <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 16:26, 28 April 2026 (UTC) ::::You don't have to, unless you think that is something that would require distinction when viewing the function in a list of search results &c. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 16:36, 28 April 2026 (UTC) == Optional/nullable function parameters == Hello! Recently, I was informed that Wikifunctions has no optional/nullable function parameters as of now. Are there any future plans to support this, and/or workarounds? Maybe create a union type system like "{{Z|6}} or {{Z|23}}". <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 17:53, 28 April 2026 (UTC) :What I do for this is use an "is empty" function corresponding to the type of the parameter in an If statement. If it isn't empty, the function works as intended. Otherwise, it does something else. [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 17:58, 28 April 2026 (UTC) :Unions are not a thing (yet) on Wikifunctions, but you can always define an argument of type {{Z|Z1}}, which means that all types are allowed (I already did this for {{Z|Z26737}}; note that it is still a ugly workaround, don't use it for high level functions). Also, note that usually on Wikifunctions we use {{Z|Z24}} as the null value. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 18:00, 28 April 2026 (UTC) :: {{re|JJPMaster|Dv103}} Thanks for your help! :: @[[User:Dv103|Dv103]] told me a function call with a missing parameter is treated as an invalid function call, so how does the "is empty" function work with that? :: Also, setting the type to {{Z|1}} seems naive, like setting the type as <code>any</code> in TypeScript... :: Related question: Are there plans to add default values to parameters (outside of "if empty")? <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 18:19, 28 April 2026 (UTC) :::Setting the type to {{Z|Z1}} is actually naive, and that's why I advised you to only use it for low-level functions. Currently there is nothing better. Sometimes, type correctness is not actually checked, so it might seem that nullable types are possible. But it is still an hack, and it could broke anytime since it is not intended behavior. :::I don't think that there are current plans to add default values (but correct me if I'm wrong). The closest thing that comes to my mind is that, if you incorporate Wikifunctions into Wikitext, you can leave empty some fields (only of some specific types) and Parsoid will replace them to their default value. This is done only depending on the type, and not on the functions. For example, {{Z|Z6091}} and {{Z|Z6001}} are assigned the QID associated to the page, and {{Z|Z20420}} is assigned the current date. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 18:56, 28 April 2026 (UTC) :::@[[User:QuickQuokka|QuickQuokka]]: At the very least, [[Z10008]] accepts a null input. Maybe that feature is unique to the String type—I am not sure. [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 19:10, 28 April 2026 (UTC) ::::I think it's just not checked, but it shouldn't be intended. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 19:20, 28 April 2026 (UTC) ::::Strings and typed lists can be “empty” in the sense that their length can be zero. Typed pairs may also be “empty” in a degenerate sense, but such an object will not be returned from a code implementation. A typed map with no entries will also fail to be returned from code, although it is fine in compositions. ::::For a genuinely optional parameter, I prefer a properly typed list, which at least encourages an argument of the correct type. {{Z|Z813}} is also typically faster than {{Z|Z10008}}. Quite a good example of this approach is {{Z|Z23723}}, where it helps to resolve the type union (using [[Z1]]) for both Z6003K1 and Z6003K3. Of course, there’s nothing to prevent more than one element in the list, but additional elements are easily ignored. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 22:55, 28 April 2026 (UTC) :Pinging {{ping|Jdforrester (WMF)|prefix=|p=}}, I believe there are no current plans. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 19:02, 28 April 2026 (UTC) ::@[[User:QuickQuokka|QuickQuokka]]: I'm afraid there are no current plans to build out optional params, indeed; we would be happy to review this if a compelling case was made, but it'd be a lot of work to re-build the [[Wikifunctions:Function model|function model]] with that support and ensure we don't break (too many) things. [[User:Jdforrester (WMF)|Jdforrester (WMF)]] ([[User talk:Jdforrester (WMF)|talk]]) 19:11, 28 April 2026 (UTC) == Z6830 for Chinese == I was trying to use {{Z|Z6830}} for implementation in the Chinese-language. And turns out most of the Lexeme on Wikidata is using [[d:Q727694]] as the language instead of [[d:Q7850]]. This makes it impossible to use the mentioned function above, since Standard Chinese is not available (or did I miss something?). Is there a way to fetch lexemes with language=[[d:Q727694]] from item? [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 18:20, 30 April 2026 (UTC) == Key not found error == Is there a reason why I am getting key not found error for this [[Z34677|function]] {{Z|Z34677}}? All the underlying functions run and all the test cases work. The debug information does not give more details. Any pointers? Thanks in advance [[User:Jsamwrites|John Samuel]] 19:24, 1 May 2026 (UTC) :It was passing the [[Z6091]] to {{Z|34641}} when that takes a [[Z6001]]. I've fixed that, but there's some other problem with the logic, so I've left it disconnected. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 19:42, 1 May 2026 (UTC) ::@[[User:YoshiRulz|YoshiRulz]] Thanks a lot. [[User:Jsamwrites|John Samuel]] 20:21, 1 May 2026 (UTC) == Wikifunctions & Abstract Wikipedia Newsletter #246 is out: Request for input: what should we count for Abstract Wikipedia == There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-05-02|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it! In this issue, we ask you what would be the relevant metrics for Abstract Wikipedia, we discuss our latest news on Composition Language v2, and we take a look at the latest software developments. Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]! Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 12:21, 2 May 2026 (UTC) <!-- Message sent by User:Sannita (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=30325620 --> == Any formal process for deletion of pages == Does a formal process exist for the deletion of functions, implementations, and tests that includes a notification system for creators, analogous to Wikidata’s process, explaining the rationale behind the deletion (or proposal for deletion)? [[User:Jsamwrites|John Samuel]] 12:36, 3 May 2026 (UTC) :Does [[Wikifunctions:Requests for deletions]] work? [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 13:00, 3 May 2026 (UTC) :Please see the discussion at [[Wikifunctions talk:Requests for deletions#Should we expect Objects' creators to get pinged on deletion proposals?]]. :As I see it, it is the proposer’s responsibility to consult appropriately before making a request and we expect our administrators to act only when satisfied that appropriate consultation has occurred. In many cases, no consultation is required. Administrators may delete their own contributions without making a request, but this is not a practice I would encourage. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 13:51, 3 May 2026 (UTC) == Implementation of rational number in JS doesn't match in Z19677 (Rational number) and Z28579 (RGBA colour) == In {{Z|19677}} it's <syntaxhighlight lang=js> { "K1": sign * numerator, "K2": denominator } </syntaxhighlight> but in {{Z|28579}} it's <syntaxhighlight lang=js> [ sign * numerator, denominator ] </syntaxhighlight> '''<span style="font-family:Iosevka,monospace">[[User:沈澄心|<span style="color:#9f3526">dring</span>]][[User talk:沈澄心|<span style="color:#534fa3">sim</span>]]</span>''' 05:15, 4 May 2026 (UTC) 46h4atw5qabrbhcekzbv5z07373wkl2 Wikifunctions:Requests for user groups 4 3790 272139 272129 2026-05-04T13:25:24Z Feeglgeef 8776 /* Bunnypranav */ adding a bullet to [[User:Dv103]]'s comment, the different in indentation bothers me. 272139 wikitext text/x-wiki {{shortcut|[[WF:RFG]]|[[WF:PERM]]|[[WF:RFUG]]}} This is the place to request specific user groups: {{ombox | image = [[File:Echo user-rights icon.svg|60x60px|alt=|link=]] | text = '''How to make a request''' # Edit the section for the user group you wish to request # Copy the following and ''append'' it to the text-area: ## Requests without required discussion: <code><nowiki>{{subst:rfg|1={{subst:REVISIONUSER}}|2=reason ~~~~}}</nowiki></code> ## Functioneer requests (required 48-hour discussion): <code><nowiki>{{subst:rfg|3=1|length=2 days|1={{subst:REVISIONUSER}}|2=reason ~~~~}}</nowiki></code> ## Requests with required 1-week discussion: <code><nowiki>{{subst:rfg|3=1|1={{subst:REVISIONUSER}}|2=reason ~~~~}}</nowiki></code> # Replace <code>reason</code> with a rationale based on the guidelines specified for the user group }} : ''Archived requests can be found at [[Wikifunctions:Requests for user groups/Archive]]'' {{Autoarchive resolved section | age = 1 | archive = ((FULLPAGENAME))/Archive/((year))/((month:##)) | level = 3 }} == Functioneer == {{see also|Wikifunctions:Functioneers}} == Autopatroller == {{See also|Wikifunctions:Autopatrollers}} == Administrator == {{see also|Wikifunctions:Administrators}} === Bunnypranav === :{{UL2.0|1=Bunnypranav|contributions=1|deletedcontributions=1|editcount=1|blocklog=1|rightslog=1|crosswiki=1}} :''Discussion open until: 10:01, 8 May 2026 (UTC)'' :Hello folks! I am here to request renewal of my administrator right. I was granted sysop on 6th May 2025, and have actively served for a year. I regularly help out at deletion requests, and also done a few blocks while responding to reports of vandalism. I will keep in mind the consensus of the community in each one of my actions, which is bound to change often as this wiki is taking shape and growing. I am open to questions, but please do ping me. Thanks! <span style="font-family:monospace;font-weight:bold">[[User:Bunnypranav|<span style="color:#63b3ed">~/Bunny</span><span style="color:#2c5282">pranav</span>]]:&lt;[[User talk:Bunnypranav|<span style="color:#63b3ed">ping</span>]]&gt;</span> 10:01, 1 May 2026 (UTC) ::*{{s}} Thanks for your continuing work. I think you're doing a great job. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 12:17, 1 May 2026 (UTC) ::*{{s}} No problems with your time as admin. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 12:29, 1 May 2026 (UTC) ::*{{s}} [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 13:31, 1 May 2026 (UTC) ::* {{S}} Thanks for your work --[[User:Ameisenigel|Ameisenigel]] ([[User talk:Ameisenigel|talk]]) 21:42, 1 May 2026 (UTC) ::*{{s}} [[User:ChaoticV|ChaoticV]] ([[User talk:ChaoticV|talk]]) 23:13, 1 May 2026 (UTC) ::*{{s}} [[User:ToadetteEdit|ToadetteEdit]] ([[User talk:ToadetteEdit|talk]]) 06:55, 4 May 2026 (UTC) == Interface administrator == {{see also|Wikifunctions:Interface administrators}} == Translation administrator == {{see also|Wikifunctions:Translation administrators}} == Bureaucrat == {{see also|Wikifunctions:Bureaucrats}} == Miscellaneous requests == == See also == * [[Wikifunctions:User groups]] ** [[mw:Help:Wikifunctions/User rights]] for additional context about functioneers, maintainers, sysops, and bureaucrats [[Category:User groups|*]] 8infdidtu1t10yr856hx1db43w782ni User:Koavf 2 11246 272327 40688 2026-05-04T19:56:37Z Koavf 208 {{DISPLAYTITLE:User:<span style="color:grey">''ko'''a'''</span><span style="color:black">v</span><span style="color:grey">f''</span>}} 272327 wikitext text/x-wiki {{#babel:en|es-2|de-1|pt-1}} I'm hopeful that I can learn more about functions here. {{DISPLAYTITLE:User:<span style="color:grey">''ko'''a'''</span><span style="color:black">v</span><span style="color:grey">f''</span>}} 658tgstwwnsci8wqd77t3a9e2xjq37v Wikifunctions:Human languages 4 23704 272377 270535 2026-05-05T05:47:04Z Arlo Barnes 1231 add lang without znumber yet 272377 wikitext text/x-wiki <languages/> {{draft}} <translate> <!--T:1--> Supported by the Natural Language Generation Special Interest Group; see also <tvar name="1">{{ll|WF:PROG}}</tvar> and <tvar name="2">{{ll|WF:Catalogue/Natural language operations}}</tvar>. == Related pages == <!--T:121--> </translate> * <translate><!--T:122--> <tvar name="1">[[:Category:Natural languages]]</tvar> — List of categories for languages</translate> * <translate><!--T:123--> <tvar name="1">{{ll|Wikifunctions:Catalogue/Natural language operations}}</tvar> — Lists of natural language functions</translate> * <translate><!--T:124--> <tvar name="1">{{ll|Wikifunctions:NLG functions}}</tvar> — A table of each supported language's NLG functions</translate> ** <translate><!--T:125--> <tvar name="1">{{ll|Wikifunctions:Cardinal numbers}}</tvar> — List of each language's cardinal number functions</translate> * <translate><!--T:126--> <tvar name="1">{{ll|Wikifunctions:Reserved ZIDs/all#Z1000-Z1999}}</tvar> — List of all languages in ZObject order</translate> <translate> == Afroasiatic == <!--T:38--> </translate> * {{z+|Z1472}} (zgh) — [[/Z1472]] * {{z+|Z1013}} (ha) — [[/Z1013]] * <translate><!--T:127--> Semitic</translate> ** <translate><!--T:128--> Arabic</translate> *** {{z+|Z1001}} (ar) — [[/Z1001]] *** {{z+|Z1045}} (ary) — [[/Z1045]] *** {{z+|Z1582}} (aeb) — [[/Z1582]] ** {{z+|Z1186}} (he) — [[/Z1186]] <translate> == Austroasiatic == <!--T:69--> </translate> * {{z+|Z1048}} (vi) — [[/Z1048]] * (<translate><!--T:129--> Mundari, no code yet</translate>) (unr) <translate> == Austronesian == <!--T:70--> </translate> * <translate><!--T:130--> Malayic</translate> ** {{z+|Z1531}} (ms) — [[/Z1531]] *** {{z+|Z1434}} (ms-arab) — [[/Z1434]] ** {{z+|Z1078}} (id) — [[/Z1078]] * {{z+|Z1471}} (su) — [[/Z1471]] <translate> == Constructed == <!--T:131--> </translate> * {{z+|Z1882}} (ldn) — [[/Z1882]] * {{z+|Z1576}} (eo) — [[/Z1576]] * {{z+|Z1534}} (tlh) — [[/Z1534]] * {{z+|Z1762}} (tok) — [[/Z1762]] <translate> == Dravidian == <!--T:132--> </translate> * {{z+|Z1293}} (brh) — [[/Z1293]] * <translate><!--T:133--> South</translate> ** {{z+|Z1012}} (ml) — [[/Z1012]] ** {{z+|Z1429}} (te) — [[/Z1429]] <translate> == Indo-European == <!--T:80--> </translate> * {{z+|Z1541}} (hy) — [[/Z1541]] * <translate><!--T:134--> Balto-Slavic</translate> ** {{z+|Z1709}} (lv) — [[/Z1709]] ** <translate><!--T:135--> Slavic</translate> *** <translate><!--T:136--> East Slavic</translate> **** {{z+|Z1005}} (ru) — [[/Z1005]] **** {{z+|Z1332}} (uk) — [[/Z1332]] **** {{z+|Z1622}} (by) — [[/Z1622]] *** <translate><!--T:137--> West Slavic</translate> **** {{z+|Z1062}} (cs) — [[/Z1062]] **** {{z+|Z1025}} (pl) — [[/Z1025]] **** {{z+|Z1488}} (sk) — [[/Z1488]] *** <translate><!--T:138--> South Slavic</translate> **** {{z+|Z1823}} (bg) — [[/Z1823]] **** {{z+|Z1105}} (cu) — [[/Z1105]] **** {{z+|Z1412}} (sh) — [[/Z1412]] ***** {{z+|Z1473}} (bs) — [[/Z1473]] ***** {{z+|Z1272}} (hr) — [[/Z1272]] ***** {{z+|Z1498}} (cnr) — [[/Z1498]] ***** {{z+|Z1158}} (sr) — [[/Z1158]] **** {{z+|Z1616}} (sl) — [[/Z1616]] * <translate><!--T:139--> Celtic</translate> ** {{z+|Z1282}} (br) — [[/Z1282]] ** {{z+|Z1339}} (gd) — [[/Z1282]] * <translate><!--T:140--> Germanic</translate> ** <translate><!--T:141--> North Germanic</translate> *** <translate><!--T:142--> East Scandinavian</translate> **** {{z+|Z1061}} (dk) — [[/Z1061]] **** {{z+|Z1592}} (sv) — [[/Z1592]] *** {{z+|Z1021}} (no) — [[/Z1592]] ** <translate><!--T:143--> West Germanic</translate> *** <translate><!--T:144--> North Sea</translate> **** {{z+|Z1002}} (en) — [[/Z1002]] ***** <translate><!--T:145--> North American</translate> ****** {{z+|Z1689}} (en-US) — [[/Z1689]] ****** {{z+|Z1437}} (en-CA) — [[/Z1437]] ***** {{z+|Z1113}} (en-AU) — [[/Z1113]] ***** {{z+|Z1199}} (en-GB) — [[/Z1199]] ***** {{z+|Z1966}} (en-IN) — [[/Z1966]] ***** {{z+|Z1881}} (en-x-piglatin) — [[/Z1881]] ***** {{z+|Z1124}} (en-x-simple) — [[/Z1124]] **** {{z+|Z1146}} (nds) — [[/Z1146]] *** <translate><!--T:146--> High German</translate> **** {{z+|Z1099}} (lb) — [[/Z1099]] **** {{z+|Z1430}} (de) — [[/Z1430]] *** {{z+|Z1157}} (nl) — [[/Z1157]] * {{z+|Z1827}} (el) — [[/Z1827]] * <translate><!--T:147--> Indo-Iranian</translate> ** <translate><!--T:148--> Indo-Aryan</translate> *** <translate><!--T:149--> Hindustani</translate> **** {{z+|Z1820}} (hi) — [[/Z1820]] **** {{z+|Z1717}} (ur) — [[/Z1717]] *** <translate><!--T:150--> Northwestern</translate> **** <translate><!--T:151--> Punjabic</translate> ***** {{z+|Z1657}} (pa) — [[/Z1657]] ***** {{z+|Z1083}} (pnb) — [[/Z1083]] **** {{z+|Z1191}} (sd) — [[/Z1191]] *** <translate><!--T:152--> Eastern</translate> **** {{z+|Z1011}} (bn) — [[/Z1011]] **** <translate><!--T:153--> Rohingya</translate> (rhg) ***** {{z+|Z1978}} (rhg-rohg) — [[/Z1978]] ***** {{z+|Z1979}} (rhb-arab) — [[/Z1979]] ** <translate><!--T:154--> Iranian</translate> *** <translate><!--T:155--> Northwestern</translate> **** {{z+|Z1747}} (bal) — [[/Z1747]] **** {{z+|Z1556}} (ku) — [[/Z1556]] ***** {{z+|Z1288}} (ckb) — [[/Z1288]] *** {{z+|Z1728}} (fa) — [[/Z1728]] **** {{z+|Z1207}} (tg) — [[/Z1207]] **** {{z+|Z1265}} (fa-AF / prs) — [[/Z1265]] **** {{z+|Z1277}} (jpr) — [[/Z1277]] * <translate><!--T:156--> Italic</translate> ** {{z+|Z1403}} (la) — [[/Z1403]] ** <translate><!--T:157--> Romance</translate> *** <translate><!--T:158--> Continental Romance</translate> **** <translate><!--T:159--> Western Romance</translate> ***** <translate><!--T:160--> Ibero-Romance</translate> ****** {{z+|Z1037}} (pt) — [[/Z1037]] ******* {{z+|Z1381}} (pt-BR) — [[/Z1381]] ****** {{z+|Z1003}} (es) — [[/Z1003]] ***** <translate><!--T:161--> Occitano-Romance</translate> ****** {{z+|Z1789}} (ca) — [[/Z1789]] ***** <translate><!--T:162--> North Gallo-Romance</translate> ****** {{z+|Z1004}} (fr) — [[/Z1004]] ***** <translate><!--T:163--> North Italian</translate> ****** {{Z+|Z1363}} (vec) — [[/Z1363]] ****** {{z+|Z1483}} (lad) — [[/Z1483]] **** <translate><!--T:164--> South Romance</translate> ***** {{z+|Z1787}} (it) — [[/Z1787]] ***** {{z+|Z1329}} (co) — [[/Z1329]] ***** {{z+|Z1082}} (sdc) — [[/Z1082]] ***** {{z+|Z1491}} (nap) — [[/Z1491]] ***** {{z+|Z1298}} (scn) — [[/Z1298]] **** <translate><!--T:165--> Balkan romance</translate> ***** {{z+|Z1664}} (ro) — [[/Z1664]] *** <translate><!--T:166--> Island Romance</translate> **** {{z+|Z1342}} (sc) — [[/Z1342]] <translate> == Kra-Dai == <!--T:110--> </translate> * {{z+|Z1851}} (th) — [[/Z1851]] <translate> == Niger-Congo == <!--T:167--> </translate> * <translate><!--T:168--> Atlantic-Congo</translate> ** {{z+|Z1015}} (dag) — [[/Z1015]] ** <translate><!--T:169--> Volta-Congo</translate> *** <translate><!--T:170--> Volta-Niger</translate> **** {{z+|Z1014}} (ig) — [[/Z1014]] **** {{z+|Z1818}} (ya) — [[/Z1818]] *** {{z+|Z1179}} (kcg) — [[/Z1179]] <translate> == Mixed and creoles == <!--T:171--> <!--T:172--> These languages are sorted under the language it is primarily based on. </translate> * {{Z|Z1531}} ** {{z+|Z1630}} (bew) — [[/Z1630]] <translate> == Sign == <!--T:173--> </translate> * {{z+|Z1763}} (ase) — [[/Z1763]] * {{z+|Z1907}} (bzs) - [[/Z1907]] * {{z+|Z}}{{q|2107617}} (vgt) - [[/vgt]] <translate> == Sino-Tibetan == <!--T:109--> </translate> * {{z+|Z1147}} (dz) — [[/Z1147]] * <translate><!--T:174--> Sinitic</translate> ** {{z+|Z1006}} (zh) — [[/Z1006]] *** {{z+|Z1645}} (zh-hans) — [[/Z1645]] **** {{z+|Z1411}} (zh-CN) — [[/Z1411]] *** {{z+|Z1672}} (zh-hant) — [[/Z1672]] **** {{z+|Z1589}} (zh-HK) — [[/Z1589]] ** {{z+|Z1202}} (zh-yue) — [[/Z1202]] *** {{z+|Z1901}} (yue-hans) — [[/Z1901]] *** {{z+|Z1902}} (yue-hant) — [[/Z1902]] <translate> == Turkic == <!--T:112--> </translate> * <translate><!--T:175--> Oghuz</translate> ** {{z+|Z1237}} (tr) — [[/Z1237]] ** {{z+|Z1597}} (az) — [[/Z1597]] * {{z+|Z1120}} (uz) — [[/Z1120]] <translate> == Uralic == <!--T:113--> </translate> * {{z+|Z1051}} (fi) — [[/Z1051]] * {{z+|Z1513}} (hu) — [[/Z1513]] <translate> == Isolates and smaller families == <!--T:176--> </translate> * {{z+|Z1314}} (eu) — [[/Z1314]] * {{z+|Z1830}} (ja) — [[/Z1830]] ** {{z+|Z1444}} (ja-hkrt) — [[/Z1444]] ** <translate><!--T:178--> Japanese rōmaji, no ZObject</translate> (ja-latn) * {{z+|Z1643}} (ko) — [[/Z1643]] * {{z+|Z1678}} (qu) — [[/Z1678]] <translate> == Other == <!--T:177--> </translate> * {{z+|Z1360}} (mul) — [[/Z1360]] [[Category:Natural languages| mul]] [[Category:WikiProjects]] a6ox9n8wbqtcvmx2eb88p66lwtb9z2l 272387 272377 2026-05-05T05:59:10Z Arlo Barnes 1231 Welsh 272387 wikitext text/x-wiki <languages/> {{draft}} <translate> <!--T:1--> Supported by the Natural Language Generation Special Interest Group; see also <tvar name="1">{{ll|WF:PROG}}</tvar> and <tvar name="2">{{ll|WF:Catalogue/Natural language operations}}</tvar>. == Related pages == <!--T:121--> </translate> * <translate><!--T:122--> <tvar name="1">[[:Category:Natural languages]]</tvar> — List of categories for languages</translate> * <translate><!--T:123--> <tvar name="1">{{ll|Wikifunctions:Catalogue/Natural language operations}}</tvar> — Lists of natural language functions</translate> * <translate><!--T:124--> <tvar name="1">{{ll|Wikifunctions:NLG functions}}</tvar> — A table of each supported language's NLG functions</translate> ** <translate><!--T:125--> <tvar name="1">{{ll|Wikifunctions:Cardinal numbers}}</tvar> — List of each language's cardinal number functions</translate> * <translate><!--T:126--> <tvar name="1">{{ll|Wikifunctions:Reserved ZIDs/all#Z1000-Z1999}}</tvar> — List of all languages in ZObject order</translate> <translate> == Afroasiatic == <!--T:38--> </translate> * {{z+|Z1472}} (zgh) — [[/Z1472]] * {{z+|Z1013}} (ha) — [[/Z1013]] * <translate><!--T:127--> Semitic</translate> ** <translate><!--T:128--> Arabic</translate> *** {{z+|Z1001}} (ar) — [[/Z1001]] *** {{z+|Z1045}} (ary) — [[/Z1045]] *** {{z+|Z1582}} (aeb) — [[/Z1582]] ** {{z+|Z1186}} (he) — [[/Z1186]] <translate> == Austroasiatic == <!--T:69--> </translate> * {{z+|Z1048}} (vi) — [[/Z1048]] * (<translate><!--T:129--> Mundari, no code yet</translate>) (unr) <translate> == Austronesian == <!--T:70--> </translate> * <translate><!--T:130--> Malayic</translate> ** {{z+|Z1531}} (ms) — [[/Z1531]] *** {{z+|Z1434}} (ms-arab) — [[/Z1434]] ** {{z+|Z1078}} (id) — [[/Z1078]] * {{z+|Z1471}} (su) — [[/Z1471]] <translate> == Constructed == <!--T:131--> </translate> * {{z+|Z1882}} (ldn) — [[/Z1882]] * {{z+|Z1576}} (eo) — [[/Z1576]] * {{z+|Z1534}} (tlh) — [[/Z1534]] * {{z+|Z1762}} (tok) — [[/Z1762]] <translate> == Dravidian == <!--T:132--> </translate> * {{z+|Z1293}} (brh) — [[/Z1293]] * <translate><!--T:133--> South</translate> ** {{z+|Z1012}} (ml) — [[/Z1012]] ** {{z+|Z1429}} (te) — [[/Z1429]] <translate> == Indo-European == <!--T:80--> </translate> * {{z+|Z1541}} (hy) — [[/Z1541]] * <translate><!--T:134--> Balto-Slavic</translate> ** {{z+|Z1709}} (lv) — [[/Z1709]] ** <translate><!--T:135--> Slavic</translate> *** <translate><!--T:136--> East Slavic</translate> **** {{z+|Z1005}} (ru) — [[/Z1005]] **** {{z+|Z1332}} (uk) — [[/Z1332]] **** {{z+|Z1622}} (by) — [[/Z1622]] *** <translate><!--T:137--> West Slavic</translate> **** {{z+|Z1062}} (cs) — [[/Z1062]] **** {{z+|Z1025}} (pl) — [[/Z1025]] **** {{z+|Z1488}} (sk) — [[/Z1488]] *** <translate><!--T:138--> South Slavic</translate> **** {{z+|Z1823}} (bg) — [[/Z1823]] **** {{z+|Z1105}} (cu) — [[/Z1105]] **** {{z+|Z1412}} (sh) — [[/Z1412]] ***** {{z+|Z1473}} (bs) — [[/Z1473]] ***** {{z+|Z1272}} (hr) — [[/Z1272]] ***** {{z+|Z1498}} (cnr) — [[/Z1498]] ***** {{z+|Z1158}} (sr) — [[/Z1158]] **** {{z+|Z1616}} (sl) — [[/Z1616]] * <translate><!--T:139--> Celtic</translate> ** {{z+|Z1282}} (br) — [[/Z1282]] ** {{z+|Z1024}} (cy) — [[/Z1024]] ** {{z+|Z1339}} (gd) — [[/Z1282]] * <translate><!--T:140--> Germanic</translate> ** <translate><!--T:141--> North Germanic</translate> *** <translate><!--T:142--> East Scandinavian</translate> **** {{z+|Z1061}} (dk) — [[/Z1061]] **** {{z+|Z1592}} (sv) — [[/Z1592]] *** {{z+|Z1021}} (no) — [[/Z1592]] ** <translate><!--T:143--> West Germanic</translate> *** <translate><!--T:144--> North Sea</translate> **** {{z+|Z1002}} (en) — [[/Z1002]] ***** <translate><!--T:145--> North American</translate> ****** {{z+|Z1689}} (en-US) — [[/Z1689]] ****** {{z+|Z1437}} (en-CA) — [[/Z1437]] ***** {{z+|Z1113}} (en-AU) — [[/Z1113]] ***** {{z+|Z1199}} (en-GB) — [[/Z1199]] ***** {{z+|Z1966}} (en-IN) — [[/Z1966]] ***** {{z+|Z1881}} (en-x-piglatin) — [[/Z1881]] ***** {{z+|Z1124}} (en-x-simple) — [[/Z1124]] **** {{z+|Z1146}} (nds) — [[/Z1146]] *** <translate><!--T:146--> High German</translate> **** {{z+|Z1099}} (lb) — [[/Z1099]] **** {{z+|Z1430}} (de) — [[/Z1430]] *** {{z+|Z1157}} (nl) — [[/Z1157]] * {{z+|Z1827}} (el) — [[/Z1827]] * <translate><!--T:147--> Indo-Iranian</translate> ** <translate><!--T:148--> Indo-Aryan</translate> *** <translate><!--T:149--> Hindustani</translate> **** {{z+|Z1820}} (hi) — [[/Z1820]] **** {{z+|Z1717}} (ur) — [[/Z1717]] *** <translate><!--T:150--> Northwestern</translate> **** <translate><!--T:151--> Punjabic</translate> ***** {{z+|Z1657}} (pa) — [[/Z1657]] ***** {{z+|Z1083}} (pnb) — [[/Z1083]] **** {{z+|Z1191}} (sd) — [[/Z1191]] *** <translate><!--T:152--> Eastern</translate> **** {{z+|Z1011}} (bn) — [[/Z1011]] **** <translate><!--T:153--> Rohingya</translate> (rhg) ***** {{z+|Z1978}} (rhg-rohg) — [[/Z1978]] ***** {{z+|Z1979}} (rhb-arab) — [[/Z1979]] ** <translate><!--T:154--> Iranian</translate> *** <translate><!--T:155--> Northwestern</translate> **** {{z+|Z1747}} (bal) — [[/Z1747]] **** {{z+|Z1556}} (ku) — [[/Z1556]] ***** {{z+|Z1288}} (ckb) — [[/Z1288]] *** {{z+|Z1728}} (fa) — [[/Z1728]] **** {{z+|Z1207}} (tg) — [[/Z1207]] **** {{z+|Z1265}} (fa-AF / prs) — [[/Z1265]] **** {{z+|Z1277}} (jpr) — [[/Z1277]] * <translate><!--T:156--> Italic</translate> ** {{z+|Z1403}} (la) — [[/Z1403]] ** <translate><!--T:157--> Romance</translate> *** <translate><!--T:158--> Continental Romance</translate> **** <translate><!--T:159--> Western Romance</translate> ***** <translate><!--T:160--> Ibero-Romance</translate> ****** {{z+|Z1037}} (pt) — [[/Z1037]] ******* {{z+|Z1381}} (pt-BR) — [[/Z1381]] ****** {{z+|Z1003}} (es) — [[/Z1003]] ***** <translate><!--T:161--> Occitano-Romance</translate> ****** {{z+|Z1789}} (ca) — [[/Z1789]] ***** <translate><!--T:162--> North Gallo-Romance</translate> ****** {{z+|Z1004}} (fr) — [[/Z1004]] ***** <translate><!--T:163--> North Italian</translate> ****** {{Z+|Z1363}} (vec) — [[/Z1363]] ****** {{z+|Z1483}} (lad) — [[/Z1483]] **** <translate><!--T:164--> South Romance</translate> ***** {{z+|Z1787}} (it) — [[/Z1787]] ***** {{z+|Z1329}} (co) — [[/Z1329]] ***** {{z+|Z1082}} (sdc) — [[/Z1082]] ***** {{z+|Z1491}} (nap) — [[/Z1491]] ***** {{z+|Z1298}} (scn) — [[/Z1298]] **** <translate><!--T:165--> Balkan romance</translate> ***** {{z+|Z1664}} (ro) — [[/Z1664]] *** <translate><!--T:166--> Island Romance</translate> **** {{z+|Z1342}} (sc) — [[/Z1342]] <translate> == Kra-Dai == <!--T:110--> </translate> * {{z+|Z1851}} (th) — [[/Z1851]] <translate> == Niger-Congo == <!--T:167--> </translate> * <translate><!--T:168--> Atlantic-Congo</translate> ** {{z+|Z1015}} (dag) — [[/Z1015]] ** <translate><!--T:169--> Volta-Congo</translate> *** <translate><!--T:170--> Volta-Niger</translate> **** {{z+|Z1014}} (ig) — [[/Z1014]] **** {{z+|Z1818}} (ya) — [[/Z1818]] *** {{z+|Z1179}} (kcg) — [[/Z1179]] <translate> == Mixed and creoles == <!--T:171--> <!--T:172--> These languages are sorted under the language it is primarily based on. </translate> * {{Z|Z1531}} ** {{z+|Z1630}} (bew) — [[/Z1630]] <translate> == Sign == <!--T:173--> </translate> * {{z+|Z1763}} (ase) — [[/Z1763]] * {{z+|Z1907}} (bzs) - [[/Z1907]] * {{z+|Z}}{{q|2107617}} (vgt) - [[/vgt]] <translate> == Sino-Tibetan == <!--T:109--> </translate> * {{z+|Z1147}} (dz) — [[/Z1147]] * <translate><!--T:174--> Sinitic</translate> ** {{z+|Z1006}} (zh) — [[/Z1006]] *** {{z+|Z1645}} (zh-hans) — [[/Z1645]] **** {{z+|Z1411}} (zh-CN) — [[/Z1411]] *** {{z+|Z1672}} (zh-hant) — [[/Z1672]] **** {{z+|Z1589}} (zh-HK) — [[/Z1589]] ** {{z+|Z1202}} (zh-yue) — [[/Z1202]] *** {{z+|Z1901}} (yue-hans) — [[/Z1901]] *** {{z+|Z1902}} (yue-hant) — [[/Z1902]] <translate> == Turkic == <!--T:112--> </translate> * <translate><!--T:175--> Oghuz</translate> ** {{z+|Z1237}} (tr) — [[/Z1237]] ** {{z+|Z1597}} (az) — [[/Z1597]] * {{z+|Z1120}} (uz) — [[/Z1120]] <translate> == Uralic == <!--T:113--> </translate> * {{z+|Z1051}} (fi) — [[/Z1051]] * {{z+|Z1513}} (hu) — [[/Z1513]] <translate> == Isolates and smaller families == <!--T:176--> </translate> * {{z+|Z1314}} (eu) — [[/Z1314]] * {{z+|Z1830}} (ja) — [[/Z1830]] ** {{z+|Z1444}} (ja-hkrt) — [[/Z1444]] ** <translate><!--T:178--> Japanese rōmaji, no ZObject</translate> (ja-latn) * {{z+|Z1643}} (ko) — [[/Z1643]] * {{z+|Z1678}} (qu) — [[/Z1678]] <translate> == Other == <!--T:177--> </translate> * {{z+|Z1360}} (mul) — [[/Z1360]] [[Category:Natural languages| mul]] [[Category:WikiProjects]] d2466wnye8400wgdv7m53y0anw5d57h 272391 272387 2026-05-05T06:05:19Z Arlo Barnes 1231 move from [[WF:RF]] 272391 wikitext text/x-wiki <languages/> {{draft}} <translate> <!--T:1--> Supported by the Natural Language Generation Special Interest Group; see also <tvar name="1">{{ll|WF:PROG}}</tvar> and <tvar name="2">{{ll|WF:Catalogue/Natural language operations}}</tvar>. Many of these are morphological functions; morphology is the part of linguistics that studies how language parts are 'shaped' and change diachronically and when inflected. Hausa, Igbo, Malayalam, Bangla/Bengali and Dagbani are [[d:Wikidata:Lexicographical data/Focus languages|focus languages]] for Wikidata's lexicographic dataset, which is an important aspect of [[WF:glossary#Abstract Wikipedia|Abstract Wikipedia]]. == Related pages == <!--T:121--> </translate> * <translate><!--T:122--> <tvar name="1">[[:Category:Natural languages]]</tvar> — List of categories for languages</translate> * <translate><!--T:123--> <tvar name="1">{{ll|Wikifunctions:Catalogue/Natural language operations}}</tvar> — Lists of natural language functions</translate> * <translate><!--T:124--> <tvar name="1">{{ll|Wikifunctions:NLG functions}}</tvar> — A table of each supported language's NLG functions</translate> ** <translate><!--T:125--> <tvar name="1">{{ll|Wikifunctions:Cardinal numbers}}</tvar> — List of each language's cardinal number functions</translate> * <translate><!--T:126--> <tvar name="1">{{ll|Wikifunctions:Reserved ZIDs/all#Z1000-Z1999}}</tvar> — List of all languages in ZObject order</translate> <translate> == Afroasiatic == <!--T:38--> </translate> * {{z+|Z1472}} (zgh) — [[/Z1472]] * {{z+|Z1013}} (ha) — [[/Z1013]] * <translate><!--T:127--> Semitic</translate> ** <translate><!--T:128--> Arabic</translate> *** {{z+|Z1001}} (ar) — [[/Z1001]] *** {{z+|Z1045}} (ary) — [[/Z1045]] *** {{z+|Z1582}} (aeb) — [[/Z1582]] ** {{z+|Z1186}} (he) — [[/Z1186]] <translate> == Austroasiatic == <!--T:69--> </translate> * {{z+|Z1048}} (vi) — [[/Z1048]] * (<translate><!--T:129--> Mundari, no code yet</translate>) (unr) <translate> == Austronesian == <!--T:70--> </translate> * <translate><!--T:130--> Malayic</translate> ** {{z+|Z1531}} (ms) — [[/Z1531]] *** {{z+|Z1434}} (ms-arab) — [[/Z1434]] ** {{z+|Z1078}} (id) — [[/Z1078]] * {{z+|Z1471}} (su) — [[/Z1471]] <translate> == Constructed == <!--T:131--> </translate> * {{z+|Z1882}} (ldn) — [[/Z1882]] * {{z+|Z1576}} (eo) — [[/Z1576]] * {{z+|Z1534}} (tlh) — [[/Z1534]] * {{z+|Z1762}} (tok) — [[/Z1762]] <translate> == Dravidian == <!--T:132--> </translate> * {{z+|Z1293}} (brh) — [[/Z1293]] * <translate><!--T:133--> South</translate> ** {{z+|Z1012}} (ml) — [[/Z1012]] ** {{z+|Z1429}} (te) — [[/Z1429]] <translate> == Indo-European == <!--T:80--> </translate> * {{z+|Z1541}} (hy) — [[/Z1541]] * <translate><!--T:134--> Balto-Slavic</translate> ** {{z+|Z1709}} (lv) — [[/Z1709]] ** <translate><!--T:135--> Slavic</translate> *** <translate><!--T:136--> East Slavic</translate> **** {{z+|Z1005}} (ru) — [[/Z1005]] **** {{z+|Z1332}} (uk) — [[/Z1332]] **** {{z+|Z1622}} (by) — [[/Z1622]] *** <translate><!--T:137--> West Slavic</translate> **** {{z+|Z1062}} (cs) — [[/Z1062]] **** {{z+|Z1025}} (pl) — [[/Z1025]] **** {{z+|Z1488}} (sk) — [[/Z1488]] *** <translate><!--T:138--> South Slavic</translate> **** {{z+|Z1823}} (bg) — [[/Z1823]] **** {{z+|Z1105}} (cu) — [[/Z1105]] **** {{z+|Z1412}} (sh) — [[/Z1412]] ***** {{z+|Z1473}} (bs) — [[/Z1473]] ***** {{z+|Z1272}} (hr) — [[/Z1272]] ***** {{z+|Z1498}} (cnr) — [[/Z1498]] ***** {{z+|Z1158}} (sr) — [[/Z1158]] **** {{z+|Z1616}} (sl) — [[/Z1616]] * <translate><!--T:139--> Celtic</translate> ** {{z+|Z1282}} (br) — [[/Z1282]] ** {{z+|Z1024}} (cy) — [[/Z1024]] ** {{z+|Z1339}} (gd) — [[/Z1282]] * <translate><!--T:140--> Germanic</translate> ** <translate><!--T:141--> North Germanic</translate> *** <translate><!--T:142--> East Scandinavian</translate> **** {{z+|Z1061}} (dk) — [[/Z1061]] **** {{z+|Z1592}} (sv) — [[/Z1592]] *** {{z+|Z1021}} (no) — [[/Z1592]] ** <translate><!--T:143--> West Germanic</translate> *** <translate><!--T:144--> North Sea</translate> **** {{z+|Z1002}} (en) — [[/Z1002]] ***** <translate><!--T:145--> North American</translate> ****** {{z+|Z1689}} (en-US) — [[/Z1689]] ****** {{z+|Z1437}} (en-CA) — [[/Z1437]] ***** {{z+|Z1113}} (en-AU) — [[/Z1113]] ***** {{z+|Z1199}} (en-GB) — [[/Z1199]] ***** {{z+|Z1966}} (en-IN) — [[/Z1966]] ***** {{z+|Z1881}} (en-x-piglatin) — [[/Z1881]] ***** {{z+|Z1124}} (en-x-simple) — [[/Z1124]] **** {{z+|Z1146}} (nds) — [[/Z1146]] *** <translate><!--T:146--> High German</translate> **** {{z+|Z1099}} (lb) — [[/Z1099]] **** {{z+|Z1430}} (de) — [[/Z1430]] *** {{z+|Z1157}} (nl) — [[/Z1157]] * {{z+|Z1827}} (el) — [[/Z1827]] * <translate><!--T:147--> Indo-Iranian</translate> ** <translate><!--T:148--> Indo-Aryan</translate> *** <translate><!--T:149--> Hindustani</translate> **** {{z+|Z1820}} (hi) — [[/Z1820]] **** {{z+|Z1717}} (ur) — [[/Z1717]] *** <translate><!--T:150--> Northwestern</translate> **** <translate><!--T:151--> Punjabic</translate> ***** {{z+|Z1657}} (pa) — [[/Z1657]] ***** {{z+|Z1083}} (pnb) — [[/Z1083]] **** {{z+|Z1191}} (sd) — [[/Z1191]] *** <translate><!--T:152--> Eastern</translate> **** {{z+|Z1011}} (bn) — [[/Z1011]] **** <translate><!--T:153--> Rohingya</translate> (rhg) ***** {{z+|Z1978}} (rhg-rohg) — [[/Z1978]] ***** {{z+|Z1979}} (rhb-arab) — [[/Z1979]] ** <translate><!--T:154--> Iranian</translate> *** <translate><!--T:155--> Northwestern</translate> **** {{z+|Z1747}} (bal) — [[/Z1747]] **** {{z+|Z1556}} (ku) — [[/Z1556]] ***** {{z+|Z1288}} (ckb) — [[/Z1288]] *** {{z+|Z1728}} (fa) — [[/Z1728]] **** {{z+|Z1207}} (tg) — [[/Z1207]] **** {{z+|Z1265}} (fa-AF / prs) — [[/Z1265]] **** {{z+|Z1277}} (jpr) — [[/Z1277]] * <translate><!--T:156--> Italic</translate> ** {{z+|Z1403}} (la) — [[/Z1403]] ** <translate><!--T:157--> Romance</translate> *** <translate><!--T:158--> Continental Romance</translate> **** <translate><!--T:159--> Western Romance</translate> ***** <translate><!--T:160--> Ibero-Romance</translate> ****** {{z+|Z1037}} (pt) — [[/Z1037]] ******* {{z+|Z1381}} (pt-BR) — [[/Z1381]] ****** {{z+|Z1003}} (es) — [[/Z1003]] ***** <translate><!--T:161--> Occitano-Romance</translate> ****** {{z+|Z1789}} (ca) — [[/Z1789]] ***** <translate><!--T:162--> North Gallo-Romance</translate> ****** {{z+|Z1004}} (fr) — [[/Z1004]] ***** <translate><!--T:163--> North Italian</translate> ****** {{Z+|Z1363}} (vec) — [[/Z1363]] ****** {{z+|Z1483}} (lad) — [[/Z1483]] **** <translate><!--T:164--> South Romance</translate> ***** {{z+|Z1787}} (it) — [[/Z1787]] ***** {{z+|Z1329}} (co) — [[/Z1329]] ***** {{z+|Z1082}} (sdc) — [[/Z1082]] ***** {{z+|Z1491}} (nap) — [[/Z1491]] ***** {{z+|Z1298}} (scn) — [[/Z1298]] **** <translate><!--T:165--> Balkan romance</translate> ***** {{z+|Z1664}} (ro) — [[/Z1664]] *** <translate><!--T:166--> Island Romance</translate> **** {{z+|Z1342}} (sc) — [[/Z1342]] <translate> == Kra-Dai == <!--T:110--> </translate> * {{z+|Z1851}} (th) — [[/Z1851]] <translate> == Niger-Congo == <!--T:167--> </translate> * <translate><!--T:168--> Atlantic-Congo</translate> ** {{z+|Z1015}} (dag) — [[/Z1015]] ** <translate><!--T:169--> Volta-Congo</translate> *** <translate><!--T:170--> Volta-Niger</translate> **** {{z+|Z1014}} (ig) — [[/Z1014]] **** {{z+|Z1818}} (ya) — [[/Z1818]] *** {{z+|Z1179}} (kcg) — [[/Z1179]] <translate> == Mixed and creoles == <!--T:171--> <!--T:172--> These languages are sorted under the language it is primarily based on. </translate> * {{Z|Z1531}} ** {{z+|Z1630}} (bew) — [[/Z1630]] <translate> == Sign == <!--T:173--> </translate> * {{z+|Z1763}} (ase) — [[/Z1763]] * {{z+|Z1907}} (bzs) - [[/Z1907]] * {{z+|Z}}{{q|2107617}} (vgt) - [[/vgt]] <translate> == Sino-Tibetan == <!--T:109--> </translate> * {{z+|Z1147}} (dz) — [[/Z1147]] * <translate><!--T:174--> Sinitic</translate> ** {{z+|Z1006}} (zh) — [[/Z1006]] *** {{z+|Z1645}} (zh-hans) — [[/Z1645]] **** {{z+|Z1411}} (zh-CN) — [[/Z1411]] *** {{z+|Z1672}} (zh-hant) — [[/Z1672]] **** {{z+|Z1589}} (zh-HK) — [[/Z1589]] ** {{z+|Z1202}} (zh-yue) — [[/Z1202]] *** {{z+|Z1901}} (yue-hans) — [[/Z1901]] *** {{z+|Z1902}} (yue-hant) — [[/Z1902]] <translate> == Turkic == <!--T:112--> </translate> * <translate><!--T:175--> Oghuz</translate> ** {{z+|Z1237}} (tr) — [[/Z1237]] ** {{z+|Z1597}} (az) — [[/Z1597]] * {{z+|Z1120}} (uz) — [[/Z1120]] <translate> == Uralic == <!--T:113--> </translate> * {{z+|Z1051}} (fi) — [[/Z1051]] * {{z+|Z1513}} (hu) — [[/Z1513]] <translate> == Isolates and smaller families == <!--T:176--> </translate> * {{z+|Z1314}} (eu) — [[/Z1314]] * {{z+|Z1830}} (ja) — [[/Z1830]] ** {{z+|Z1444}} (ja-hkrt) — [[/Z1444]] ** <translate><!--T:178--> Japanese rōmaji, no ZObject</translate> (ja-latn) * {{z+|Z1643}} (ko) — [[/Z1643]] * {{z+|Z1678}} (qu) — [[/Z1678]] <translate> == Other == <!--T:177--> </translate> * {{z+|Z1360}} (mul) — [[/Z1360]] [[Category:Natural languages| mul]] [[Category:WikiProjects]] fbu2wci8q9wk5hpwwywalh4aouvv4jp Wikifunctions:Programming languages 4 24444 272397 195682 2026-05-05T06:33:37Z Arlo Barnes 1231 link subpages 272397 wikitext text/x-wiki <languages/> {{shortcut|[[WF:PROG]]}}<!--{{distinguish|WF:HL}}--> <translate> <!--T:1--> See also <tvar name="1">{{ll|Wikifunctions:Human languages}}</tvar> and [[w:en:Lists of programming languages|Lists of programming languages]] in Wikipedia. [[<tvar name="2">Special:MyLanguage/WF:glossary#composition</tvar>|Compositions]] are a kind of language, but aren't covered here. == Executable == <!--T:2--> === Implemented === <!--T:3--> <!--T:4--> As of March 2024 the following languages compile to [[<tvar name="1">meta:Special:MyLanguage/Abstract Wikipedia/Updates/2023-10-25</tvar>|WASM]] to be run by the [[<tvar name="2">Special:MyLanguage/WF:glossary#executor</tvar>|executor]]: </translate> * <translate><!--T:5--> unversioned [[WF:JS|JavaScript]] ([<tvar name="1">https://ecma-international.org/policies/by-ipr/ecma-text-copyright-policy</tvar> W3C Software and Document Notice and License], [<tvar name="2">https://hacks.mozilla.org/2022/06/the-specification-for-javascript-has-a-new-license</tvar> src]), using [<tvar name="3">https://github.com/second-state/wasmedge-quickjs</tvar> WasmEdge-QuickJS] (using [<tvar name="4">https://bellard.org/quickjs/</tvar> QuickJS 2024], compatible with ES2023)</translate> * <translate><!--T:6--> unversioned [[WF:PY|Python]] ([<tvar name="1">https://docs.python.org/3/license.html</tvar> PSF License Agreement], Zero-Clause BSD), using the development version of [<tvar name="2">https://github.com/RustPython/RustPython</tvar> RustPython] WASI mode (this is intended to be compatible with CPython 3.12)</translate> <translate> === Planned === <!--T:7--> </translate> * <translate><!--T:8--> versioned JavaScript (ECMA202?+)</translate> * <translate><!--T:9--> versioned Python (3+)</translate> <translate> === Requested === <!--T:10--> <!--T:11--> See the [[<tvar name="1">phab:tag/wikifunctions-new-language-requests</tvar>|workboard in Phabricator]] to request additional programming languages that should be supported in Wikifunctions. Among other criteria for implementation, available language interpreter/compiler software must be freely licensed. </translate> * <translate><!--T:12--> <tvar name="1">[[phab:T352589|T352589]]</tvar>: LabView/G<!--[<tvar name="2">https://ni.com/en/support/downloads/activate.html</tvar> proprietary]--> via pyLabView ([<tvar name="3">https://github.com/mefistotelis/pylabview/blob/master/LICENSE</tvar> MIT])</translate> * <translate><!--T:13--> <tvar name="1">[[phab:T352588|T352588]]</tvar>: Kotlin ([<tvar name="2">https://github.com/JetBrains/kotlin-web-site/blob/master/LICENSE</tvar> Apache])</translate> * <translate><!--T:14--> <tvar name="1">[[phab:T307171|T307171]]</tvar>: Lua ([<tvar name="2">https://lua.org/license.html</tvar> MIT])</translate> * <translate><!--T:15--> <tvar name="1">[[phab:T301418|T301418]]</tvar>: Scratch/Snap!/Logolike ([<tvar name="2">https://github.com/scratchfoundation/scratch-gui/blob/develop/LICENSE</tvar> BSD 3-Clause], GPLv2 and Scratch Source Code License)</translate> * <translate><!--T:16--> <tvar name="1">[[phab:T298633|T298633]]</tvar>: Vlojure ([<tvar name="2">https://github.com/Ella-Hoeppner/Vlojure/blob/main/LICENSE</tvar> MIT])</translate> <translate> === Former === <!--T:17--> <!--T:18--> Previously, the function evaluator directly ran code in its container. Because it was based on Debian Bullseye, JavaScript execution was provided by Node.js 16 and Python by Python 3.9. These are no longer immediately available due to the re-build onto Web Assembler, but could return if needed via a custom build. == Functions for manipulating == <!--T:19--> </translate> * {{ll|WF:Mathematica}} [[Category:Project{{#translation:}}]] soq7fcihoovnu721jnhaxviug7kpt6p 272401 272397 2026-05-05T06:38:06Z Arlo Barnes 1231 implementations cat 272401 wikitext text/x-wiki <languages/> {{shortcut|[[WF:PROG]]}}<!--{{distinguish|WF:HL}}--> <translate> <!--T:1--> {{see also|category:implementations}} <tvar name="1">{{ll|Wikifunctions:Human languages}}</tvar> and [[w:en:Lists of programming languages|Lists of programming languages]] in Wikipedia. [[<tvar name="2">Special:MyLanguage/WF:glossary#composition</tvar>|Compositions]] are a kind of language, but aren't covered here. == Executable == <!--T:2--> === Implemented === <!--T:3--> <!--T:4--> As of March 2024 the following languages compile to [[<tvar name="1">meta:Special:MyLanguage/Abstract Wikipedia/Updates/2023-10-25</tvar>|WASM]] to be run by the [[<tvar name="2">Special:MyLanguage/WF:glossary#executor</tvar>|executor]]: </translate> * <translate><!--T:5--> unversioned [[WF:JS|JavaScript]] ([<tvar name="1">https://ecma-international.org/policies/by-ipr/ecma-text-copyright-policy</tvar> W3C Software and Document Notice and License], [<tvar name="2">https://hacks.mozilla.org/2022/06/the-specification-for-javascript-has-a-new-license</tvar> src]), using [<tvar name="3">https://github.com/second-state/wasmedge-quickjs</tvar> WasmEdge-QuickJS] (using [<tvar name="4">https://bellard.org/quickjs/</tvar> QuickJS 2024], compatible with ES2023)</translate> * <translate><!--T:6--> unversioned [[WF:PY|Python]] ([<tvar name="1">https://docs.python.org/3/license.html</tvar> PSF License Agreement], Zero-Clause BSD), using the development version of [<tvar name="2">https://github.com/RustPython/RustPython</tvar> RustPython] WASI mode (this is intended to be compatible with CPython 3.12)</translate> <translate> === Planned === <!--T:7--> </translate> * <translate><!--T:8--> versioned JavaScript (ECMA202?+)</translate> * <translate><!--T:9--> versioned Python (3+)</translate> <translate> === Requested === <!--T:10--> <!--T:11--> See the [[<tvar name="1">phab:tag/wikifunctions-new-language-requests</tvar>|workboard in Phabricator]] to request additional programming languages that should be supported in Wikifunctions. Among other criteria for implementation, available language interpreter/compiler software must be freely licensed. </translate> * <translate><!--T:12--> <tvar name="1">[[phab:T352589|T352589]]</tvar>: LabView/G<!--[<tvar name="2">https://ni.com/en/support/downloads/activate.html</tvar> proprietary]--> via pyLabView ([<tvar name="3">https://github.com/mefistotelis/pylabview/blob/master/LICENSE</tvar> MIT])</translate> * <translate><!--T:13--> <tvar name="1">[[phab:T352588|T352588]]</tvar>: Kotlin ([<tvar name="2">https://github.com/JetBrains/kotlin-web-site/blob/master/LICENSE</tvar> Apache])</translate> * <translate><!--T:14--> <tvar name="1">[[phab:T307171|T307171]]</tvar>: Lua ([<tvar name="2">https://lua.org/license.html</tvar> MIT])</translate> * <translate><!--T:15--> <tvar name="1">[[phab:T301418|T301418]]</tvar>: Scratch/Snap!/Logolike ([<tvar name="2">https://github.com/scratchfoundation/scratch-gui/blob/develop/LICENSE</tvar> BSD 3-Clause], GPLv2 and Scratch Source Code License)</translate> * <translate><!--T:16--> <tvar name="1">[[phab:T298633|T298633]]</tvar>: Vlojure ([<tvar name="2">https://github.com/Ella-Hoeppner/Vlojure/blob/main/LICENSE</tvar> MIT])</translate> <translate> === Former === <!--T:17--> <!--T:18--> Previously, the function evaluator directly ran code in its container. Because it was based on Debian Bullseye, JavaScript execution was provided by Node.js 16 and Python by Python 3.9. These are no longer immediately available due to the re-build onto Web Assembler, but could return if needed via a custom build. == Functions for manipulating == <!--T:19--> </translate> * {{ll|WF:Mathematica}} [[Category:Project{{#translation:}}]] taqs6tl5d410v37i806x38kj60nm36t 272402 272401 2026-05-05T06:39:59Z Arlo Barnes 1231 unordered list 272402 wikitext text/x-wiki <languages/> {{shortcut|[[WF:PROG]]}}<!--{{distinguish|WF:HL}}--> <translate> <!--T:1--> {{see also|category:implementations|}} * <tvar name="1">{{ll|WF:Human languages}}</tvar> * [[w:en:Lists of programming languages|Lists of programming languages]] at English Wikipedia. * [[<tvar name="2">Special:MyLanguage/WF:glossary#composition</tvar>|Compositions]] are a kind of LISPish language, but aren't covered here. == Executable == <!--T:2--> === Implemented === <!--T:3--> <!--T:4--> As of March 2024 the following languages compile to [[<tvar name="1">meta:Special:MyLanguage/Abstract Wikipedia/Updates/2023-10-25</tvar>|WASM]] to be run by the [[<tvar name="2">Special:MyLanguage/WF:glossary#executor</tvar>|executor]]: </translate> * <translate><!--T:5--> unversioned [[WF:JS|JavaScript]] ([<tvar name="1">https://ecma-international.org/policies/by-ipr/ecma-text-copyright-policy</tvar> W3C Software and Document Notice and License], [<tvar name="2">https://hacks.mozilla.org/2022/06/the-specification-for-javascript-has-a-new-license</tvar> src]), using [<tvar name="3">https://github.com/second-state/wasmedge-quickjs</tvar> WasmEdge-QuickJS] (using [<tvar name="4">https://bellard.org/quickjs/</tvar> QuickJS 2024], compatible with ES2023)</translate> * <translate><!--T:6--> unversioned [[WF:PY|Python]] ([<tvar name="1">https://docs.python.org/3/license.html</tvar> PSF License Agreement], Zero-Clause BSD), using the development version of [<tvar name="2">https://github.com/RustPython/RustPython</tvar> RustPython] WASI mode (this is intended to be compatible with CPython 3.12)</translate> <translate> === Planned === <!--T:7--> </translate> * <translate><!--T:8--> versioned JavaScript (ECMA202?+)</translate> * <translate><!--T:9--> versioned Python (3+)</translate> <translate> === Requested === <!--T:10--> <!--T:11--> See the [[<tvar name="1">phab:tag/wikifunctions-new-language-requests</tvar>|workboard in Phabricator]] to request additional programming languages that should be supported in Wikifunctions. Among other criteria for implementation, available language interpreter/compiler software must be freely licensed. </translate> * <translate><!--T:12--> <tvar name="1">[[phab:T352589|T352589]]</tvar>: LabView/G<!--[<tvar name="2">https://ni.com/en/support/downloads/activate.html</tvar> proprietary]--> via pyLabView ([<tvar name="3">https://github.com/mefistotelis/pylabview/blob/master/LICENSE</tvar> MIT])</translate> * <translate><!--T:13--> <tvar name="1">[[phab:T352588|T352588]]</tvar>: Kotlin ([<tvar name="2">https://github.com/JetBrains/kotlin-web-site/blob/master/LICENSE</tvar> Apache])</translate> * <translate><!--T:14--> <tvar name="1">[[phab:T307171|T307171]]</tvar>: Lua ([<tvar name="2">https://lua.org/license.html</tvar> MIT])</translate> * <translate><!--T:15--> <tvar name="1">[[phab:T301418|T301418]]</tvar>: Scratch/Snap!/Logolike ([<tvar name="2">https://github.com/scratchfoundation/scratch-gui/blob/develop/LICENSE</tvar> BSD 3-Clause], GPLv2 and Scratch Source Code License)</translate> * <translate><!--T:16--> <tvar name="1">[[phab:T298633|T298633]]</tvar>: Vlojure ([<tvar name="2">https://github.com/Ella-Hoeppner/Vlojure/blob/main/LICENSE</tvar> MIT])</translate> <translate> === Former === <!--T:17--> <!--T:18--> Previously, the function evaluator directly ran code in its container. Because it was based on Debian Bullseye, JavaScript execution was provided by Node.js 16 and Python by Python 3.9. These are no longer immediately available due to the re-build onto Web Assembler, but could return if needed via a custom build. == Functions for manipulating == <!--T:19--> </translate> * {{ll|WF:Mathematica}} [[Category:Project{{#translation:}}]] 35h6fq1ut04biy3yu08v2skxuqqlck9 Z15121 0 28272 272262 270959 2026-05-04T17:31:49Z WikiLambda system 3 Updated the implementation list (see [[Help:Wikifunctions/Implementation_ordering_and_choosing|About implementation selection]]) 272262 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z15121" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z13518", "Z17K2": "Z15121K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "number to test" }, { "Z1K1": "Z11", "Z11K1": "Z1014", "Z11K2": "nọmba iji nwalee" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "nombre à tester" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "numero" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Zahl" } ] } } ], "Z8K2": "Z40", "Z8K3": [ "Z20", "Z15123", "Z15124", "Z15125" ], "Z8K4": [ "Z14", "Z24446", "Z15122", "Z15126" ], "Z8K5": "Z15121" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "is odious number" }, { "Z1K1": "Z11", "Z11K1": "Z1014", "Z11K2": "bụ ọnụọgụgụ jọgburu onwe ya" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "est-ce un nombre odieux ?" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "è numero odioso" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "ist abscheuliche Zahl" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "renvoie \"vrai\" si le nombre donné est un nombre odieux, sinon \"faux\"" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "Controlla se il numero di 1 nella rappresentazione binaria è dispari" } ] } } 3kc57mxilyi3jsrti63oy3ptthh83r2 Wikifunctions:Human languages/Z1763 4 29834 272390 227780 2026-05-05T06:03:19Z Arlo Barnes 1231 /* ase-Sgnw */ move from [[WF:RF]] 272390 wikitext text/x-wiki [[file:ase-ILY@Side-PalmForward.stl|thumb]] {{z+|Z1763}} == ase-Sgnw == Because a written mode is the main way Wikifunctions could interface with ASL. * string: Stokoe to ase-[https://github.com/sutton-signwriting/core Sgnw] and vice-versa (consult {{ping|Slevinski}} as to best approach) * {{z+|Z29248}} * {{z+|Z29150}} * {{z+|Z29270}} === [[WF:importing]] === Here are functions in the <code>[https://github.com/sutton-signwriting/core core]</code> package ([[commons:category:videos by Steve Slevinski|src]]), not all linguistically relevant: * convert * fsw ** re ** parse ** compose ** info ** columns ** isType ** colorize * fswquery ** re ** parse ** compose ** fsw2query ** range ** regex ** results ** lines * swu ** re ** parse ** compose ** info ** columns ** encode ** decode ** pair ** isType ** colorize * swuquery ** re ** parse ** compose ** swu2query ** range ** symbolRanges ** regex ** results ** lines * style ** re ** parse ** compose pu847nrj7918dw4qx0665nn0bwktbte Z17402 0 32862 272383 260265 2026-05-05T05:53:44Z YeBoy371 5561 272383 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z17402" }, "Z2K2": { "Z1K1": "Z4", "Z4K1": "Z17402", "Z4K2": [ "Z3", { "Z1K1": "Z3", "Z3K1": "Z17402", "Z3K2": "Z17402K1", "Z3K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "identity" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Identität" }, { "Z1K1": "Z11", "Z11K1": "Z1186", "Z11K2": "זהות" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "identité" }, { "Z1K1": "Z11", "Z11K1": "Z1001", "Z11K2": "هوية" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "identità" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "identitas" }, { "Z1K1": "Z11", "Z11K1": "Z1181", "Z11K2": "идентитет" }, { "Z1K1": "Z11", "Z11K1": "Z1820", "Z11K2": "पहचान" } ] }, "Z3K4": { "Z1K1": "Z40", "Z40K1": "Z41" } } ], "Z4K3": "Z101", "Z4K4": "Z17414", "Z4K5": "Z24041", "Z4K7": [ "Z46", "Z17410", "Z17411" ], "Z4K8": [ "Z64", "Z17412", "Z17413" ] }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Day of the week" }, { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "সপ্তাহের দিন" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Wochentag" }, { "Z1K1": "Z11", "Z11K1": "Z1186", "Z11K2": "יום בשבוע" }, { "Z1K1": "Z11", "Z11K1": "Z1827", "Z11K2": "ημέρα της εβδομάδας" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "Den v týdnu" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "jour de la semaine" }, { "Z1K1": "Z11", "Z11K1": "Z1282", "Z11K2": "devezh ar sizhun" }, { "Z1K1": "Z11", "Z11K1": "Z1547", "Z11K2": "Día de la semana" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "Hari dalam minggu" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "Giorno della settimana" }, { "Z1K1": "Z11", "Z11K1": "Z1381", "Z11K2": "Dia da semana" }, { "Z1K1": "Z11", "Z11K1": "Z1709", "Z11K2": "Nedēļas diena" }, { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "Veckodag" }, { "Z1K1": "Z11", "Z11K1": "Z1037", "Z11K2": "Dia da semana" }, { "Z1K1": "Z11", "Z11K1": "Z1099", "Z11K2": "Wochendag" }, { "Z1K1": "Z11", "Z11K1": "Z1015", "Z11K2": "Dakulo puuni dabisili" }, { "Z1K1": "Z11", "Z11K1": "Z1664", "Z11K2": "Zi a săptămânii" }, { "Z1K1": "Z11", "Z11K1": "Z1005", "Z11K2": "День недели" }, { "Z1K1": "Z11", "Z11K1": "Z1001", "Z11K2": "يوم الأسبوع" }, { "Z1K1": "Z11", "Z11K1": "Z1051", "Z11K2": "viikonpäivä" }, { "Z1K1": "Z11", "Z11K1": "Z1181", "Z11K2": "дан у недељи" }, { "Z1K1": "Z11", "Z11K1": "Z1394", "Z11K2": "dan u nedelji" }, { "Z1K1": "Z11", "Z11K1": "Z1820", "Z11K2": "हफ्ते का दिन" }, { "Z1K1": "Z11", "Z11K1": "Z1061", "Z11K2": "Ugedag" }, { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": "曜日" }, { "Z1K1": "Z11", "Z11K1": "Z1237", "Z11K2": "haftanın günü" }, { "Z1K1": "Z11", "Z11K1": "Z1531", "Z11K2": "Hari minggu" }, { "Z1K1": "Z11", "Z11K1": "Z1643", "Z11K2": "요일" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1186", "Z31K2": [ "Z6", "יום (שבוע)", "יום (שבועי)" ] }, { "Z1K1": "Z31", "Z31K1": "Z1430", "Z31K2": [ "Z6", "Tag der Woche" ] }, { "Z1K1": "Z31", "Z31K1": "Z1062", "Z31K2": [ "Z6", "den týdne" ] }, { "Z1K1": "Z31", "Z31K1": "Z1078", "Z31K2": [ "Z6", "nama hari" ] }, { "Z1K1": "Z31", "Z31K1": "Z1820", "Z31K2": [ "Z6", "सप्ताह का दिन" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "The seven days of the week in many calendars" }, { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "অধিকাংশ বর্ষপঞ্জি অনুযায়ী সপ্তাহের সাত দিন" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "sieben Wochentage in vielen Kalendern" }, { "Z1K1": "Z11", "Z11K1": "Z1186", "Z11K2": "טיפוס שערכו הוא אחד מתוך שבעת ימות השבוע" }, { "Z1K1": "Z11", "Z11K1": "Z1827", "Z11K2": "οι επτά ημέρες της εβδομάδας σε πολλά ημερολόγια\n" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "jeden ze sedmi dnů tvořících týden v mnoha kalendářích" }, { "Z1K1": "Z11", "Z11K1": "Z1547", "Z11K2": "Los siete días de la semana en muchos calendarios" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "Salah satu dari tujuh hari dalam banyak kalender" }, { "Z1K1": "Z11", "Z11K1": "Z1381", "Z11K2": "Os sete dias da semana em muitos calendários" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "les sept jours de la semaine dans de nombreux calendriers" }, { "Z1K1": "Z11", "Z11K1": "Z1015", "Z11K2": "Dabaa' ayopoi m-be dakulo puuni" }, { "Z1K1": "Z11", "Z11K1": "Z1664", "Z11K2": "Cele șapte zile ale săptămânii din multe calendare" }, { "Z1K1": "Z11", "Z11K1": "Z1001", "Z11K2": "يوم من الأيام السبعة في الأسبوع" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "Uno dei 7 giorni della settimana in numerosi calendari" }, { "Z1K1": "Z11", "Z11K1": "Z1820", "Z11K2": "कई पंचांगों में हफ्ते के सात दिन" }, { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": "多くの暦(カレンダー)における、一週間の7つの曜日" }, { "Z1K1": "Z11", "Z11K1": "Z1531", "Z11K2": "Nama bagi tujuh hari dalam seminggu dalam pelbagai kalendar" }, { "Z1K1": "Z11", "Z11K1": "Z1643", "Z11K2": "많은 달력에서의 일주일의 7일" } ] } } qzqnhsf1q4tv2ayqqxbva5g8twbgf1g Wikifunctions:Python implementations 4 35115 272395 255473 2026-05-05T06:31:51Z Arlo Barnes 1231 main and see also and shortcut 272395 wikitext text/x-wiki {{main|WF:PROG}}{{see also|WF:JS}}{{shortcut|[[WF:PY]]}} You can do most things that work in [https://github.com/RustPython/RustPython Rustpython] which is used under the hood. :"RustPython is in development, and while the interpreter certainly can be used in interesting use cases like running Python in WASM and embedding into a Rust project, do note that RustPython is not totally production-ready." [https://github.com/RustPython/RustPython?tab=readme-ov-file source] See https://rustpython.github.io/pages/whats-left for an overview of missing built-in modules. == Error handling == See [[meta:Abstract_Wikipedia/Representation_of_errors]] == Open questions as of October 2024== * How to cast a string to a {{z|Z6091}}? (raised in telegram) == Known limitations as of October 2024 == === Modules === Only built-in python modules in RustPython is supported (installation of modules is not supported) This is by design to avoid reproducibility issues and bugs caused by different module versions. === HTTP connections === Disabled by design for security and reproducibility reasons. * the built-in module http.client does not work. Because of that it is currently not possible to make ANY HTTP requests from implementations. See https://phabricator.wikimedia.org/T371484 plp9a07rjm1xlgn30np1dg5o0t2ni4f 272404 272395 2026-05-05T06:42:34Z Arlo Barnes 1231 category 272404 wikitext text/x-wiki {{main|WF:PROG}}{{see also|WF:JS}}{{shortcut|[[WF:PY]]}} You can do most things that work in [https://github.com/RustPython/RustPython Rustpython] which is used under the hood. :"RustPython is in development, and while the interpreter certainly can be used in interesting use cases like running Python in WASM and embedding into a Rust project, do note that RustPython is not totally production-ready." [https://github.com/RustPython/RustPython?tab=readme-ov-file source] See https://rustpython.github.io/pages/whats-left for an overview of missing built-in modules. == Error handling == See [[meta:Abstract_Wikipedia/Representation_of_errors]] == Open questions as of October 2024== * How to cast a string to a {{z|Z6091}}? (raised in telegram) == Known limitations as of October 2024 == === Modules === Only built-in python modules in RustPython is supported (installation of modules is not supported) This is by design to avoid reproducibility issues and bugs caused by different module versions. === HTTP connections === Disabled by design for security and reproducibility reasons. * the built-in module http.client does not work. Because of that it is currently not possible to make ANY HTTP requests from implementations. See https://phabricator.wikimedia.org/T371484 [[category:Python_implementations]] b8jhf0ugzjjde6xrsjxzejwsb41l188 272405 272404 2026-05-05T06:42:58Z Arlo Barnes 1231 sortkeu 272405 wikitext text/x-wiki {{main|WF:PROG}}{{see also|WF:JS}}{{shortcut|[[WF:PY]]}} You can do most things that work in [https://github.com/RustPython/RustPython Rustpython] which is used under the hood. :"RustPython is in development, and while the interpreter certainly can be used in interesting use cases like running Python in WASM and embedding into a Rust project, do note that RustPython is not totally production-ready." [https://github.com/RustPython/RustPython?tab=readme-ov-file source] See https://rustpython.github.io/pages/whats-left for an overview of missing built-in modules. == Error handling == See [[meta:Abstract_Wikipedia/Representation_of_errors]] == Open questions as of October 2024== * How to cast a string to a {{z|Z6091}}? (raised in telegram) == Known limitations as of October 2024 == === Modules === Only built-in python modules in RustPython is supported (installation of modules is not supported) This is by design to avoid reproducibility issues and bugs caused by different module versions. === HTTP connections === Disabled by design for security and reproducibility reasons. * the built-in module http.client does not work. Because of that it is currently not possible to make ANY HTTP requests from implementations. See https://phabricator.wikimedia.org/T371484 [[category:Python implementations| ]] 4if3l1dtbbavhq9rs6y267an9khjxfm Z18766 0 37184 272312 272006 2026-05-04T19:35:27Z Arlo Barnes 1231 en aliases 272312 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z18766" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z18766K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "potential lipogram" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "potenzielles Leipogramm" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z18766K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "string of excluded lowercase characters" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "ausgelassene Zeichen in Kleinbuchstaben" } ] } } ], "Z8K2": "Z40", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14", "Z18767" ], "Z8K5": "Z18766" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "is lipogram" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "ist Leipogramm" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "lipogram?", "oulipogram?", "is oulipogram" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "verify if a string that excludes one or more letters of the alphabet." }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "prüft, ob eine Zeichenkette einen oder mehrere Buchstaben des Alphabets auslässt" } ] } } 35ioaukd4nymc7mp6r8ot029kjmz067 Z19170 0 40968 272360 271866 2026-05-04T21:13:15Z YoshiRulz 10156 Added Z34707 to the approved list of implementations 272360 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z19170" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z19170K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "string to test for double letter" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "zu prüfende Zeichenkette" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "chaîne pour tester la double lettre" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "stringa" } ] } } ], "Z8K2": "Z40", "Z8K3": [ "Z20", "Z19171", "Z19172", "Z19173", "Z19174", "Z19176" ], "Z8K4": [ "Z14", "Z19175", "Z25748", "Z34708", "Z34707" ], "Z8K5": "Z19170" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "has double letter" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "hat doppelten Buchstaben" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "y a-t-il une lettre en double ?" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "ha lettera doppia" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "double letter", "repeat letter", "twice in a row", "duplicate letter in a row", "two of the same letter in a row" ] }, { "Z1K1": "Z31", "Z31K1": "Z1430", "Z31K2": [ "Z6", "doppelter Buchstabe", "wiederholter Buchstabe", "zwei mal in Folge", "selber Buchstaben in Folge" ] }, { "Z1K1": "Z31", "Z31K1": "Z1787", "Z31K2": [ "Z6", "con lettera doppia", "lettera duplicata", "doppia", "ha doppia", "lettera si ripete", "ha ripetizione" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "tests whether the string has any letter (case sensitive) used twice in a row" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "prüft, ob in der Zeichenkette ein Buchstabe (Groß- und Kleinschreibung beachtend) zwei mal in Folge auftaucht" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "renvoie \"vrai\" si une chaîne a une lettre utilisé deux fois de suite (insensible à la casse), sinon \"faux\"" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "Controlla se una stringa ha una lettera ripetuta due volte consecutive (maiuscole e minuscole sono considerate diverse)" } ] } } is3pgn2gxrx9hjgj3oj4fxkv4moxd6d Wikifunctions:Catalogue/Number operations 4 41957 272324 272043 2026-05-04T19:51:27Z YoshiRulz 10156 /* Floating point functions */ Add signum function 272324 wikitext text/x-wiki == Numeric Characteristics == * {{Z+|Z15818}} * {{Z+|Z23883}} * {{Z+|Z12427}} * {{Z+|Z14953}} * {{Z+|Z14961}} * {{Z+|Z15190}} * {{Z+|Z15276}} * {{Z+|Z15735}} * {{Z+|Z15741}} * {{Z+|Z15251}} * {{Z+|Z14933}} * {{Z+|Z14999}} * {{Z+|Z14980}} * {{Z+|Z14966}} * {{Z+|Z15265}} * {{Z+|Z13726}} * {{Z+|Z15007}} * {{Z+|Z12636}} * {{Z+|Z14683}} * {{Z+|Z15757}} * {{Z+|Z14783}} * {{Z+|Z15617}} * {{Z+|Z15282}} * {{Z+|Z14792}} * {{Z+|Z15201}} * {{Z+|Z14815}} * {{Z+|Z14810}} * {{Z+|Z14976}} * {{Z+|Z15031}} * {{Z+|Z14971}} * {{Z+|Z15151}} * {{Z+|Z15127}} * {{Z+|Z14924}} * {{Z+|Z15443}} * {{Z+|Z14946}} * {{Z+|Z14938}} * {{Z+|Z15018}} * {{Z+|Z15241}} * {{Z+|Z15218}} * {{Z+|Z15013}} * {{Z+|Z15121}} * {{Z+|Z15050}} * {{Z+|Z15055}} * {{Z+|Z15186}} * {{Z+|Z15224}} * {{Z+|Z14958}} * {{Z+|Z15195}} * {{Z+|Z15228}} * {{Z+|Z14991}} ===Comparisons=== * {{Z+|Z13522}} ** {{Z+|Z15849}} * {{Z+|Z13676}} * {{Z+|Z13682}} * {{Z+|Z13689}} * {{Z+|Z13695}} * {{Z+|Z16731}} * {{Z+|Z13701}} * {{Z+|Z13740}} * {{Z+|Z20266}} * {{Z+|Z13555}} * {{Z+|Z34353}} * {{Z+|Z16773}} * {{Z+|Z17628}} * {{Z+|Z27811}} ** {{Z+|Z27815}} ===Selections=== * {{Z+|Z13630}} * {{Z+|Z13633}} * {{Z+|Z19509}} * {{Z+|Z29429}} ==== Arithmetic Functions ==== * {{Z+|Z12971}} * {{Z+|Z12975}} * {{Z+|Z13521}} * {{Z+|Z13578}} * {{Z+|Z13539}} ** [[Z15107]] * {{Z+|Z13546}} ** [[Z15111]] * {{Z+|Z13551}} * {{Z+|Z13576}} * {{Z+|Z13569}} * {{Z+|Z17315}} * {{Z+|Z13582}} * {{Z+|Z13612}} * {{Z+|Z13660}} * {{Z+|Z13647}} ** [[Z13663]], [[Z13977]], [[Z13979]], [[Z13809]], [[Z13644]], [[Z13948]], [[Z13963]], [[Z13969]] * {{Z+|Z15257}} * {{Z+|Z15256}} * {{Z+|Z14732}} * {{Z+|Z13667}} * {{Z+|Z15143}} * {{Z+|Z15163}} * {{Z+|Z13995}} ** {{Z+|Z13997}} * {{Z+|Z13818}} * {{Z+|Z13822}} * {{Z+|Z13848}} ** {{Z+|Z14007}} * {{Z+|Z13854}} * {{Z+|Z16762}} * {{Z+|Z15108}} * {{Z+|Z14742}} * {{Z+|Z14860}} * {{Z+|Z15318}} * {{Z+|Z14894}} * {{Z+|Z15341}} * {{Z+|Z14900}} * {{Z+|Z14905}} * {{Z+|Z14847}} * {{Z+|Z15075}} * {{Z+|Z15085}} * {{Z+|Z13831}} ** {{Z+|Z14209}} ==== Natural number sequences and unary natural number functions ==== See [[Wikifunctions:OEIS]] * {{Z+|Z12636}} * {{Z+|Z13561}} * {{Z+|Z14058}} * {{Z+|Z14066}} * {{Z+|Z13857}} * {{Z+|Z15044}} * {{Z+|Z13957}} * {{Z+|Z13955}} * {{Z+|Z15302}} * {{Z+|Z14629}} * {{Z+|Z14917}} * {{Z+|Z15119}} * {{Z+|Z15232}} * {{Z+|Z14871}} * {{Z+|Z15075}} * {{Z+|Z15085}} * {{Z+|Z15080}} * {{Z+|Z15061}} * {{Z+|Z14876}} * {{Z+|Z13843}} * {{Z+|Z15386}} * {{Z+|Z15047}} * {{Z+|Z14888}} * {{Z+|Z14864}} * {{Z+|Z13989}} * {{Z+|Z15157}} * {{Z+|Z13735}} ==== Bitwise Functions ==== * {{Z+|Z13651}} * {{Z+|Z13652}} * {{Z+|Z13653}} * {{Z+|Z13812}} * {{Z+|Z13813}} * {{Z+|Z13860}} * {{Z+|Z13928}} ==== Number conversions ==== ===== By base ===== * {{Z+|Z12982}} * {{Z+|Z12987}} * {{Z+|Z13779}} * {{Z+|Z13780}} * {{Z+|Z13781}} * {{Z+|Z15671}} * {{Z+|Z13782}} * {{Z+|Z13783}} * {{Z+|Z13784}} * {{Z+|Z13797}} * {{Z+|Z13798}} * {{Z+|Z13799}} * {{Z+|Z13806}} * {{Z+|Z31177}} ===== By system ===== * {{Z+|Z17065}} * {{Z+|Z11022}} * {{Z+|Z11023}} * {{Z+|Z18515}} * {{Z+|Z18489}} * {{Z+|Z18504}} * {{Z+|Z14018}} * {{Z+|Z22294}} * {{Z+|Z22649}} * {{Z+|Z22285}} * {{Z+|Z22288}} * {{Z+|Z22291}} == Integer functions == * {{Z+|Z16688}} * {{Z+|Z17249}} * {{Z+|Z17254}} * {{Z+|Z17186}} * {{Z+|Z17153}} * {{Z+|Z17160}} * {{Z+|Z16693}} * {{Z+|Z17111}} * {{Z+|Z17120}} * {{Z+|Z15844}} * {{Z+|Z17105}} * {{Z+|Z17204}} * {{Z+|Z17239}} * {{Z+|Z12480}} * {{Z+|Z12429}} * {{Z+|Z17215}} * {{Z+|Z17229}} * {{Z+|Z17132}} * {{Z+|Z17173}} * {{Z+|Z17140}} * {{Z+|Z17363}} * {{Z+|Z16700}} ** {{Z+|Z25073}} * {{Z+|Z17151}} * {{Z+|Z17128}} * {{Z+|Z17101}} * {{Z+|Z17267}} * {{Z+|Z17144}} * {{Z+|Z17167}} ** {{Z+|Z25196}} ** {{Z+|Z26858}} * {{Z+|Z32261}} * {{Z+|Z17263}} * {{Z+|Z17376}} * {{Z+|Z17380}} ===Integer functions using set-theoretic representation with pairs of natural numbers=== see [[w:Integer#Equivalence classes of ordered pairs]] * {{Z|Z17307}} * {{Z|Z17301}} * {{Z|Z17321}} * {{Z|Z17326}} * {{Z|Z17330}} * {{Z|Z17340}} * {{Z|Z17469}} * {{z|Z17345}} ===Integer sequence and unary integer functions=== See [[Wikifunctions:OEIS]] * {{Z|Z17386}} * {{z|Z17394}} * {{Z+|Z31619}} ===Search for=== [[Special:Search/: "Z8K2 Z16683" OR "Z8K2 Z1K1 Z7 Z7K1 Z881 Z881K1 Z16683" OR "Z17K1 Z16683" OR "Z17K1 Z1K1 Z7 Z7K1 Z881 Z881K1 Z16683"|Functions expecting or returning an explicit Integer object, singly or in a list]] * [[Special:Search/: "Z8K2 Z16683"|Functions returning an explicit Integer object]] ** [[Special:Search/: "Z8K2 Z1K1 Z7 Z7K1 Z881 Z881K1 Z16683"|or a list of them]] * [[Special:Search/: "Z17K1 Z16683"|Functions expecting an explicit Integer object]] ** [[Special:Search/: "Z17K1 Z1K1 Z7 Z7K1 Z881 Z881K1 Z16683"|or a list of them]] * [[Special:Search/: "Z8K2 Z16683" "Z17K1 Z16683"|Functions expecting and returning explicit Integer objects (but not in a list)]] * [[Special:Search/: "Z8K2 Z16683" !"Z17K1 Z16683"|Functions with no Integer object inputs (unless in a list) returning an explicit Integer object (not in a list)]] ==Rational number functions== === Comparison === * {{Z+|Z19686}} * {{Z+|Z24506}} * {{Z+|Z19751}} * {{Z+|Z19752}} * {{Z+|Z19753}} * {{Z+|Z19754}} * {{Z+|Z24403}} * {{Z+|Z19806}} ===Properties=== * {{Z+|Z20065}} * {{Z+|Z21702}} * {{Z+|Z19922}} * {{Z+|Z21714}} * {{Z+|Z21721}} * {{Z+|Z19583}} * {{Z+|Z25642}} ** {{Z+|Z25647}} === Transformation and conversion === * {{Z+|Z19694}} * {{Z+|Z19711}} * {{Z+|Z19717}} * {{Z+|Z19722}} * {{Z+|Z19733}} * {{Z+|Z19724}} * {{Z+|Z19744}} * {{Z+|Z19848}} * {{Z+|Z20584}} * {{Z+|Z27232}} * {{Z+|Z24382}} * {{Z+|Z25445}} * {{Z+|Z25656}} ** {{Z+|Z25636}} ** {{Z+|Z25639}} ** {{Z+|Z29116}} * {{Z+|Z27737}} === Rounding === {{Help:Rounding_function_table/Rational}} === Operations === * {{Z+|Z19679}} * {{Z+|Z19699}} * {{Z+|Z19706}} * {{Z+|Z19708}} * {{Z+|Z21320}} * {{Z+|Z24487}} * {{Z+|Z19682}} ** {{Z+|Z25432}} * {{Z+|Z20032}} * {{Z+|Z20053}} * {{Z+|Z31523}} ** {{Z+|Z19736}} * {{Z+|Z31522}} ** {{Z+|Z19740}} * {{Z+|Z19800}} * {{Z+|Z27705}} ** {{Z+|Z27719}} ** {{Z+|Z19814}} ** {{Z+|Z19841}} ** {{Z+|Z12606}} * {{Z+|Z19826}} * {{Z+|Z19833}} ** {{Z+|Z33933}} * {{Z+|Z20856}} * {{Z+|Z20863}} * {{Z+|Z20870}} * {{Z+|Z20877}} * {{Z+|Z24081}} * {{Z+|Z20902}} * {{Z+|Z21692}} * {{Z+|Z23899}} * {{Z+|Z23882}} * {{Z+|Z24372}} * {{Z+|Z24374}} * {{Z+|Z24376}} ==== Operations with custom precision ==== * {{Z+|Z24505}} * {{Z+|Z24681}} * {{Z+|Z24698}} ===Probability Operations=== * {{Z+|Z19967}} * {{Z+|Z20000}} * {{Z+|Z20226}} ====Probability mass functions==== * {{Z+|Z21294}} * {{Z+|Z20094}} * {{Z+|Z21312}} ==Floating point functions== ===Conversions=== *{{Z+|Z21136}} *{{Z+|Z21139}} *{{Z+|Z21142}} *{{Z+|Z21145}} *{{Z+|Z20854}} *{{Z+|Z21148}} *{{Z+|Z20915}} *{{Z+|Z21642}} *{{Z+|Z21925}} *{{Z+|Z21163}} *{{Z+|Z20844}} *{{Z+|Z21679}} *{{Z+|Z20936}} *{{Z+|Z20937}} *{{Z+|Z21071}} *{{Z+|Z21070}} ===Comparisons=== *{{Z+|Z20850}} *{{Z+|Z20924}} *{{Z+|Z20940}} *{{Z+|Z20941}} *{{Z+|Z20943}} *{{Z+|Z20944}} *{{Z+|Z20945}} ===Rounding=== {{Help:Rounding_function_table/float64}} ===Operations=== *{{Z+|Z20849}} *{{Z+|Z21031}} *{{Z+|Z21032}} *{{Z+|Z21033}} *{{Z+|Z16463}} *{{Z+|Z12473}} *{{Z+|Z16475}} *{{Z+|Z20954}} *{{Z+|Z20955}} *{{Z+|Z20956}} *{{Z+|Z12505}} *{{Z+|Z12497}} *{{Z+|Z20959}} *{{Z+|Z20960}} *{{Z+|Z20961}} *{{Z+|Z20962}} *{{Z+|Z20963}} *{{Z+|Z20964}} *{{Z+|Z20965}} *{{Z+|Z20966}} *{{Z+|Z20967}} *{{Z+|Z20968}} *{{Z+|Z12509}} *{{Z+|Z12500}} *{{Z+|Z20971}} *{{Z+|Z20972}} *{{Z+|Z20973}} *{{Z+|Z20974}} *{{Z+|Z21000}} *{{Z+|Z21001}} *{{Z+|Z21003}} *{{Z+|Z21004}} *{{Z+|Z21005}} *{{Z+|Z21005}} *{{Z+|Z21007}} *{{Z+|Z21008}} *{{Z+|Z21009}} *{{Z+|Z21010}} *{{Z+|Z21012}} *{{Z+|Z21013}} *{{Z+|Z29125}} *{{Z+|Z21028}} *{{Z+|Z21037}} *{{Z+|Z21041}} *{{Z+|Z34780}} *{{Z+|Z20841}} *{{Z+|Z21043}} *{{Z+|Z21047}} **{{Z+|Z26304}} ***{{Z+|Z26315}} *{{Z+|Z21775}} *{{Z+|Z23902}} * {{Z+|Z31079}} === Search for === [[Special:Search/ : "Z8K2 Z20838" OR "Z8K2 Z1K1 Z7 Z7K1 Z881 Z881K1 Z20838" OR "Z17K1 Z20838" OR "Z17K1 Z1K1 Z7 Z7K1 Z881 Z881K1 Z20838"| Functions expecting or returning an explicit Float64 object, singly or in a list]] * [[Special:Search/ : "Z8K2 Z20838"|Functions returning an explicit Float64 object]] ** [[Special:Search/ : "Z8K2 Z1K1 Z7 Z7K1 Z881 Z881K1 Z20838"|or a list of them]] * [[Special:Search/ : "Z17K1 Z20838"|Functions expecting an explicit Float64 object]] ** [[Special:Search/ : "Z17K1 Z1K1 Z7 Z7K1 Z881 Z881K1 Z20838"|or a list of them]] * [[Special:Search/ : "Z8K2 Z20838" "Z17K1 Z20838"| Functions expecting and returning an explicit Float64 object]] ** [[Special:Search/ : "Z8K2 Z1K1 Z7 Z7K1 Z881 Z881K1 Z20838" "Z17K1 Z20838"| or returning a list]] ** [[Special:Search/ : "Z8K2 Z20838" "Z17K1 Z1K1 Z7 Z7K1 Z881 Z881K1 Z20838"|or expecting a list]] ** [[Special:Search/ : "Z8K2 Z1K1 Z7 Z7K1 Z881 Z881K1 Z20838" "Z17K1 Z1K1 Z7 Z7K1 Z881 Z881K1 Z20838"|or expecting and returning a list]] == Complex numbers == Type: {{Z+|Z33198}} === Constructor and deconstructors === * {{Z+|Z33227}} * {{Z+|Z33304}} * {{Z+|Z33214}} * {{Z+|Z33221}} * {{Z+|Z33499}} ** {{Z+|Z33713}} * {{Z+|Z33610}} === Comparison === * {{Z+|Z33202}} * {{Z+|Z33506}} === Arithmetics === * {{Z+|Z33201}} * {{Z+|Z33366}} * {{Z+|Z33700}} * {{Z+|Z33708}} * {{Z+|Z33372}} * {{Z+|Z33679}} == Number operations requiring type conversion == === Numeric Characteristics === * {{Z+|Z10603}} === Arithmetic Functions === * {{Z+|Z11235}} * {{Z+|Z12522}} * {{Z+|Z12476}} * {{Z+|Z10862}} * {{Z+|Z12720}} === Trigonometric Functions === * {{Z+|Z12497}} * {{Z+|Z12500}} * {{Z+|Z12505}} * {{Z+|Z12509}} * {{Z+|Z12473}} * {{Z+|Z14446}} === Health Functions === * {{Z+|Z12526}} * {{Z+|Z12572}} === Geometric Functions === * {{Z+|Z13341}} === Climate related functions === These would benefit from a float type. * {{Z+|Z18421}} * {{Z+|Z18391}} * {{Z+|Z18364}} * {{Z+|Z18406}} * {{Z+|Z18409}} * {{Z+|Z18412}} * {{Z+|Z18415}} * {{Z+|Z18418}} === Distance functions === * {{Z+|Z18428}} * {{Z+|Z18431}} * {{Z+|Z18362}} === Physics functions === * {{Z+|Z12910}} === Randomness === {{main|Wikifunctions:Determinism}} ''Reminder that Wikifunctions does not support randomness for now. We always expect all functions to return functional, deterministic results, only dependent on the input. This is in order to allow for aggressive caching.'' see [[Wikifunctions:Project_chat/Archive/2023/09#Help_please]]. * {{Z+|Z13148}} * {{Z+|Z19441}} * {{Z+|Z19460}} [[Category:Lists of functions]] f0rrs6aekpv391e1u1vgmwelld141k2 Z20006 0 42927 272141 245618 2026-05-04T13:26:58Z YoshiRulz 10156 Added Z34745 to the approved list of implementations 272141 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z20006" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z19677", "Z17K2": "Z20006K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "dividend" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "dividendo" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z19677", "Z17K2": "Z20006K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "divisor" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "divisore" } ] } } ], "Z8K2": "Z19677", "Z8K3": [ "Z20", "Z20008", "Z20009", "Z20010", "Z20011" ], "Z8K4": [ "Z14", "Z20007", "Z34745" ], "Z8K5": "Z20006" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "rational modulo" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "modulo razionale" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "modulo", "divisible" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } e1prnqtf228dbb22nuiq5x0youenm10 Z20172 0 43258 272149 236955 2026-05-04T13:41:50Z YoshiRulz 10156 Added Z34747 to the approved list of implementations 272149 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z20172" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z20159", "Z17K2": "Z20172K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "year" }, { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "বছর" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "année donnée, pour déterminer l'année suivante" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Jahr" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "anno" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "tahun" } ] } } ], "Z8K2": "Z20159", "Z8K3": [ "Z20", "Z20173", "Z20174", "Z20178", "Z20179" ], "Z8K4": [ "Z14", "Z20180", "Z20176", "Z34747" ], "Z8K5": "Z20172" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "next year" }, { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "পরবর্তী বছর" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "année suivante" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "nächstes Jahr" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "anno successivo" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "tahun depan" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "following year", "year after", "+1" ] }, { "Z1K1": "Z31", "Z31K1": "Z1011", "Z31K2": [ "Z6", "পরের বছর", "আগামী বছর" ] }, { "Z1K1": "Z31", "Z31K1": "Z1004", "Z31K2": [ "Z6", "année d'après" ] }, { "Z1K1": "Z31", "Z31K1": "Z1430", "Z31K2": [ "Z6", "kommendes Jahr", "Jahr nach", "+1", "folgendes Jahr" ] }, { "Z1K1": "Z31", "Z31K1": "Z1078", "Z31K2": [ "Z6", "tahun berikutnya, tahun setelahnya, +1" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "একটি বছরের পরবর্তী বছরটি প্রদান করে, অব্দের সাথে বা ছাড়া।" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Gibt das Jahr nach dem gegebenen zurück." }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "à partir d'une année donnée, indique l'année suivante" } ] } } rwka5aqvln97kur0zc794ac230fhuj0 Z20219 0 43309 272152 192473 2026-05-04T13:46:04Z YoshiRulz 10156 Added Z34748 to the approved list of implementations 272152 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z20219" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z20159", "Z17K2": "Z20219K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "earlier year" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": " année précédente" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "primo anno" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z20159", "Z17K2": "Z20219K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "later year" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "année suivante" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "secondo anno" } ] } } ], "Z8K2": "Z16683", "Z8K3": [ "Z20", "Z20220", "Z20221", "Z20224", "Z20225", "Z20246", "Z20247" ], "Z8K4": [ "Z14", "Z20222", "Z20223", "Z34748" ], "Z8K5": "Z20219" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "difference between Gregorian years" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "différence entre des années grégoriennes" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "differenza tra anni gregoriani" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1787", "Z31K2": [ "Z6", "anni tra" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Finds the number of years between the two years entered. Returns an integer in case the \"earlier year\" is after the \"later year\" (in which case the answer is negative)." }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "trouve le nombre d'années entre les deux années saisies ; renvoie un entier dans le cas où « l'année précédente » est après « l'année suivante » (auquel cas la réponse est négative)" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "Trova il numero di anni tra i due anni in ingresso. Se \"primo anno\" viene dopo il \"secondo anno\", restituisce un numero negativo" } ] } } 32nhqaqhie1ah2m039s4ozvn91oa8w5 Z20314 0 43652 272155 219306 2026-05-04T13:56:17Z YoshiRulz 10156 Added Z34749 to the approved list of implementations 272155 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z20314" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z20159", "Z17K2": "Z20314K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "year to find precedent for" }, { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "বছর" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "année donnée, pour déterminer l'année précédente" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "anno" } ] } } ], "Z8K2": "Z20159", "Z8K3": [ "Z20", "Z20317", "Z20318", "Z20320", "Z20321", "Z20322" ], "Z8K4": [ "Z14", "Z20315", "Z20316", "Z34749" ], "Z8K5": "Z20314" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "previous year" }, { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "পূর্ববর্তী বছর" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "année précédente" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "anno precedente" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "-1", "year before this one", "earlier year", "preceding year", "last year" ] }, { "Z1K1": "Z31", "Z31K1": "Z1011", "Z31K2": [ "Z6", "আগের বছর", "গত বছর" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "একটি বছরের পূর্ববর্তী/আগের বছরটি প্রদান করে, অব্দের সাথে বা ছাড়া।" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "à partir d'une année donnée, indique l'année précédente" } ] } } 0uu9tj1inc71f17hjwbtl8jyybixk4e 272156 272155 2026-05-04T13:56:21Z YoshiRulz 10156 Removed Z20321 and Z20322 from the approved list of test cases 272156 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z20314" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z20159", "Z17K2": "Z20314K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "year to find precedent for" }, { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "বছর" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "année donnée, pour déterminer l'année précédente" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "anno" } ] } } ], "Z8K2": "Z20159", "Z8K3": [ "Z20", "Z20317", "Z20318", "Z20320" ], "Z8K4": [ "Z14", "Z20315", "Z20316", "Z34749" ], "Z8K5": "Z20314" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "previous year" }, { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "পূর্ববর্তী বছর" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "année précédente" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "anno precedente" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "-1", "year before this one", "earlier year", "preceding year", "last year" ] }, { "Z1K1": "Z31", "Z31K1": "Z1011", "Z31K2": [ "Z6", "আগের বছর", "গত বছর" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "একটি বছরের পূর্ববর্তী/আগের বছরটি প্রদান করে, অব্দের সাথে বা ছাড়া।" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "à partir d'une année donnée, indique l'année précédente" } ] } } 4bjttnnyxsl4idbnbosi7mw97otn0es Z20323 0 43661 272158 247356 2026-05-04T14:04:52Z YoshiRulz 10156 Added Z34750 to the approved list of implementations 272158 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z20323" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z19677", "Z17K2": "Z20323K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "1st known" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z19677", "Z17K2": "Z20323K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "2nd known" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z13518", "Z17K2": "Z20323K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Which is unknown (1, 2, or 3)" } ] } } ], "Z8K2": "Z19677", "Z8K3": [ "Z20", "Z20328", "Z20329", "Z20330" ], "Z8K4": [ "Z14", "Z20327", "Z34750" ], "Z8K5": "Z20323" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Triangle of Power operation" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "a^b=c" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Insert the arguments in the order of: Base, Power, Result." } ] } } 9ffaxg5jtwzyytk2hadtc80nkubivcb Z20357 0 43706 272161 214860 2026-05-04T14:25:58Z YoshiRulz 10156 Added Z34751 and Z34752 to the approved list of implementations 272161 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z20357" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z20342", "Z17K2": "Z20357K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "day" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "jour" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z40", "Z17K2": "Z20357K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "leap year?" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "est-ce une année bissextile ?" } ] } } ], "Z8K2": "Z13518", "Z8K3": [ "Z20", "Z20359", "Z20360", "Z20361" ], "Z8K4": [ "Z14", "Z23629", "Z20358", "Z34751", "Z34752" ], "Z8K5": "Z20357" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Day of Roman Year to Day number in year" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "jour de l'année vers nombre de jours dans l'année" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Utility function" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "dans une année romaine ; fonction utilitaire" } ] } } pw572omudt9hfutoccevuw6hnso2b0c Z20430 0 43812 272168 267307 2026-05-04T14:39:41Z YoshiRulz 10156 Added Z34754 to the approved list of implementations 272168 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z20430" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z20420", "Z17K2": "Z20430K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "this" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "première date" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Erste Datumsangabe" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "prima data" }, { "Z1K1": "Z11", "Z11K1": "Z1001", "Z11K2": "هذا" }, { "Z1K1": "Z11", "Z11K1": "Z1157", "Z11K2": "dit" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z20420", "Z17K2": "Z20430K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "that" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "deuxième date" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Zweite Datumsangabe" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "seconda data" }, { "Z1K1": "Z11", "Z11K1": "Z1001", "Z11K2": "ذاك" }, { "Z1K1": "Z11", "Z11K1": "Z1157", "Z11K2": "dat" } ] } } ], "Z8K2": "Z40", "Z8K3": [ "Z20", "Z20432", "Z20433", "Z20434", "Z20435", "Z20436", "Z20437", "Z21128" ], "Z8K4": [ "Z14", "Z20431", "Z20739", "Z33804", "Z34754" ], "Z8K5": "Z20430" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Same Gregorian calendar date" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "est-ce la même date du calendrier grégorien ?" }, { "Z1K1": "Z11", "Z11K1": "Z1005", "Z11K2": "Та же дата Григорианского календаря" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Gleiches Gregorianisches Kalenderdatum" }, { "Z1K1": "Z11", "Z11K1": "Z1827", "Z11K2": "ίδια ημερομηνία στο Γρηγοριανό ημερολόγιο" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "stessa Data di calendario Gregoriano" }, { "Z1K1": "Z11", "Z11K1": "Z1001", "Z11K2": "نفس تاريخ التقويم الغريغوري" }, { "Z1K1": "Z11", "Z11K1": "Z1157", "Z11K2": "zelfde datum in de Gregoriaanse kalender" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1430", "Z31K2": [ "Z6", "Identisches Gregorianisches Kalenderdatum" ] }, { "Z1K1": "Z31", "Z31K1": "Z1787", "Z31K2": [ "Z6", "confronta date di calendario gregoriano", "uguaglianza tra date di calendario gregoriano", "date di calendario gregoriano uguali" ] }, { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "same Gregorian dates", "same Gregorian days of the year" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Prüft ob die Datumsangaben im Gregorianischen Kalender gleich sind." }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "renvoie \"vrai\" si les deux dates sont les mêmes, sinon \"faux\"" } ] } } ll9zmb3g3w1afxsu6z5gu091yqe77j6 Z20446 0 43832 272164 141233 2026-05-04T14:34:06Z YoshiRulz 10156 Added Z34753 to the approved list of implementations 272164 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z20446" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z20446K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Z13518K1" } ] } } ], "Z8K2": "Z6", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14", "Z20447", "Z34753" ], "Z8K5": "Z20446" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Remove invalid chars from Z13518K1" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "remove non-digit chars" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } qfae1z0c14x66oy3zjs9hemto46vufr Talk:Z20597 1 44114 272176 212878 2026-05-04T14:48:20Z YoshiRulz 10156 Add to category 272176 wikitext text/x-wiki == Goal == I am trying to built a function that generates the following text: "2023 (MMXXIII) was a common year starting on Sunday of the Gregorian calendar, the 2023rd year of the Common Era (CE) and Anno Domini (AD) designations, the 23rd year of the 3rd millennium and the 21st century, and the 4th year of the 2020s decade." That's the intro text to the Wikipedia article on 2023. I am building the test for now step by step, but if someone wants to rush forward, that's the whole text. Eventually I would like to have that for several languages, and then a function that takes a year and a language, and creates the text in different languages. [[User:Denny|Denny]] ([[User talk:Denny|talk]]) 15:40, 28 November 2024 (UTC) [[Category:English natural language generation functions]] [[Category:Functions_with_only_code_implementations]] jpr1s2tzkpufer7d67lka7g2d7555jw Z20648 0 44214 272179 218724 2026-05-04T14:56:26Z YoshiRulz 10156 Added Z34755 to the approved list of implementations 272179 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z20648" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z16098", "Z17K2": "Z20648K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "month" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "mois" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z20159", "Z17K2": "Z20648K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Year" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "année" } ] } } ], "Z8K2": "Z16683", "Z8K3": [ "Z20", "Z20650", "Z20651", "Z20652" ], "Z8K4": [ "Z14", "Z20649", "Z22984", "Z34755" ], "Z8K5": "Z20648" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Numbers of days in a month" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "nombre de jours dans un mois" }, { "Z1K1": "Z11", "Z11K1": "Z1005", "Z11K2": "Количество дней в месяце" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Returns the number of days in a month." }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "renvoie le nombre de jours dans un mois" } ] } } tlbp54t4jfnvti3mmco0gkrq1jub44x Z20653 0 44242 272183 142593 2026-05-04T15:11:08Z YoshiRulz 10156 Added Z34756 to the approved list of implementations 272183 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z20653" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z6" }, "Z17K2": "Z20653K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "options" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z20653K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "value" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z40", "Z17K2": "Z20653K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "send full string instead of index" } ] } } ], "Z8K2": "Z6", "Z8K3": [ "Z20", "Z20655" ], "Z8K4": [ "Z14", "Z20654", "Z34756" ], "Z8K5": "Z20653" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Validate string to list of string options" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Takes a string and list of strings, and returns either the string or index" } ] } } gbwgczthey34k00ktkfbp20zjmse59w Talk:Z20656 1 44251 272184 212879 2026-05-04T15:11:53Z YoshiRulz 10156 Add to category 272184 wikitext text/x-wiki [[Category:English natural language generation functions]] [[Category:Functions_with_only_code_implementations]] ei9s5hni2ywrdsmf6d9yitjzrje0mse Z20659 0 44252 272190 199765 2026-05-04T15:38:50Z YoshiRulz 10156 Added Z34757 to the approved list of implementations 272190 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z20659" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z16683" }, "Z17K2": "Z20659K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Vector 1" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "vecteur 1" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "vettore 1" } ] } }, { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z16683" }, "Z17K2": "Z20659K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Vector 2" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "vecteur 2" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "vettore 2" } ] } } ], "Z8K2": "Z16683", "Z8K3": [ "Z20", "Z20661" ], "Z8K4": [ "Z14", "Z24431", "Z20660", "Z34757" ], "Z8K5": "Z20659" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "get dot product (integer vectors)" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "obtenir le produit scalaire" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "prodotto scalare (vettori interi)" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "dot product" ] }, { "Z1K1": "Z31", "Z31K1": "Z1004", "Z31K2": [ "Z6", "produit scalaire" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Finds the dot product of two integer vectors" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "trouve le produit scalaire de deux vecteurs entiers" } ] } } n76pl4ypcjt44wigtbroec0qu1vl8p6 Z20662 0 44255 272193 270028 2026-05-04T15:45:05Z YoshiRulz 10156 Added Z34758 to the approved list of implementations 272193 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z20662" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z20662K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "List 1" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "première liste" } ] } }, { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z20662K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "List 2" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "seconde liste" } ] } } ], "Z8K2": "Z1", "Z8K3": [ "Z20", "Z34399" ], "Z8K4": [ "Z14", "Z20663", "Z21867", "Z34758" ], "Z8K5": "Z20662" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "zip two lists" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "entremêler des listes" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "zip" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "\"Zips\" two lists together" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "entremêle deux listes ensemble" } ] } } q6uye5i71d3lq6ddpx6zc74fnj1ycxv 272194 272193 2026-05-04T15:45:08Z WikiLambda system 3 Updated the implementation list (see [[Help:Wikifunctions/Implementation_ordering_and_choosing|About implementation selection]]) 272194 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z20662" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z20662K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "List 1" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "première liste" } ] } }, { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z20662K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "List 2" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "seconde liste" } ] } } ], "Z8K2": "Z1", "Z8K3": [ "Z20", "Z34399" ], "Z8K4": [ "Z14", "Z21867", "Z20663", "Z34758" ], "Z8K5": "Z20662" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "zip two lists" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "entremêler des listes" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "zip" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "\"Zips\" two lists together" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "entremêle deux listes ensemble" } ] } } bsyjjnm0ykra548mrtlhys64la9wr66 Z20744 0 45240 272202 251014 2026-05-04T16:11:14Z YoshiRulz 10156 Added Z24900 to the approved list of implementations 272202 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z20744" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z20420", "Z17K2": "Z20744K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "start date" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "première date" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "von" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "data 1" }, { "Z1K1": "Z11", "Z11K1": "Z1181", "Z11K2": "почетни датум" }, { "Z1K1": "Z11", "Z11K1": "Z1001", "Z11K2": "تاريخ البداية" }, { "Z1K1": "Z11", "Z11K1": "Z1237", "Z11K2": "başlangıç tarihi" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z20420", "Z17K2": "Z20744K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "target date" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "seconde date" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "bis" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "data 2" }, { "Z1K1": "Z11", "Z11K1": "Z1181", "Z11K2": "крајњи датум" }, { "Z1K1": "Z11", "Z11K1": "Z1001", "Z11K2": "التاريخ المستهدف" }, { "Z1K1": "Z11", "Z11K1": "Z1237", "Z11K2": "hedef tarih" } ] } } ], "Z8K2": "Z16683", "Z8K3": [ "Z20", "Z20746", "Z20747", "Z20748", "Z20749", "Z20805", "Z24872", "Z24896", "Z24897", "Z24898", "Z24899", "Z27563" ], "Z8K4": [ "Z14", "Z27558", "Z20745", "Z24900" ], "Z8K5": "Z20744" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "days until " }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "nombre de jours jusque" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Tage bis" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "numero di giorni tra" }, { "Z1K1": "Z11", "Z11K1": "Z1181", "Z11K2": "број дана до датума" }, { "Z1K1": "Z11", "Z11K1": "Z1001", "Z11K2": "عدد الأيام حتى" }, { "Z1K1": "Z11", "Z11K1": "Z1237", "Z11K2": "gün farkı" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "distance between days", "day subtraction", "age", "date difference in days (integer)", "Gregorian calendar date difference", "difference between Gregorian calendar dates" ] }, { "Z1K1": "Z31", "Z31K1": "Z1004", "Z31K2": [ "Z6", "distance entre deux jours", "soustraction de jours" ] }, { "Z1K1": "Z31", "Z31K1": "Z1430", "Z31K2": [ "Z6", "Abstand zwischen Tagen", "Alter in Tagen" ] }, { "Z1K1": "Z31", "Z31K1": "Z1787", "Z31K2": [ "Z6", "distanza tra giorni", "distanza tra date", "giorni tra" ] }, { "Z1K1": "Z31", "Z31K1": "Z1181", "Z31K2": [ "Z6", "одузимање дана" ] }, { "Z1K1": "Z31", "Z31K1": "Z1237", "Z31K2": [ "Z6", "tarih farkı", "iki tarih arası gün" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "distance between two days (exclusive of the latter), as an integer" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "distance entre deux jours, sous la forme de nombre entier." }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Abstand zwischen zwei Tagen, als Ganzzahl." }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "Distanza in giorni tra due date come Intero" }, { "Z1K1": "Z11", "Z11K1": "Z1181", "Z11K2": "време између од првог до другог датума, враћа цео број" }, { "Z1K1": "Z11", "Z11K1": "Z1001", "Z11K2": "المسافة بين يومين من التاريخ، كعدد صحيح" }, { "Z1K1": "Z11", "Z11K1": "Z1237", "Z11K2": "İki tarih arasındaki gün farkını (son gün hariç) tam sayı olarak verir" } ] } } 8kdg16h68ag299n922vsw8jc7l4mwvb Z20785 0 45443 272207 244651 2026-05-04T16:13:25Z YoshiRulz 10156 Added Z31240 to the approved list of implementations 272207 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z20785" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z20420", "Z17K2": "Z20785K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "date" } ] } } ], "Z8K2": "Z6", "Z8K3": [ "Z20", "Z20787" ], "Z8K4": [ "Z14", "Z20786", "Z31240" ], "Z8K5": "Z20785" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "French date" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "a date in French in dmy" } ] } } so3rrqfcvqchf92t8xvanmzp36ryv77 Z20902 0 45705 272218 225498 2026-05-04T16:18:49Z YoshiRulz 10156 Added Z34759 to the approved list of implementations 272218 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z20902" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z19677", "Z17K2": "Z20902K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "rational" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "nombre rationnel" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "razionale" } ] } } ], "Z8K2": "Z20838", "Z8K3": [ "Z20", "Z20904", "Z20905", "Z20906", "Z20909", "Z20910", "Z20912", "Z20913", "Z24829", "Z24830", "Z24831", "Z24832", "Z24833", "Z24834", "Z28169" ], "Z8K4": [ "Z14", "Z20903", "Z34759" ], "Z8K5": "Z20902" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "square root of rational to float64" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "racine carrée" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "radice quadrata di razionale come float64" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "Square root", "sqrt" ] }, { "Z1K1": "Z31", "Z31K1": "Z1787", "Z31K2": [ "Z6", "radq" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "returns the square root of a rational number as a float" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "renvoie la racine carrée d'un nombre rationnel sous forme d'un nombre à virgule flottante" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "Restituisce la radice quadrata di un numero razionale come float64" } ] } } ciy4zx9ctdiwzp4re25ul2ilpfoe6hy Talk:Z20924 1 45732 272221 147498 2026-05-04T16:19:58Z YoshiRulz 10156 Add to category 272221 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] == Duplicate == {{ping|GZWDer}} this is a duplicate of [[Z20850]]. Thanks! [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 16:44, 20 December 2024 (UTC) gsv3q9yzerc01xqbfxvzpksy369a6tn Z20936 0 45743 272223 217119 2026-05-04T16:21:38Z YoshiRulz 10156 Added Z34760 to the approved list of implementations 272223 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z20936" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z13518", "Z17K2": "Z20936K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "n" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "nombre" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "n" } ] } } ], "Z8K2": "Z20838", "Z8K3": [ "Z20", "Z21468", "Z21469" ], "Z8K4": [ "Z14", "Z20938", "Z34760" ], "Z8K5": "Z20936" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "natural number to float64" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "nombre naturel vers virgule flottante" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "numero naturale in float64" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "n to f" ] }, { "Z1K1": "Z31", "Z31K1": "Z1787", "Z31K2": [ "Z6", "float64 da numero naturale", "naturale in float64", "float64 da naturale" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "converts a natural number value into a float64 value" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "convertit un entier naturel en nombre à virgule flottante" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "Converte un numero naturale in un valore float64" } ] } } gnnq929z5pp75pmpbiias68jj8megr7 Z20940 0 45747 272225 266629 2026-05-04T16:22:55Z YoshiRulz 10156 Added Z34761 to the approved list of implementations 272225 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z20940" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z20940K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "a" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "a" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z20940K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "b" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "b" } ] } } ], "Z8K2": "Z40", "Z8K3": [ "Z20", "Z21470", "Z21471", "Z21472" ], "Z8K4": [ "Z14", "Z21473", "Z20946", "Z34761" ], "Z8K5": "Z20940" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "less than (float64)" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "minore (float64)" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "\u003C" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } csapo0n6iy1pqg824bcuef4qz5zks3j Z20955 0 45762 272227 169370 2026-05-04T16:26:59Z YoshiRulz 10156 Added Z34762 to the approved list of implementations 272227 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z20955" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z20955K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Angle in degrees" } ] } } ], "Z8K2": "Z20838", "Z8K3": [ "Z20", "Z22756" ], "Z8K4": [ "Z14", "Z20979", "Z34762" ], "Z8K5": "Z20955" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "secant in radians" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "sec" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Returns the secant in radians. It is defined as the reciprocal of the cosine function." } ] } } qwkr96w6igdbtcjoflbovhjmf3qfp6q Z20959 0 45766 272229 265850 2026-05-04T16:32:33Z YoshiRulz 10156 Added Z34763 to the approved list of implementations 272229 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z20959" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z20959K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "x" } ] } } ], "Z8K2": "Z20838", "Z8K3": [ "Z20", "Z33586", "Z33587" ], "Z8K4": [ "Z14", "Z20983", "Z34763" ], "Z8K5": "Z20959" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "arctangent" }, { "Z1K1": "Z11", "Z11K1": "Z1360", "Z11K2": "arctan" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "arctan", "arctangent (in radians)" ] }, { "Z1K1": "Z31", "Z31K1": "Z1360", "Z31K2": [ "Z6", "atan", "arctg" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 6b48tptv5meh36yuoznko6egctdhyfr Z20971 0 45778 272231 266063 2026-05-04T16:38:27Z YoshiRulz 10156 Added Z34764 to the approved list of implementations 272231 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z20971" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z20971K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "x" } ] } } ], "Z8K2": "Z20838", "Z8K3": [ "Z20", "Z33665", "Z33669" ], "Z8K4": [ "Z14", "Z20996", "Z33666", "Z34764" ], "Z8K5": "Z20971" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "inverse hyperbolic tangent " }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "tangente hyperbolique inverse " } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "arctanh", "atanh", "artanh" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "result in radians" } ] } } 15y9ezapev5q39lnpgx9b1akhfw3ay9 272232 272231 2026-05-04T16:38:37Z YoshiRulz 10156 Removed Z33666 from the approved list of implementations 272232 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z20971" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z20971K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "x" } ] } } ], "Z8K2": "Z20838", "Z8K3": [ "Z20", "Z33665", "Z33669" ], "Z8K4": [ "Z14", "Z20996", "Z34764" ], "Z8K5": "Z20971" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "inverse hyperbolic tangent " }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "tangente hyperbolique inverse " } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "arctanh", "atanh", "artanh" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "result in radians" } ] } } h0zzrz5e1xnii54lllfebu716paypav Z20974 0 45781 272233 147621 2026-05-04T16:38:45Z YoshiRulz 10156 Added Z33670 to the approved list of test cases 272233 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z20974" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z20974K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "x" } ] } } ], "Z8K2": "Z20838", "Z8K3": [ "Z20", "Z33670" ], "Z8K4": [ "Z14", "Z20999" ], "Z8K5": "Z20974" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "inverse hyperbolic cosecant " } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "arccsch" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } b8huiuoyg5v8haklsy60knymkfyg270 272234 272233 2026-05-04T16:38:47Z YoshiRulz 10156 Added Z33667 to the approved list of implementations 272234 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z20974" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z20974K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "x" } ] } } ], "Z8K2": "Z20838", "Z8K3": [ "Z20", "Z33670" ], "Z8K4": [ "Z14", "Z20999", "Z33667" ], "Z8K5": "Z20974" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "inverse hyperbolic cosecant " } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "arccsch" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 6zrvf4t5td1kmfd5wvwtts3semhu1c4 Z21001 0 45808 272236 265716 2026-05-04T16:41:13Z YoshiRulz 10156 Added Z34765 to the approved list of implementations 272236 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z21001" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z21001K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "x" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "x" } ] } } ], "Z8K2": "Z20838", "Z8K3": [ "Z20", "Z31691", "Z31692" ], "Z8K4": [ "Z14", "Z21015", "Z34765" ], "Z8K5": "Z21001" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "float64 exponentiation base e" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "fonction exponentielle" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1004", "Z31K2": [ "Z6", "exp" ] }, { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "exp" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } qw058riuqn84a1lmrohbxls9hjctme4 Z21013 0 45820 272240 236958 2026-05-04T16:50:18Z YoshiRulz 10156 Added Z34767 to the approved list of implementations 272240 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z21013" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z21013K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "degrees" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "x" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "Sudut dalam derajat" } ] } } ], "Z8K2": "Z20838", "Z8K3": [ "Z20", "Z28008", "Z30494" ], "Z8K4": [ "Z14", "Z30135", "Z30493", "Z21027", "Z30495", "Z34767" ], "Z8K5": "Z21013" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "degrees to radians (float64)" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": " degrés en radians" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "konversi derajat ke radian (float64)" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "degrees to radians", "angle from degrees to radians", "angle in radians" ] }, { "Z1K1": "Z31", "Z31K1": "Z1078", "Z31K2": [ "Z6", "derajat ke radian, sudut dalam radian" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "convertir des degrés en radians" }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "convert an angle from degrees to radians" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "konversi sudut dalam derajat menjadi radian" } ] } } 0h8mbilpkhs207w0bhr7m97xedh6gmh Z21032 0 45839 272243 211446 2026-05-04T16:54:13Z YoshiRulz 10156 Added Z22081 to the approved list of test cases 272243 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z21032" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z21032K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "multiplicand" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "premier nombre" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "terkali" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "primo numero" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z21032K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "multiplier" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "second nombre" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "pengali" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "secondo numero" } ] } } ], "Z8K2": "Z20838", "Z8K3": [ "Z20", "Z21784", "Z22080", "Z22082", "Z22081" ], "Z8K4": [ "Z14", "Z21689", "Z21035" ], "Z8K5": "Z21032" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "multiply (float64)" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "multiplier des nombres à virgule flottante" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "kali (float64)" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "moltiplica (float64)" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "*", "multiply two float64s", "multiplication", "times" ] }, { "Z1K1": "Z31", "Z31K1": "Z1787", "Z31K2": [ "Z6", "prodotto (float64)", "moltiplicazione (float64)", "per (float64)" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } n8tfvg7n0c270ryqvkr67i5z5n583uz 272244 272243 2026-05-04T16:54:14Z YoshiRulz 10156 Added Z34768 to the approved list of implementations 272244 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z21032" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z21032K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "multiplicand" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "premier nombre" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "terkali" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "primo numero" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z21032K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "multiplier" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "second nombre" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "pengali" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "secondo numero" } ] } } ], "Z8K2": "Z20838", "Z8K3": [ "Z20", "Z21784", "Z22080", "Z22082", "Z22081" ], "Z8K4": [ "Z14", "Z21689", "Z21035", "Z34768" ], "Z8K5": "Z21032" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "multiply (float64)" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "multiplier des nombres à virgule flottante" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "kali (float64)" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "moltiplica (float64)" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "*", "multiply two float64s", "multiplication", "times" ] }, { "Z1K1": "Z31", "Z31K1": "Z1787", "Z31K2": [ "Z6", "prodotto (float64)", "moltiplicazione (float64)", "per (float64)" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } j0s1hs6xcphkf1nkx28uc4kipmltadx Z21033 0 45840 272246 237017 2026-05-04T16:55:36Z YoshiRulz 10156 Added Z34769 to the approved list of implementations 272246 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z21033" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z21033K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "x" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "premier nombre" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Divident" }, { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "প্রথম দশমিক সংখ্যা" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "x" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "x" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z21033K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "y" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "second nombre" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Divisor" }, { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "দ্বিতীয় দশমিক সংখ্যা" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "y" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "y" } ] } } ], "Z8K2": "Z20838", "Z8K3": [ "Z20", "Z22083", "Z22085" ], "Z8K4": [ "Z14", "Z21691", "Z21036", "Z34769" ], "Z8K5": "Z21033" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "divide (float64)" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "diviser des nombres à virgule flottante" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Float64-Divison" }, { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "বিভাজন (দশমিক সংখ্যা)" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "dividi (float64)" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "bagi (float64)" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "/", "float64 division", "divide", "divide one floating point number by another", "divide float64s", "division" ] }, { "Z1K1": "Z31", "Z31K1": "Z1430", "Z31K2": [ "Z6", "/" ] }, { "Z1K1": "Z31", "Z31K1": "Z1787", "Z31K2": [ "Z6", "divisione", "rapporto", "quoto", "quoziente" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } nwiiy7a6q564wiaidgwcdmsa79p0lxu Z21041 0 45848 272248 220252 2026-05-04T17:02:12Z YoshiRulz 10156 Added Z34770 to the approved list of implementations 272248 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z21041" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z21041K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "x" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "nombre" }, { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "x" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "numero" } ] } } ], "Z8K2": "Z20838", "Z8K3": [ "Z20", "Z21531", "Z21532", "Z21729", "Z21728" ], "Z8K4": [ "Z14", "Z21730", "Z21042", "Z34770" ], "Z8K5": "Z21041" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "absolute value (float64)" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "valeur absolue d'un nombre à virgule flottante" }, { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "পরম মান (ফ্লোট)" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "nilai mutlak (float64)" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "valore assoluto (float64)" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "fabs" ] }, { "Z1K1": "Z31", "Z31K1": "Z1011", "Z31K2": [ "Z6", "ফ্লোট সংখ্যার পরম মান" ] }, { "Z1K1": "Z31", "Z31K1": "Z1787", "Z31K2": [ "Z6", "modulo" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } frmcyhg3jf03qpva0ibasxq6g6mvahj Z21132 0 46096 272258 228321 2026-05-04T17:18:28Z YoshiRulz 10156 Added Z34771 to the approved list of implementations 272258 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z21132" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z21132K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "function" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "fonction" } ] } }, { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z21132K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "arguments" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "arguments" } ] } } ], "Z8K2": "Z7", "Z8K3": [ "Z20", "Z21134" ], "Z8K4": [ "Z14", "Z29355", "Z34771" ], "Z8K5": "Z21132" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "(!) vararg apply" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "(!) appliquer" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 4ccnpgrbtvo60bqc3gq7p6cul5nfla1 Talk:Z21245 1 46582 272263 151720 2026-05-04T17:33:56Z YoshiRulz 10156 Add to category 272263 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] == Possibly including tolerance band? == I just wanted to put a note here that, in the future, maybe this function could be changed to output a range of possible resistivities instead of only its center, like outputting a minimum and maximum. A new function to output this range could also be created instead. [[User:Moon motif|Moon motif]] ([[User talk:Moon motif|talk]]) 03:00, 1 January 2025 (UTC) :We should really have a (x) range type. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 03:03, 1 January 2025 (UTC) ef98ku5vuvqiglpzwo368xj5chax51f Z21278 0 46850 272267 153367 2026-05-04T17:49:03Z YoshiRulz 10156 Added Z34772 to the approved list of test cases 272267 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z21278" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z19677", "Z17K2": "Z21278K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "side length" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z13518", "Z17K2": "Z21278K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "number of sides" } ] } } ], "Z8K2": "Z19677", "Z8K3": [ "Z20", "Z21280", "Z21281", "Z34772" ], "Z8K4": [ "Z14", "Z21279" ], "Z8K5": "Z21278" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "area of a regular polygon" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "regular-polygon-area" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Given the length of a side and the number of sides, computes the area of a regular polygon." } ] } } 0am0j4uqlfzz9zbk84gxep66m53csh3 Z21312 0 47030 272270 154190 2026-05-04T17:51:23Z YoshiRulz 10156 Added Z21313, Z21315, Z21318 and Z21319 to the approved list of test cases 272270 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z21312" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z13518", "Z17K2": "Z21312K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "number of failures" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z19677", "Z17K2": "Z21312K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "probability of success" } ] } } ], "Z8K2": "Z19677", "Z8K3": [ "Z20", "Z21313", "Z21315", "Z21318", "Z21319" ], "Z8K4": [ "Z14" ], "Z8K5": "Z21312" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Geometric probability mass function" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "geometric pmf" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Given the probability of success and a number of failed trials, outputs the probability of seeing exactly many failures before success." } ] } } 9sut4bgc6c7nr40lrtzg62d2trteagl 272271 272270 2026-05-04T17:51:24Z YoshiRulz 10156 Added Z21353 and Z21354 to the approved list of implementations 272271 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z21312" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z13518", "Z17K2": "Z21312K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "number of failures" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z19677", "Z17K2": "Z21312K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "probability of success" } ] } } ], "Z8K2": "Z19677", "Z8K3": [ "Z20", "Z21313", "Z21315", "Z21318", "Z21319" ], "Z8K4": [ "Z14", "Z21353", "Z21354" ], "Z8K5": "Z21312" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Geometric probability mass function" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "geometric pmf" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Given the probability of success and a number of failed trials, outputs the probability of seeing exactly many failures before success." } ] } } 3mbys8hi2ku1nzftolcbdzhjuyuod4c Z21334 0 47055 272273 154405 2026-05-04T17:55:59Z YoshiRulz 10156 Added Z34774 to the approved list of implementations 272273 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z21334" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z21334K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "side a" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "côté a" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z21334K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "side b" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "côté b" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z21334K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "side c" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "côté c" } ] } } ], "Z8K2": "Z20838", "Z8K3": [ "Z20", "Z21338" ], "Z8K4": [ "Z14", "Z21337", "Z21335", "Z34774" ], "Z8K5": "Z21334" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Heron's formula" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "formule de Héron" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "Hero's formula" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Area of a triangle in terms of the three side lengths (a, b, c)" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "calcule l'aire d'un triangle via la longueur des côtés (a, b et c)" } ] } } kce3mytjbp89ksohlddq9mxmt0eudh7 Wikifunctions:Tests 4 47149 272406 154489 2026-05-05T06:49:40Z Arlo Barnes 1231 /* And finally */ new section 272406 wikitext text/x-wiki {{essay}} On Wikifunctions, you should create a good number of test cases functions. Tests make sure that your function works and show that to other users, serves as a good guide for other implementations, and also serve as examples to show how your function works. ==Assurance of reliability== Test cases primarily serve to ensure reliability. A good set of test cases should include edge cases and unexpected things that may fail your implementation. This can make sure that your implementation is optimal and will work for all possible direct applications and also applications in other compositions. When test cases are connected, you can also preview them while editing them, which allows you to check your changes before saving, which makes it easier to catch bugs. ==Helpful for the creation of more implementations== Wikifunctions benefits when more implementations exist for a function. This means that result may be able to be delivered faster, and so that other users can use these implementations in their own code easily. Test cases allow others to test their implementations (as above), and gives them a good example of how their implementation should work (see below). A particularly good set of implementations should also check for edge cases likely to appear even in languages or solutions that the function is not currently implemented in. This allows bugs to be spotted before even being introduced. ==Examples for users== For some functions, precisely they do is simply impossible to fit in the name or description, a good set of passing test cases tells users what this function can accept and what it will do to it. This also facilitates the creation of more test cases. If a user can understand what exactly a function is doing, they may be able to test for a certain edge case. Examples in the form of test cases, especially with specific labels, can let the user learn by example, instead of by theoretical language. == What does a good set of test cases look like? == What constitutes a good set of test cases generally depends on the function. However, there is a rough guideline for what a good set of test cases generally look like. First, quantity is usually preferable. This does not mean that an addition function needs 20 test cases, but that all functions should generally have a few, and [[User:Feeglgeef/Broad|broad]] functions usually require even more. Secondly, you should always test edge cases. This includes, but is not limited to: 0, the empty string, strings of characters of other alphabets, Infinity on floats, 300000 AD on dates, etc. Edge cases should remain what a reasonable user may consider inputting. Over the top edge cases that ''only'' occur when you are looking for them should not be included. Finally, include test cases that test the most common usages for the user. These provide limited help with actual testing, but provide assurance that everything is working and serve as great examples. == And finally == Make sure that your test is actually testing what needs to be ascertained; {{z+|Z13009}} passes, but not because the function operates on the input as advertised. ==Functions with good test suites== * [[Z20756]] * [[Z20000]] * [[Z13539]] * [[Z19583]] * There are many more, and this is just short list 1pbra3461us7kuc3z9xy7qfsslhduw4 Z21366 0 47156 272276 154613 2026-05-04T18:08:23Z YoshiRulz 10156 Added Z34775 to the approved list of implementations 272276 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z21366" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z21366K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "string" } ] } } ], "Z8K2": "Z6", "Z8K3": [ "Z20", "Z21368", "Z21369", "Z21370" ], "Z8K4": [ "Z14", "Z21367", "Z34775" ], "Z8K5": "Z21366" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Lowercase first word" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "lcfirst" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Lowercases the first word in a string" } ] } } hs2e05u2eyrgepjlm2dzdf9kjs1mch4 Z21430 0 47292 272278 265926 2026-05-04T18:14:32Z YoshiRulz 10156 Added Z34776 to the approved list of implementations 272278 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z21430" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z21430K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "leading binary bit" } ] } } ], "Z8K2": "Z16659", "Z8K3": [ "Z20", "Z21432", "Z21433", "Z21434" ], "Z8K4": [ "Z14", "Z21431", "Z34776" ], "Z8K5": "Z21430" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "convert leading binary bit to float64 sign" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "converts a string of \"0\" to positive, and a string of \"1\" to negative" } ] } } hgyihb47cgbtbch9qyodlqdr1yzbtnh Z21577 0 47651 272287 171454 2026-05-04T18:23:45Z YoshiRulz 10156 Added Z34777 to the approved list of implementations 272287 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z21577" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6006", "Z17K2": "Z21577K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "sense" } ] } } ], "Z8K2": "Z6091", "Z8K3": [ "Z20", "Z21579" ], "Z8K4": [ "Z14", "Z21578", "Z34777" ], "Z8K5": "Z21577" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "item reference from sense " } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "QID from Lexeme sense", "Lexeme sense to QID", "sense to QID", "Sense to QID", "Lexeme sense to item reference", "QID of sense", "QID of lexeme sense" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "returns the Wikidata item associated (via P5137) with the lexeme sense" } ] } } 7yhsvvo1syhfpt7tbr3g6izu8f973p4 Z21714 0 47839 272294 185395 2026-05-04T18:29:56Z YoshiRulz 10156 Removed Z21718 from the approved list of test cases 272294 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z21714" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z19677", "Z17K2": "Z21714K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "value" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "valeur" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "valore" } ] } } ], "Z8K2": "Z40", "Z8K3": [ "Z20", "Z21716", "Z21717" ], "Z8K4": [ "Z14", "Z24513", "Z21715" ], "Z8K5": "Z21714" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "is negative rational number" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "est-ce un nombre rationnel négatif ?" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "è numero razionale negativo" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1787", "Z31K2": [ "Z6", "è razionale negativo" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "renvoie \"vrai\" si la valeur donnée est un nombre rationnel négatif, sinon \"faux\"" } ] } } bbq78oge0kdiexg2fxvkx8aypt7eluz Z21721 0 47846 272297 157697 2026-05-04T18:34:20Z YoshiRulz 10156 Added Z34778 to the approved list of implementations 272297 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z21721" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z19677", "Z17K2": "Z21721K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "value" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "valeur" } ] } } ], "Z8K2": "Z40", "Z8K3": [ "Z20", "Z21723", "Z21724", "Z21725" ], "Z8K4": [ "Z14", "Z21722", "Z34778" ], "Z8K5": "Z21721" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "is non-negative rational number" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "est-ce un nombre rationnel non négatif ?" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "renvoie \"vrai\" si la valeur est un nombre rationnel non négatif, sinon \"faux\"" } ] } } ksuehxfejq84j9k6ldfrwiusr84g8yy Z21739 0 47865 272302 265614 2026-05-04T18:53:43Z YoshiRulz 10156 Added Z32318 to the approved list of implementations 272302 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z21739" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z21739K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "word" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "mot" }, { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "শব্দ" } ] } } ], "Z8K2": "Z6", "Z8K3": [ "Z20", "Z21754", "Z21755", "Z21858", "Z21859", "Z21884", "Z21885", "Z21882", "Z21876", "Z21877", "Z23760", "Z31053", "Z31054", "Z31055", "Z31058", "Z31056", "Z31057", "Z31059", "Z31060", "Z31061", "Z31062", "Z31063", "Z31064", "Z32988", "Z33493", "Z31068", "Z31069", "Z31070", "Z31071", "Z31072", "Z31073", "Z31074", "Z31075" ], "Z8K4": [ "Z14", "Z21875", "Z32318" ], "Z8K5": "Z21739" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "an or a? (English)" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "« an » ou « a » en anglais ?" }, { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "an নাকি a (ইংরেজি)" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "Indefinite article based on subsequent term", "a or an?" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "indique si le mot en anglais est précédé par « an » ou « a », exemple « an onion » mais « a carrot »" }, { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "কোনো একটি ইংরেজি শব্দের আগে \"a\" হবে নাকি \"an\" তা নির্ধারন করবে। " }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Based on an English word or phrase, returns whether \"a\" or \"an\" should be the indefinite article." } ] } } a6pqof0wtclnwy9bfe0x4a9koj0ibxc 272303 272302 2026-05-04T18:54:11Z YoshiRulz 10156 Removed Z21875 from the approved list of implementations 272303 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z21739" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z21739K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "word" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "mot" }, { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "শব্দ" } ] } } ], "Z8K2": "Z6", "Z8K3": [ "Z20", "Z21754", "Z21755", "Z21858", "Z21859", "Z21884", "Z21885", "Z21882", "Z21876", "Z21877", "Z23760", "Z31053", "Z31054", "Z31055", "Z31058", "Z31056", "Z31057", "Z31059", "Z31060", "Z31061", "Z31062", "Z31063", "Z31064", "Z32988", "Z33493", "Z31068", "Z31069", "Z31070", "Z31071", "Z31072", "Z31073", "Z31074", "Z31075" ], "Z8K4": [ "Z14", "Z32318" ], "Z8K5": "Z21739" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "an or a? (English)" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "« an » ou « a » en anglais ?" }, { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "an নাকি a (ইংরেজি)" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "Indefinite article based on subsequent term", "a or an?" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "indique si le mot en anglais est précédé par « an » ou « a », exemple « an onion » mais « a carrot »" }, { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "কোনো একটি ইংরেজি শব্দের আগে \"a\" হবে নাকি \"an\" তা নির্ধারন করবে। " }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Based on an English word or phrase, returns whether \"a\" or \"an\" should be the indefinite article." } ] } } s1okghy6yyi7s77k3aaut167xxy4rus Z21740 0 47867 272308 161429 2026-05-04T19:16:13Z YoshiRulz 10156 Move this to the inner function too 272308 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z21740" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32314", "Z14K3": { "Z1K1": "Z16", "Z16K1": "Z610", "Z16K2": "def Z32314(Z32314K1):\n\texceptions = [\"hour\", \"uni\", \"eu\"]\n\tZ32314K1 = Z32314K1.lower()\n\tan = Z32314K1.startswith((\"a\", \"o\", \"e\", \"i\", \"u\"))\n\tfor i in exceptions:\n\t\tif Z32314K1.startswith(i):\n\t\t\tan = not an\n\t\t\tbreak #shouldn't double flag\n\treturn an" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "an or a?, python" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "« an » ou « a » en anglais ?, en Python (1)" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 27zb42bfk84ugdgmh947aauhsq6g63d Talk:Z21617 1 48059 272291 163977 2026-05-04T18:25:34Z YoshiRulz 10156 Add to category 272291 wikitext text/x-wiki [[Category:French]] [[Category:Functions_with_only_code_implementations]] == Comments == Hi {{u|MolecularPilot}} and thanks a lot for creating this function! Here is some suggestions to improve this function : * reword the label to something like "1st group French conjugation" * return an error for known irregular verbs ending in -er (at least "aller" which is the most common) * take into account the "small" irregularities: ** for verbs ending in -ger and -cer (like "manger" and "lancer", "nous mangeons" and "nous lançons" for euphonic reasons, 'g' and 'c' becomes 'ge' and 'ç' before a 'a' or a 'o') ** for other more complicated verbs, like those ending in -eter et -eler (not sure the exact rule here) * add tests (especially for the irregularities) * not sure how to deal with the orthography (is it pre- or post-1990 orthography? in almost all cases, it's the same but not always) Cheers, [[User:VIGNERON|VIGNERON]] ([[User talk:VIGNERON|talk]]) 14:43, 17 January 2025 (UTC) apz9h5uao7ilxe49vtyz0twr21u2igr Z21848 0 48209 272331 159457 2026-05-04T20:01:45Z YoshiRulz 10156 Added Z34789 to the approved list of implementations 272331 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z21848" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z21848K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "a" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "a" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z21848K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "b" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "b" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z21848K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "c" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "c" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z20838" }, "Z8K3": [ "Z20", "Z21850", "Z21861" ], "Z8K4": [ "Z14", "Z21849", "Z34789" ], "Z8K5": "Z21848" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Quadratic equation solver (float64)" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "solveur d'équation quadratique (float64)" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "quadratic" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "This function approximates the real solutions for quadratic equations." }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "la fonction se rapproche des solutions des équations quadratiques" } ] } } bg3n735qkmb8qu3svz1bai5eav80t8z Z21850 0 48211 272328 159447 2026-05-04T19:57:16Z YoshiRulz 10156 Swap out comparison function to use epsilon 272328 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z21850" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z21848", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z21848", "Z21848K1": { "Z1K1": "Z7", "Z7K1": "Z20915", "Z20915K1": "1" }, "Z21848K2": { "Z1K1": "Z7", "Z7K1": "Z20915", "Z20915K1": "-1" }, "Z21848K3": { "Z1K1": "Z7", "Z7K1": "Z20915", "Z20915K1": "-1" } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z31093", "Z31093K2": [ "Z20838", { "Z1K1": "Z20838", "Z20838K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z20838K2": { "Z1K1": "Z16683", "Z16683K1": { "Z1K1": "Z16659", "Z16659K1": "Z16661" }, "Z16683K2": { "Z1K1": "Z13518", "Z13518K1": "0" } }, "Z20838K3": { "Z1K1": "Z13518", "Z13518K1": "2783377641436328" }, "Z20838K4": { "Z1K1": "Z20825", "Z20825K1": "Z20837" } }, { "Z1K1": "Z20838", "Z20838K1": { "Z1K1": "Z16659", "Z16659K1": "Z16662" }, "Z20838K2": { "Z1K1": "Z16683", "Z16683K1": { "Z1K1": "Z16659", "Z16659K1": "Z16662" }, "Z16683K2": { "Z1K1": "Z13518", "Z13518K1": "1" } }, "Z20838K3": { "Z1K1": "Z13518", "Z13518K1": "1063155655502160" }, "Z20838K4": { "Z1K1": "Z20825", "Z20825K1": "Z20837" } } ], "Z31093K3": { "Z1K1": "Z7", "Z7K1": "Z21028", "Z21028K1": { "Z1K1": "Z20838", "Z20838K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z20838K2": { "Z1K1": "Z16683", "Z16683K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z16683K2": { "Z1K1": "Z13518", "Z13518K1": "1" } }, "Z20838K3": { "Z1K1": "Z13518", "Z13518K1": "0" }, "Z20838K4": { "Z1K1": "Z20825", "Z20825K1": "Z20837" } }, "Z21028K2": { "Z1K1": "Z20838", "Z20838K1": { "Z1K1": "Z16659", "Z16659K1": "Z16662" }, "Z20838K2": { "Z1K1": "Z16683", "Z16683K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z16683K2": { "Z1K1": "Z13518", "Z13518K1": "4" } }, "Z20838K3": { "Z1K1": "Z13518", "Z13518K1": "2251799813685248" }, "Z20838K4": { "Z1K1": "Z20825", "Z20825K1": "Z20837" } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "x^2 - x - 1 → phi, -(1 - phi)" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "x^2 - x - 1 → phi, -(1 - phi)" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 683wwp01vzfd6kfztujktztam87oh0i Z21875 0 48269 272305 265613 2026-05-04T19:10:29Z YoshiRulz 10156 Poach this for the inner function, now returns bool 272305 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z21875" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32314", "Z14K3": { "Z1K1": "Z16", "Z16K1": "Z610", "Z16K2": "def Z32314(Z32314K1):\n\tword = Z32314K1.split(\" \")[0]\n\timport re\n\t\n\tU_PATTERN = re.compile(r\"^u[bcdfghjklmpqrstvwxyz][aeiou]\")\n\tCASE_SENSITIVE_EXCEPTIONS = {\n\t\t\"Ewe\": True\n\t}\n\tEXCEPTIONS_DICT = {\n\t\tword.lower(): False for word in [ \"NASA\", \"once\", \"one\", \"onesie\", \"Uniat\", \"Uniate\", \"uniaxial\", \"unibody\", \"unibrow\", \"unicameral\", \"UNICEF\", \"unicellular\", \"unicorn\", \"unicycle\", \"unidimensional\", \"unidirectional\", \"unification\", \"unified\", \"unifoliate\", \"unifoliolate\", \"uniform\", \"uniformity\", \"unilateral\", \"unilateralism\", \"unilineal\", \"unilinear\", \"unilingual\", \"unilocular\", \"uninucleate\", \"union\", \"unionism\", \"unionist\", \"unionization\", \"unionized\", \"uniparental\", \"unipolar\", \"unique\", \"unisex\", \"unisexual\", \"unison\", \"unit\", \"unitage\", \"unitard\", \"united\", \"uniter\", \"unitive\", \"unitrust\", \"unity\", \"univalent\", \"univalve\", \"univariate\", \"univerbation\", \"universal\", \"universalism\", \"universalistic\", \"universality\", \"universe\", \"university\", \"univocal\"]\n\t}\n\tEXCEPTIONS_DICT.update({\n\t\tword.lower(): True for word in [\n\t\t\t\"heir\", \"heirloom\", \"herb\", \"heuristic\", \"honest\", \"honestly\", \"honesty\", \"honor\", \"honorarium\", \"honorary\", \"honour\", \"hour\", \"hourly\"\n\t\t]\n\t})\n\tINITIALISM_LETTERS = {\"A\", \"E\", \"F\", \"H\", \"I\", \"L\", \"M\", \"N\", \"O\", \"R\", \"S\", \"X\"}\n\tREGULAR_VOWELS = {\"a\", \"e\", \"i\", \"o\"}\n\tCONSONANTS = set(\"bcdfghjklmnpqrstvwxyz\")\n\n\t# 1: If the word is an empty string, that means it doesn't start with a vowel\n\tif not word:\n\t\treturn False\n\n\t# 2: If the word is a case-sensitive exception, return the match\n\tif word in CASE_SENSITIVE_EXCEPTIONS:\n\t\treturn CASE_SENSITIVE_EXCEPTIONS[word]\n\n\tword_lower = word.lower()\n\n\t# 3: If the word is an exception, return the match\n\tif word_lower in EXCEPTIONS_DICT:\n\t\treturn EXCEPTIONS_DICT[word_lower]\n\n\tfirst_letter = word[0]\n\tfirst_letter_lower = first_letter.lower()\n\n\t# 4: If the word is a number, return what the result would be for its ordinal word(s)\n\tif first_letter == \"8\" or ((word.startswith(\"11\") or word.startswith(\"18\")) and len(word) not in [3, 4]):\n\t\treturn True\n\n\t# 5: If the word is 1 letter, it is likely a letter name\n\tif len(word) == 1:\n\t\treturn first_letter.upper() in INITIALISM_LETTERS\n\t\t\n\t# 6: If the word starts with 2 or more capital letters, it is likely an initialism\n\t#! NOTE: this mishandles acronyms\n\tif first_letter.isupper() and word[1].isupper():\n\t\treturn first_letter.upper() in INITIALISM_LETTERS\n\t\t\n\t# 7: If the word is 3 or more letters long and starts with a capital letter and a period, it is likely an initialism\t\n\tif first_letter.isupper() and len(word) \u003E= 3 and word[1] == \".\":\n\t\treturn first_letter.upper() in INITIALISM_LETTERS\n\n\t# 8: If the word starts with a U, handle it\n\tif first_letter_lower == \"u\":\n\t\treturn not U_PATTERN.match(word_lower)\n\n\t# 9: If the word starts with an eu or ew, handle it\n\tif len(word) \u003E= 3 and (word_lower.startswith(\"eu\") or word_lower.startswith(\"ew\")):\n\t\tif word_lower[2] in CONSONANTS or word_lower == \"ewe\":\n\t\t\treturn False\n\n\t# 10: If the word starts with one of the 4 other vowels, return it\n\tif first_letter_lower in REGULAR_VOWELS:\n\t\treturn True\n\n\treturn False" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Indefinite article from subsequent word, python" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "« an » ou « a » en anglais ?, en Python (2)" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 34ligkmqhlmcaj9986gt51wv92cfk3s Talk:Z21682 1 48667 272295 161499 2026-05-04T18:30:18Z YoshiRulz 10156 Add to category 272295 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] == Additional Digit separators == What kind of additional digit separators are from your point of view relevant. As I remember I read about a apostrophe "'" as a separator used in some countries. I looked at the section about digit separators in this [https://en.wikipedia.org/wiki/Decimal_separator#Digit_grouping English Wikipedia] article and there are additional ones to "," and "." listed. From my point of view this examples shows difficulties in being general. It is not possible to cover all possible use cases with one function. This could lead to misinterpretation as in some cases there are Spaces within the number groups. [[User:Hogü-456|Hogü-456]] ([[User talk:Hogü-456|talk]]) 21:42, 29 January 2025 (UTC) :Yes, I want to remove all separators. So, for example [[Z21997]] works. But the trick is to preserve any radix characters (decimal marks), which is why "." and "," are somewhat special. If you're aware of more characters that are used in the place of a decimal point, let me know, we can try to address them too. [[User:99of9|99of9]] ([[User talk:99of9|talk]]) 21:57, 29 January 2025 (UTC) 9x0ov4guipzcvy0cmqyg91gmhx214pm Talk:Z21599 1 49327 272290 163976 2026-05-04T18:25:02Z YoshiRulz 10156 Add to category 272290 wikitext text/x-wiki [[Category:French]] [[Category:Functions_with_only_code_implementations]] banfxsndrkxcg5jvwljula2rn9a94qe Talk:Z21624 1 49328 272292 163978 2026-05-04T18:25:38Z YoshiRulz 10156 Add to category 272292 wikitext text/x-wiki [[Category:French]] [[Category:Functions_with_only_code_implementations]] banfxsndrkxcg5jvwljula2rn9a94qe Talk:Z21632 1 49329 272293 163979 2026-05-04T18:25:42Z YoshiRulz 10156 Add to category 272293 wikitext text/x-wiki [[Category:French]] [[Category:Functions_with_only_code_implementations]] banfxsndrkxcg5jvwljula2rn9a94qe Z22321 0 49419 272219 164529 2026-05-04T16:18:51Z YoshiRulz 10156 Disambiguate en label 272219 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z22321" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z20902", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z22318", "Z22318K1": { "Z1K1": "Z7", "Z7K1": "Z20854", "Z20854K1": { "Z1K1": "Z18", "Z18K1": "Z20902K1" } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "square root of rational, f64 composition" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "racine carrée, en Composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } mdcsd75bpj7eqh597iqb1lgiijjglqd Z24900 0 57976 272201 190868 2026-05-04T16:11:01Z YoshiRulz 10156 Fix typing 272201 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z24900" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z20744", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z17111", "Z17111K1": { "Z1K1": "Z7", "Z7K1": "Z22844", "Z22844K1": { "Z1K1": "Z18", "Z18K1": "Z20744K2" } }, "Z17111K2": { "Z1K1": "Z7", "Z7K1": "Z22844", "Z22844K1": { "Z1K1": "Z18", "Z18K1": "Z20744K1" } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "subtract the julian day numbers" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 6p79z0br8bf5jjo5k4wr4jpdsvs9t2g Talk:Z20788 1 57977 272208 190903 2026-05-04T16:13:30Z YoshiRulz 10156 Add to category 272208 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] == Should we follow ISO 8601? == I think it would be better to use the ISO 6801 standard (YYYY-MM-DD). Not only it is an officially recognised standard, but it is way less likely to misinterpretations (the current d/m/y format could be erroneusly interpreted by people used to the m/d/y format, for example) [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 14:47, 2 June 2025 (UTC) :Yes, that is also my preference. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 22:51, 2 June 2025 (UTC) 7l7bnxqx11aoxrb9pwtye05jvvku9b1 Z26712 0 62078 272329 261688 2026-05-04T19:58:52Z Hogü-456 617 Removed Z26714 from the approved list of implementations 272329 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z26712" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z26712K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Entität" }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "subject" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z26712K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Klasse" }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "class" } ] } } ], "Z8K2": "Z6", "Z8K3": [ "Z20", "Z26713", "Z26715", "Z26716", "Z32403", "Z32405" ], "Z8K4": [ "Z14", "Z32398" ], "Z8K5": "Z26712" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Deutscher Instanziierungssatz ohne Artikel" }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "German instantiating sentence without article" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "# gendered nouns" } ] } } 0r6lnpucr7pck4sz4ubfswb8h3feetb Wikifunctions:Human languages/Z1002 4 67229 272385 234132 2026-05-05T05:56:48Z Arlo Barnes 1231 /* Functions */ move from [[WF:RF]] 272385 wikitext text/x-wiki {{draft}} [[File:English language distribution.svg|thumb]] '''English''' ([[Z1002]], code <code>en</code>) is a West Germanic language which is used as a global lingua franca. {{z+|Z1002}} == Functions == {{Main|Wikifunctions:Catalogue/Natural language operations/English}} === Variants === Several variants of English are supported, including: * {{Z+|Z1689}} (en-US) — [[../Z1689]] * {{Z+|Z1437}} (en-CA) — [[../Z1437]] * {{z+|Z1113}} (en-AU) — [[../Z1113]] * {{z+|Z1199}} (en-GB) — [[../Z1199]] * {{Z+|Z1966}} (en-IN) — [[../Z1966]] * {{Z+|Z1881}} (en-x-piglatin) — [[../Z1881]] (a language game derived from English) * {{Z+|Z1124}} (en-x-simple) — [[../Z1124]] * {{z+|Z11390}} Verb -> agent noun, e.g. "dance"->"dancer" * Join English morphemes (extends {{z+|Z13254}} to cases like re + en + able + er + s → re-enablers. {{z+|Z13254}} will correctly join re-enable + ers or re- + enablers, but re + enablers → “renablers” (incorrect). {{z+|Z13275}} tests the Reduce function to produce “detoxification” from a list of four morphemes (orchestrator limit exceeded with five). I doubt we’ll want to derive “toxify” from “toxic”, however. * Derive lemmas from a form. This is envisaged as the converse of Join English morphemes. The focus would be identifying the base form (the lexeme’s lemma) rather than further segmenting the lemma. For example, “underlay” should return “underlie” (for which it is the past participle) and the noun “underlay” (for which it is the lemma) and (perhaps) the verb “underlay”, which might be the tendency of an unproductive hen or the activity of a carpet-fitter. As this is a purely functional converse, every string will have itself as a possible lemma. * Generate [[:w:Numeral_prefix|Numerical prefixes]] of various kinds from a natural number input. * {{z+|Z19499}} * Intro for geographical feature: Returns a intro sentence for a geographical feature. ** Example 1: The '''Centre for Fine Arts''' is an '''arts center''' on '''Coudenberg - Koudenberg''' in '''Mont des Arts - Kunstberg, City of Brussels''', '''Belgium''' *** Wikidata label = Centre for Fine Arts *** {{Property|P31}} = {{Q|Q2190251}} *** {{Property|P706}} = {{Q|Q13451667}} *** {{Property|P276}} = {{Q|Q115180808}} *** {{Property|P131}} = {{Q|Q239}} *** {{Property|P17}} = {{Q|Q31}} **Example 2: '''Olympus Mons''' is a '''mons''' on '''Mars''' on '''Tharsis''', '''Amazonis quadrangle''' and '''Tharsis quadrangle'''. ***Wikidata label = Olympus Mons ***{{Property|P31}} = {{Q|Q429088}} ***{{Property|P376}} = {{Q|Q111}} ***{{Property|P706}} = {{Q|Q2170645}} ***{{Property|P276}} = {{Q|Q3054547}}, {{Q|Q3054525}} **Example 3: '''Princess Elisabeth Antarctica''' is a '''Antarctic research station''' on '''Utsteinen Nunatak''', '''Antarctic Treaty area''', '''Antartica''' ***Wikidata label = Princess Elisabeth Antarctica ***{{Property|P31}} = {{Q|Q749622}} ***{{Property|P706}} = {{Q|Q7754959}} ***{{Property|P131}} = {{Q|Q21590062}} ***{{Property|P17}} = ''none'' ***{{Property|P30}} = {{Q|Q51}} [[category:English| ]] rtf9os7xnptw51ppzyklnwtccmtkwq1 Z30460 0 70271 272354 259804 2026-05-04T20:54:59Z Hogü-456 617 272354 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z30460" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z30460K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "item reference" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "reference na položku" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z30460K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "language" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "jazyk" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z6095" }, "Z8K3": [ "Z20", "Z30461" ], "Z8K4": [ "Z14", "Z30467" ], "Z8K5": "Z30460" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "find lexeme refs for a Wikidata item via P5137" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "najít lexémy odkazující položku Wikidat přes P5137" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Lexembezug zu Wikidata-Datenobjekt über P5137" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "find lexeme references for a Wikidata item via P5137" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "returns list of lexemes if any" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "vrátí seznam referencí na lexémy Wikidat v zadaném jazyce, které přesně odpovídají (P5137) uvedené položce Wikidat" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Gibt die Lexeme in der angegebenen Sprache zurück, welche einen Bezug zum Wikidata-Datenobjekt über P5137 Datenobjekt für diesen Sinn haben" } ] } } opbw0vrjami863dmm6jt9141zj6q5b6 Z30865 0 71331 272333 241288 2026-05-04T20:13:25Z YoshiRulz 10156 Clarify en label 272333 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z30865" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z30865K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "sequence" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": { "Z1K1": "Z7", "Z7K1": "Z882", "Z882K1": "Z13518", "Z882K2": "Z1" } }, "Z8K3": [ "Z20", "Z30866", "Z30909" ], "Z8K4": [ "Z14", "Z30867" ], "Z8K5": "Z30865" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "run-length encoding (object equality)" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "run-length encode", "RLE" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } j11bq925tj99x8sgyq4czm1jve6iaxb 272337 272333 2026-05-04T20:16:47Z YoshiRulz 10156 Removed Z30867 from the approved list of implementations 272337 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z30865" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z30865K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "sequence" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": { "Z1K1": "Z7", "Z7K1": "Z882", "Z882K1": "Z13518", "Z882K2": "Z1" } }, "Z8K3": [ "Z20", "Z30866", "Z30909" ], "Z8K4": [ "Z14" ], "Z8K5": "Z30865" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "run-length encoding (object equality)" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "run-length encode", "RLE" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } ai97mx83fnr8814cv8msr80wx7h009w 272340 272337 2026-05-04T20:18:12Z YoshiRulz 10156 Added Z34791 to the approved list of implementations 272340 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z30865" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z30865K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "sequence" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": { "Z1K1": "Z7", "Z7K1": "Z882", "Z882K1": "Z13518", "Z882K2": "Z1" } }, "Z8K3": [ "Z20", "Z30866", "Z30909" ], "Z8K4": [ "Z14", "Z34791" ], "Z8K5": "Z30865" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "run-length encoding (object equality)" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "run-length encode", "RLE" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } nckmc88qga8sq90gikl5v8e5oz5ouzs 272342 272340 2026-05-04T20:39:58Z YoshiRulz 10156 Removed Z34791 from the approved list of implementations 272342 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z30865" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z30865K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "sequence" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": { "Z1K1": "Z7", "Z7K1": "Z882", "Z882K1": "Z13518", "Z882K2": "Z1" } }, "Z8K3": [ "Z20", "Z30866", "Z30909" ], "Z8K4": [ "Z14" ], "Z8K5": "Z30865" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "run-length encoding (object equality)" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "run-length encode", "RLE" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } ai97mx83fnr8814cv8msr80wx7h009w 272343 272342 2026-05-04T20:40:01Z YoshiRulz 10156 Added Z34791 to the approved list of implementations 272343 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z30865" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z30865K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "sequence" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": { "Z1K1": "Z7", "Z7K1": "Z882", "Z882K1": "Z13518", "Z882K2": "Z1" } }, "Z8K3": [ "Z20", "Z30866", "Z30909" ], "Z8K4": [ "Z14", "Z34791" ], "Z8K5": "Z30865" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "run-length encoding (object equality)" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "run-length encode", "RLE" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } nckmc88qga8sq90gikl5v8e5oz5ouzs 272344 272343 2026-05-04T20:40:44Z YoshiRulz 10156 Removed Z30866 from the approved list of test cases 272344 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z30865" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z30865K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "sequence" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": { "Z1K1": "Z7", "Z7K1": "Z882", "Z882K1": "Z13518", "Z882K2": "Z1" } }, "Z8K3": [ "Z20", "Z30909" ], "Z8K4": [ "Z14", "Z34791" ], "Z8K5": "Z30865" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "run-length encoding (object equality)" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "run-length encode", "RLE" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 58lho6ylkcwhinrign7ragu5ho83ekw 272347 272344 2026-05-04T20:42:25Z YoshiRulz 10156 Removed Z30909 from the approved list of test cases 272347 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z30865" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z30865K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "sequence" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": { "Z1K1": "Z7", "Z7K1": "Z882", "Z882K1": "Z13518", "Z882K2": "Z1" } }, "Z8K3": [ "Z20" ], "Z8K4": [ "Z14", "Z34791" ], "Z8K5": "Z30865" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "run-length encoding (object equality)" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "run-length encode", "RLE" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 95grhmkeo6mcra1foi0l15cw5y2evdc Z30866 0 71332 272345 237943 2026-05-04T20:41:36Z YoshiRulz 10156 Move to inner function 272345 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z30866" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34790", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34790", "Z34790K1": { "Z1K1": "Z7", "Z7K1": "Z22717", "Z22717K1": "AAAABBBCCDAA" }, "Z34790K2": "Z22683" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z889", "Z889K2": [ { "Z1K1": "Z7", "Z7K1": "Z882", "Z882K1": "Z13518", "Z882K2": "Z6" }, { "Z1K1": "Z7", "Z7K1": "Z30414", "Z30414K1": { "Z1K1": "Z13518", "Z13518K1": "4" }, "Z30414K2": { "Z1K1": "Z86", "Z86K1": { "Z1K1": "Z13518", "Z13518K1": "65" } } }, { "Z1K1": "Z7", "Z7K1": "Z30414", "Z30414K1": { "Z1K1": "Z13518", "Z13518K1": "3" }, "Z30414K2": { "Z1K1": "Z86", "Z86K1": { "Z1K1": "Z13518", "Z13518K1": "66" } } }, { "Z1K1": "Z7", "Z7K1": "Z30414", "Z30414K1": { "Z1K1": "Z13518", "Z13518K1": "2" }, "Z30414K2": { "Z1K1": "Z86", "Z86K1": { "Z1K1": "Z13518", "Z13518K1": "67" } } }, { "Z1K1": "Z7", "Z7K1": "Z30414", "Z30414K1": { "Z1K1": "Z13518", "Z13518K1": "1" }, "Z30414K2": { "Z1K1": "Z86", "Z86K1": { "Z1K1": "Z13518", "Z13518K1": "68" } } }, { "Z1K1": "Z7", "Z7K1": "Z30414", "Z30414K1": { "Z1K1": "Z13518", "Z13518K1": "2" }, "Z30414K2": { "Z1K1": "Z86", "Z86K1": { "Z1K1": "Z13518", "Z13518K1": "65" } } } ], "Z889K3": "Z19586" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "RLE(\"AAAABBBCCDAA\") == \"4A3B2C1D2A\"" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 4xibpz5mm5le885mtnyy9hisfn7kmmo Z30867 0 71333 272338 241287 2026-05-04T20:17:50Z YoshiRulz 10156 Move to inner function 272338 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z30867" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z34790", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z813", "Z813K1": { "Z1K1": "Z18", "Z18K1": "Z30865K1" } }, "Z802K2": [ { "Z1K1": "Z7", "Z7K1": "Z882", "Z882K1": "Z13518", "Z882K2": "Z1" } ], "Z802K3": { "Z1K1": "Z7", "Z7K1": "Z810", "Z810K1": { "Z1K1": "Z7", "Z7K1": "Z30414", "Z30414K1": { "Z1K1": "Z7", "Z7K1": "Z31032", "Z31032K1": { "Z1K1": "Z7", "Z7K1": "Z812", "Z812K1": { "Z1K1": "Z18", "Z18K1": "Z30865K1" } }, "Z31032K2": { "Z1K1": "Z7", "Z7K1": "Z811", "Z811K1": { "Z1K1": "Z18", "Z18K1": "Z30865K1" } }, "Z31032K3": { "Z1K1": "Z18", "Z18K1": "Z34790K2" } }, "Z30414K2": { "Z1K1": "Z7", "Z7K1": "Z811", "Z811K1": { "Z1K1": "Z18", "Z18K1": "Z30865K1" } } }, "Z810K2": { "Z1K1": "Z7", "Z7K1": "Z30865", "Z30865K1": { "Z1K1": "Z7", "Z7K1": "Z13369", "Z13369K1": { "Z1K1": "Z7", "Z7K1": "Z17895", "Z17895K1": { "Z1K1": "Z18", "Z18K1": "Z30865K1" } }, "Z13369K2": { "Z1K1": "Z7", "Z7K1": "Z31032", "Z31032K1": { "Z1K1": "Z7", "Z7K1": "Z812", "Z812K1": { "Z1K1": "Z18", "Z18K1": "Z30865K1" } }, "Z31032K2": { "Z1K1": "Z7", "Z7K1": "Z811", "Z811K1": { "Z1K1": "Z18", "Z18K1": "Z30865K1" } }, "Z31032K3": { "Z1K1": "Z18", "Z18K1": "Z34790K2" } } } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "run-length encoding, recursive composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 6rn4g45av9n3rzrutyjozutocec3vn5 272341 272338 2026-05-04T20:39:07Z YoshiRulz 10156 Swap out function used for the recursive call 272341 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z30867" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z34790", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z813", "Z813K1": { "Z1K1": "Z18", "Z18K1": "Z30865K1" } }, "Z802K2": [ { "Z1K1": "Z7", "Z7K1": "Z882", "Z882K1": "Z13518", "Z882K2": "Z1" } ], "Z802K3": { "Z1K1": "Z7", "Z7K1": "Z810", "Z810K1": { "Z1K1": "Z7", "Z7K1": "Z30414", "Z30414K1": { "Z1K1": "Z7", "Z7K1": "Z31032", "Z31032K1": { "Z1K1": "Z7", "Z7K1": "Z812", "Z812K1": { "Z1K1": "Z18", "Z18K1": "Z30865K1" } }, "Z31032K2": { "Z1K1": "Z7", "Z7K1": "Z811", "Z811K1": { "Z1K1": "Z18", "Z18K1": "Z30865K1" } }, "Z31032K3": { "Z1K1": "Z18", "Z18K1": "Z34790K2" } }, "Z30414K2": { "Z1K1": "Z7", "Z7K1": "Z811", "Z811K1": { "Z1K1": "Z18", "Z18K1": "Z30865K1" } } }, "Z810K2": { "Z1K1": "Z7", "Z7K1": "Z34790", "Z34790K1": { "Z1K1": "Z7", "Z7K1": "Z13369", "Z13369K1": { "Z1K1": "Z7", "Z7K1": "Z17895", "Z17895K1": { "Z1K1": "Z18", "Z18K1": "Z34790K1" } }, "Z13369K2": { "Z1K1": "Z7", "Z7K1": "Z31032", "Z31032K1": { "Z1K1": "Z7", "Z7K1": "Z812", "Z812K1": { "Z1K1": "Z18", "Z18K1": "Z34790K1" } }, "Z31032K2": { "Z1K1": "Z7", "Z7K1": "Z811", "Z811K1": { "Z1K1": "Z18", "Z18K1": "Z34790K1" } }, "Z31032K3": { "Z1K1": "Z18", "Z18K1": "Z34790K2" } } }, "Z34790K2": { "Z1K1": "Z18", "Z18K1": "Z34790K2" } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "run-length encoding, recursive composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 4uodnfc1ik89juo8llob9m50x08zmtv 272351 272341 2026-05-04T20:44:55Z YoshiRulz 10156 Fix malformed argument references 272351 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z30867" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z34790", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z813", "Z813K1": { "Z1K1": "Z18", "Z18K1": "Z34790K1" } }, "Z802K2": [ { "Z1K1": "Z7", "Z7K1": "Z882", "Z882K1": "Z13518", "Z882K2": "Z1" } ], "Z802K3": { "Z1K1": "Z7", "Z7K1": "Z810", "Z810K1": { "Z1K1": "Z7", "Z7K1": "Z30414", "Z30414K1": { "Z1K1": "Z7", "Z7K1": "Z31032", "Z31032K1": { "Z1K1": "Z7", "Z7K1": "Z812", "Z812K1": { "Z1K1": "Z18", "Z18K1": "Z34790K1" } }, "Z31032K2": { "Z1K1": "Z7", "Z7K1": "Z811", "Z811K1": { "Z1K1": "Z18", "Z18K1": "Z34790K1" } }, "Z31032K3": { "Z1K1": "Z18", "Z18K1": "Z34790K2" } }, "Z30414K2": { "Z1K1": "Z7", "Z7K1": "Z811", "Z811K1": { "Z1K1": "Z18", "Z18K1": "Z34790K1" } } }, "Z810K2": { "Z1K1": "Z7", "Z7K1": "Z34790", "Z34790K1": { "Z1K1": "Z7", "Z7K1": "Z13369", "Z13369K1": { "Z1K1": "Z7", "Z7K1": "Z17895", "Z17895K1": { "Z1K1": "Z18", "Z18K1": "Z34790K1" } }, "Z13369K2": { "Z1K1": "Z7", "Z7K1": "Z31032", "Z31032K1": { "Z1K1": "Z7", "Z7K1": "Z812", "Z812K1": { "Z1K1": "Z18", "Z18K1": "Z34790K1" } }, "Z31032K2": { "Z1K1": "Z7", "Z7K1": "Z811", "Z811K1": { "Z1K1": "Z18", "Z18K1": "Z34790K1" } }, "Z31032K3": { "Z1K1": "Z18", "Z18K1": "Z34790K2" } } }, "Z34790K2": { "Z1K1": "Z18", "Z18K1": "Z34790K2" } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "run-length encoding, recursive composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } dogp87dzmf6he6t2ip58l5kj87dbl83 Z30909 0 71658 272348 238844 2026-05-04T20:43:06Z YoshiRulz 10156 Move to inner function 272348 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z30909" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34790", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34790", "Z34790K1": [ "Z40", { "Z1K1": "Z40", "Z40K1": "Z41" }, { "Z1K1": "Z40", "Z40K1": "Z42" }, { "Z1K1": "Z40", "Z40K1": "Z42" } ], "Z34790K2": "Z844" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z889", "Z889K2": [ { "Z1K1": "Z7", "Z7K1": "Z882", "Z882K1": "Z13518", "Z882K2": "Z40" }, { "Z1K1": "Z7", "Z7K1": "Z30414", "Z30414K1": { "Z1K1": "Z13518", "Z13518K1": "1" }, "Z30414K2": { "Z1K1": "Z40", "Z40K1": "Z41" } }, { "Z1K1": "Z7", "Z7K1": "Z30414", "Z30414K1": { "Z1K1": "Z13518", "Z13518K1": "2" }, "Z30414K2": { "Z1K1": "Z40", "Z40K1": "Z42" } } ], "Z889K3": "Z19586" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "RLE([ T, F, F ]) == [ (1, T), (2, F) ]" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } ts1sv1bi9ez701gbue9uo525cecqamd Z31038 0 72373 272357 241156 2026-05-04T21:04:24Z YoshiRulz 10156 Pass comparison function to RLE 272357 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z31038" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z31032", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": { "Z1K1": "Z18", "Z18K1": "Z31032K3" }, "K1": { "Z1K1": "Z7", "Z7K1": "Z822", "Z822K1": { "Z1K1": "Z7", "Z7K1": "Z811", "Z811K1": { "Z1K1": "Z7", "Z7K1": "Z34790", "Z34790K1": { "Z1K1": "Z18", "Z18K1": "Z31032K1" }, "Z34790K2": { "Z1K1": "Z18", "Z18K1": "Z31032K3" } } } }, "K2": { "Z1K1": "Z18", "Z18K1": "Z31032K2" } }, "Z802K2": { "Z1K1": "Z7", "Z7K1": "Z13578", "Z13578K1": { "Z1K1": "Z7", "Z7K1": "Z821", "Z821K1": { "Z1K1": "Z7", "Z7K1": "Z811", "Z811K1": { "Z1K1": "Z7", "Z7K1": "Z34790", "Z34790K1": { "Z1K1": "Z18", "Z18K1": "Z31032K1" }, "Z34790K2": { "Z1K1": "Z18", "Z18K1": "Z31032K3" } } } } }, "Z802K3": { "Z1K1": "Z13518", "Z13518K1": "1" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "index of first mismatch, RLE composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } lezmfnjky7ygpx77qkgaasf1e4ooh3x 272358 272357 2026-05-04T21:09:10Z YoshiRulz 10156 Leave a note 272358 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z31038" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z31032", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": { "Z1K1": "Z18", "Z18K1": "Z31032K3" }, "K1": { "Z1K1": "Z7", "Z7K1": "Z822", "Z822K1": { "Z1K1": "Z7", "Z7K1": "Z811", "Z811K1": { "Z1K1": "Z7", "Z7K1": "Z34790", "Z34790K1": { "Z1K1": "Z18", "Z18K1": "Z31032K1" }, "Z34790K2": { "Z1K1": "Z18", "Z18K1": "Z31032K3" } } } }, "K2": { "Z1K1": "Z18", "Z18K1": "Z31032K2" } }, "Z802K2": { "Z1K1": "Z7", "Z7K1": "Z13578", "Z13578K1": { "Z1K1": "Z7", "Z7K1": "Z821", "Z821K1": { "Z1K1": "Z7", "Z7K1": "Z811", "Z811K1": { "Z1K1": "Z7", "Z7K1": "Z34790", "Z34790K1": { "Z1K1": "Z18", "Z18K1": "Z31032K1" }, "Z34790K2": { "Z1K1": "Z18", "Z18K1": "Z31032K3" } } } } }, "Z802K3": { "Z1K1": "Z13518", "Z13518K1": "1" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "index of first mismatch, RLE composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "ugh the comparison function in the endsWith example isn't usable as RLE's equality function, it needs to be a partial application endsWith(\"ary\")" } ] } } cj6l539cbqkbb6n96jls4ft0wsc8wot User:YoshiRulz/Functions that are maybe done 2 73450 272361 271899 2026-05-04T21:14:36Z YoshiRulz 10156 Add Z19170 272361 wikitext text/x-wiki {{phab|T412955}} <br clear="all" /><hr> === {{Z|28217}} === tests timing out; connected impl. anyway * {{Z|28218}}&mdash;[https://www.wikifunctions.org/wiki/Z28787?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z28787%22%2C%22Z28787K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z13397%22%2C%22Z13397K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22978%22%2C%22Z22978K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z6821%22%2C%22Z6821K1%22%3A%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q19317%22%7D%7D%2C%22Z22978K2%22%3A%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P527%22%7D%7D%2C%22Z13397K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z28755%22%2C%22Z28755K1%22%3A%7B%22Z1K1%22%3A%22Z20159%22%2C%22Z20159K1%22%3A%7B%22Z1K1%22%3A%22Z17813%22%2C%22Z17813K1%22%3A%22Z17814%22%7D%2C%22Z20159K2%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%221966%22%7D%7D%2C%22Z28755K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z873%22%2C%22Z873K1%22%3A%22Z28773%22%2C%22Z873K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z873%22%2C%22Z873K1%22%3A%22Z19308%22%2C%22Z873K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z13464%22%2C%22Z13464K1%22%3A%22Z22839%22%2C%22Z13464K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z13464%22%2C%22Z13464K1%22%3A%22Z29694%22%2C%22Z13464K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30172%22%2C%22Z30172K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30248%22%2C%22Z30248K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22978%22%2C%22Z22978K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z6821%22%2C%22Z6821K1%22%3A%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q19317%22%7D%7D%2C%22Z22978K2%22%3A%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P527%22%7D%7D%2C%22Z30248K2%22%3A%5B%22Z6030%22%2C%7B%22Z1K1%22%3A%22Z6030%22%2C%22Z6030K1%22%3A%22Z6036%22%7D%5D%2C%22Z30248K3%22%3A%5B%22Z60%22%5D%2C%22Z30248K4%22%3A%5B%22Z6092%22%2C%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P585%22%7D%2C%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P1346%22%7D%5D%7D%7D%2C%22Z13464K3%22%3A%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P585%22%7D%7D%2C%22Z13464K3%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z23723%22%7D%7D%7D%7D%7D%7D%2C%22Z28787K2%22%3A%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P1346%22%7D%7D full call] ** [https://www.wikifunctions.org/wiki/Z28755?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z28755%22%2C%22Z28755K1%22%3A%7B%22Z1K1%22%3A%22Z20159%22%2C%22Z20159K1%22%3A%7B%22Z1K1%22%3A%22Z17813%22%2C%22Z17813K1%22%3A%22Z17814%22%7D%2C%22Z20159K2%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%221966%22%7D%7D%2C%22Z28755K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z873%22%2C%22Z873K1%22%3A%22Z28773%22%2C%22Z873K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z873%22%2C%22Z873K1%22%3A%22Z19308%22%2C%22Z873K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z13464%22%2C%22Z13464K1%22%3A%22Z22839%22%2C%22Z13464K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z13464%22%2C%22Z13464K1%22%3A%22Z29694%22%2C%22Z13464K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30172%22%2C%22Z30172K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30248%22%2C%22Z30248K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22978%22%2C%22Z22978K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z6821%22%2C%22Z6821K1%22%3A%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q19317%22%7D%7D%2C%22Z22978K2%22%3A%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P527%22%7D%7D%2C%22Z30248K2%22%3A%5B%22Z6030%22%2C%7B%22Z1K1%22%3A%22Z6030%22%2C%22Z6030K1%22%3A%22Z6036%22%7D%5D%2C%22Z30248K3%22%3A%5B%22Z60%22%5D%2C%22Z30248K4%22%3A%5B%22Z6092%22%2C%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P585%22%7D%2C%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P1346%22%7D%5D%7D%7D%2C%22Z13464K3%22%3A%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P585%22%7D%7D%2C%22Z13464K3%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z23723%22%7D%7D%7D%7D%7D index] *** [https://www.wikifunctions.org/wiki/Z13464?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z13464%22%2C%22Z13464K1%22%3A%22Z22839%22%2C%22Z13464K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z13464%22%2C%22Z13464K1%22%3A%22Z29694%22%2C%22Z13464K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30172%22%2C%22Z30172K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30248%22%2C%22Z30248K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22978%22%2C%22Z22978K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z6821%22%2C%22Z6821K1%22%3A%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q19317%22%7D%7D%2C%22Z22978K2%22%3A%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P527%22%7D%7D%2C%22Z30248K2%22%3A%5B%22Z6030%22%2C%7B%22Z1K1%22%3A%22Z6030%22%2C%22Z6030K1%22%3A%22Z6036%22%7D%5D%2C%22Z30248K3%22%3A%5B%22Z60%22%5D%2C%22Z30248K4%22%3A%5B%22Z6092%22%2C%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P585%22%7D%2C%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P1346%22%7D%5D%7D%7D%2C%22Z13464K3%22%3A%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P585%22%7D%7D%2C%22Z13464K3%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z23723%22%7D%7D singular P585s] **** [https://www.wikifunctions.org/wiki/Z30248?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30248%22%2C%22Z30248K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22978%22%2C%22Z22978K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z6821%22%2C%22Z6821K1%22%3A%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q19317%22%7D%7D%2C%22Z22978K2%22%3A%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P527%22%7D%7D%2C%22Z30248K2%22%3A%5B%22Z6030%22%2C%7B%22Z1K1%22%3A%22Z6030%22%2C%22Z6030K1%22%3A%22Z6036%22%7D%5D%2C%22Z30248K3%22%3A%5B%22Z60%22%5D%2C%22Z30248K4%22%3A%5B%22Z6092%22%2C%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P585%22%7D%2C%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P1346%22%7D%5D%7D items] * {{Z|31140}}&mdash;[https://www.wikifunctions.org/wiki/Z28787?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z28787%22%2C%22Z28787K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z13397%22%2C%22Z13397K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22978%22%2C%22Z22978K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z6821%22%2C%22Z6821K1%22%3A%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q1317446%22%7D%7D%2C%22Z22978K2%22%3A%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P527%22%7D%7D%2C%22Z13397K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z28755%22%2C%22Z28755K1%22%3A%7B%22Z1K1%22%3A%22Z20159%22%2C%22Z20159K1%22%3A%7B%22Z1K1%22%3A%22Z17813%22%2C%22Z17813K1%22%3A%22Z17814%22%7D%2C%22Z20159K2%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%221995%22%7D%7D%2C%22Z28755K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z873%22%2C%22Z873K1%22%3A%22Z28773%22%2C%22Z873K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z873%22%2C%22Z873K1%22%3A%22Z19308%22%2C%22Z873K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z13464%22%2C%22Z13464K1%22%3A%22Z22839%22%2C%22Z13464K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z13464%22%2C%22Z13464K1%22%3A%22Z29694%22%2C%22Z13464K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30172%22%2C%22Z30172K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30248%22%2C%22Z30248K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22978%22%2C%22Z22978K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z6821%22%2C%22Z6821K1%22%3A%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q1317446%22%7D%7D%2C%22Z22978K2%22%3A%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P527%22%7D%7D%2C%22Z30248K2%22%3A%5B%22Z6030%22%2C%7B%22Z1K1%22%3A%22Z6030%22%2C%22Z6030K1%22%3A%22Z6036%22%7D%5D%2C%22Z30248K3%22%3A%5B%22Z60%22%5D%2C%22Z30248K4%22%3A%5B%22Z6092%22%2C%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P585%22%7D%2C%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P1346%22%7D%5D%7D%7D%2C%22Z13464K3%22%3A%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P585%22%7D%7D%2C%22Z13464K3%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z23723%22%7D%7D%7D%7D%7D%7D%2C%22Z28787K2%22%3A%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P1346%22%7D%7D full call] ** [https://www.wikifunctions.org/wiki/Z28755?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z28755%22%2C%22Z28755K1%22%3A%7B%22Z1K1%22%3A%22Z20159%22%2C%22Z20159K1%22%3A%7B%22Z1K1%22%3A%22Z17813%22%2C%22Z17813K1%22%3A%22Z17814%22%7D%2C%22Z20159K2%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%221995%22%7D%7D%2C%22Z28755K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z873%22%2C%22Z873K1%22%3A%22Z28773%22%2C%22Z873K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z873%22%2C%22Z873K1%22%3A%22Z19308%22%2C%22Z873K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z13464%22%2C%22Z13464K1%22%3A%22Z22839%22%2C%22Z13464K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z13464%22%2C%22Z13464K1%22%3A%22Z29694%22%2C%22Z13464K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30172%22%2C%22Z30172K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30248%22%2C%22Z30248K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22978%22%2C%22Z22978K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z6821%22%2C%22Z6821K1%22%3A%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q1317446%22%7D%7D%2C%22Z22978K2%22%3A%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P527%22%7D%7D%2C%22Z30248K2%22%3A%5B%22Z6030%22%2C%7B%22Z1K1%22%3A%22Z6030%22%2C%22Z6030K1%22%3A%22Z6036%22%7D%5D%2C%22Z30248K3%22%3A%5B%22Z60%22%5D%2C%22Z30248K4%22%3A%5B%22Z6092%22%2C%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P585%22%7D%2C%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P1346%22%7D%5D%7D%7D%2C%22Z13464K3%22%3A%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P585%22%7D%7D%2C%22Z13464K3%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z23723%22%7D%7D%7D%7D%7D index] *** [https://www.wikifunctions.org/wiki/Z13464?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z13464%22%2C%22Z13464K1%22%3A%22Z22839%22%2C%22Z13464K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z13464%22%2C%22Z13464K1%22%3A%22Z29694%22%2C%22Z13464K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30172%22%2C%22Z30172K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30248%22%2C%22Z30248K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22978%22%2C%22Z22978K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z6821%22%2C%22Z6821K1%22%3A%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q1317446%22%7D%7D%2C%22Z22978K2%22%3A%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P527%22%7D%7D%2C%22Z30248K2%22%3A%5B%22Z6030%22%2C%7B%22Z1K1%22%3A%22Z6030%22%2C%22Z6030K1%22%3A%22Z6036%22%7D%5D%2C%22Z30248K3%22%3A%5B%22Z60%22%5D%2C%22Z30248K4%22%3A%5B%22Z6092%22%2C%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P585%22%7D%2C%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P1346%22%7D%5D%7D%7D%2C%22Z13464K3%22%3A%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P585%22%7D%7D%2C%22Z13464K3%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z23723%22%7D%7D singular P585s] **** [https://www.wikifunctions.org/wiki/Z30248?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30248%22%2C%22Z30248K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22978%22%2C%22Z22978K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z6821%22%2C%22Z6821K1%22%3A%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q1317446%22%7D%7D%2C%22Z22978K2%22%3A%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P527%22%7D%7D%2C%22Z30248K2%22%3A%5B%22Z6030%22%2C%7B%22Z1K1%22%3A%22Z6030%22%2C%22Z6030K1%22%3A%22Z6036%22%7D%5D%2C%22Z30248K3%22%3A%5B%22Z60%22%5D%2C%22Z30248K4%22%3A%5B%22Z6092%22%2C%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P585%22%7D%2C%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P1346%22%7D%5D%7D items] === {{Z|30931}} === tests timing out * {{Z|30932}} * {{Z|30933}} * {{Z|30942}} * {{Z|30947}} passing; trivial === {{Z|25052}} === test timing out * {{Z|25053}} === {{Z|25054}} === test timing out * {{Z|25055}} passing * {{Z|25056}} === {{Z|29953}} === tests timing out * {{Z|29954}} * {{Z|29955}} expected failure * {{Z|29956}} === {{Z|29784}} === tests timing out * {{Z|30088}} * {{Z|30915}} === {{Z|30175}} === tests timing out * {{Z|30188}} * {{Z|30913}} * {{Z|30958}} passing === {{Z|30157}} === test timing out * {{Z|30165}} * {{Z|30908}} passing; trivial === {{Z|30217}} === tests timing out * {{Z|30230}} * {{Z|30231}} === {{Z|27610}} === test timing out * {{Z|27611}} === {{Z|30471}} === no good tests; {{Z|30853}} would make it easier === {{Z|31019}} === tests timing out * {{Z|31022}} * {{Z|31023}} passing * {{Z|31024}} * {{Z|31025}} passing === {{Z|31041}} === test timing out * {{Z|31043}} * {{Z|31044}} passing === {{Z|10956}} === test timing out, connected anyway * {{Z|10959}} * {{Z|10961}} passing * {{Z|19167}} passing === {{Z|10944}} === tests timing out, connected anyway * {{Z|10946}} * {{Z|10947}} * {{Z|10948}} * {{Z|10949}} * {{Z|10950}} * {{Z|10951}} * {{Z|10969}} === {{Z|30153}} === test timing out * {{Z|31708}} === {{Z|19243}} === tests timing out, connected anyway * {{Z|19251}} * {{Z|19395}} * {{Z|21612}} * {{Z|22814}} === {{Z|19170}} === tests timing out for RLE impl., connected anyway * {{Z|19171}} * {{Z|19172}} * {{Z|19173}} * {{Z|19174}} * {{Z|19176}} chmic2x3wlx8ohilxj2mdlv171u98lq Talk:Z21187 1 74433 272260 247318 2026-05-04T17:29:37Z YoshiRulz 10156 Add to category 272260 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] == 21187 is prime == trivia [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 06:09, 29 January 2026 (UTC) eghkh69cfjt2knf0yf65g6uothq18i7 Category:Functions with only code implementations 14 77021 272408 256696 2026-05-05T06:53:22Z Arlo Barnes 1231 implementations cat 272408 wikitext text/x-wiki {{phab|T404897}} {{lang|en|Functions should be added here if they have connected Implementations in one or more programming languages, but no working Implementations-by-composition (and no built-in Implementation).}} [[category:functions]] [[category:implementations|⚠]] ekp8lo18a3359fctunp12xjy2qsjp1e Z32314 0 78509 272306 258845 2026-05-04T19:10:55Z YoshiRulz 10156 Added Z21875 to the approved list of implementations 272306 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32314" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z32314K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "text" } ] } } ], "Z8K2": "Z40", "Z8K3": [ "Z20", "Z32316", "Z32317" ], "Z8K4": [ "Z14", "Z32315", "Z21875" ], "Z8K5": "Z32314" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "is word or phrase starting with vowel in English" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "see also Z21739 which returns a string." } ] } } bsxyuwaujewb67vvbfxczukg33kv50q 272307 272306 2026-05-04T19:12:39Z YoshiRulz 10156 Removed Z32315 from the approved list of implementations 272307 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32314" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z32314K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "text" } ] } } ], "Z8K2": "Z40", "Z8K3": [ "Z20", "Z32316", "Z32317" ], "Z8K4": [ "Z14", "Z21875" ], "Z8K5": "Z32314" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "is word or phrase starting with vowel in English" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "see also Z21739 which returns a string." } ] } } ij7ny387ywhe64hza6a61lgihy03o3u Z32316 0 78511 272299 258826 2026-05-04T18:52:23Z YoshiRulz 10156 Add en label 272299 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32316" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32314", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32314", "Z32314K1": "honest" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z844", "Z844K2": { "Z1K1": "Z40", "Z40K1": "Z41" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "\"honest\" -\u003E T" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } rrmr36hm1ef5a0aih8wm7tzfyrhwyd5 Z32317 0 78512 272300 258827 2026-05-04T18:52:34Z YoshiRulz 10156 Add en label 272300 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32317" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32314", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32314", "Z32314K1": "unique" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z844", "Z844K2": { "Z1K1": "Z40", "Z40K1": "Z42" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "\"unique\" -\u003E F" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } e502k54b2596qoile3ompq1hogupm9d Z32765 0 79162 272374 261006 2026-05-05T04:55:01Z DMartin (WMF) 24 272374 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32765" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32757", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32757", "Z32757K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "hello", "world" ] }, { "Z1K1": "Z31", "Z31K1": "Z1113", "Z31K2": [ "Z6", "g'day", "mate" ] } ], "Z32757K2": "Z1199" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z32758", "Z32758K2": { "Z1K1": "Z31", "Z31K1": "Z1199", "Z31K2": [ "Z6" ] } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "empty stringset returned when language not listed" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } d9gzfs67nof3d8jomr8ro5b4op8t7s4 Talk:Z21587 1 79686 272288 263089 2026-05-04T18:24:56Z YoshiRulz 10156 Add to category 272288 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] == Weird connected test == This function is a bit weird: if you examine the current version of its JSON source, you'll find that it's connected to a "test" that is not a test at all, but a function. See https://phabricator.wikimedia.org/T420733. I'm intentionally not editing it in case someone wants to debug it. [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 01:21, 4 April 2026 (UTC) a6qujugcc3uhb7e51yai4ko94d6e6rn Wikifunctions:Project chat/Archive/2026/04 4 80104 272372 272117 2026-05-05T03:08:05Z SpBot 978 archiving 2 sections from [[Wikifunctions:Project chat]] (after section [[Wikifunctions:Project chat/Archive/2026/04#Wikifunctions_&_Abstract_Wikipedia_Newsletter_#243_is_out:_Community_proposals_for_capturing_meaning|Wikifunctions_&_Abstract_Wikipedia_Newsletter_#243_is_out:_Community_proposals_for_capturing_meaning]]) 272372 wikitext text/x-wiki {{Talkarchive}} == Wikifunctions & Abstract Wikipedia Newsletter #242 is out: Request for Discussion: Syntactic tables == There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-04-02|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it! In this issue, we introduce a proposal for Natural Language Generation, we introduce a page for function suggestions from Abstract Wikipedia, we inform you that there will be a presentation about Abstract Wikipedia at WikiCon Australia, and we take a look at the latest software developments. Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]! Also, we remind you that if you have questions or ideas to discuss, the next '''Volunteers' Corner''' will be held on '''[https://zonestamp.toolforge.org/1776101400 April 13, at 17:30 UTC]''' ([https://meet.google.com/xuy-njxh-rkw link to the meeting]). Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 13:37, 3 April 2026 (UTC) <!-- Message sent by User:Sannita (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=30325620 --> :<small>This section was archived on a request by: [[User:Mdktb|Mdktb]] ([[User talk:Mdktb|talk]]) 17:13, 10 April 2026 (UTC)</small> == Special:CreateObject doesn't let me create a typed list == Hello. I tried to create a typed list with all English varieties on Wikifunctions, to create consistency between different configs, but [[Special:CreateObject]] doesn't show typed list as an option for creating. Is this a bug or an intentional restriction? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:24, 2 April 2026 (UTC) :@[[User:ChaoticVermillion|ChaoticVermillion]]: A typed list is an instance of a function call, which is prohibited as a persisted Object. Maybe you want an enum? See [[Wikifunctions:Type proposals]] for the process for creating such a thing. [[User:Jdforrester (WMF)|Jdforrester (WMF)]] ([[User talk:Jdforrester (WMF)|talk]]) 12:01, 2 April 2026 (UTC) ::I don't want any sort of enum for this, I just want a list of English varieties (English, American English, Australian English, etc.) as an object that I can put in configs. I tried making an object as a function call, but apparently I have to be a member of the staff to do it. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 12:07, 2 April 2026 (UTC) :::I’ve started this with {{Z|Z33034}}. I’m guessing you were trying to create an object of type {{Z|Z7}} rather than an object whose type is a [[Z7]]. There’s a subtle but important difference. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 12:29, 2 April 2026 (UTC) ::::How do you create a object whose type is a [[Z7]] then? I can't see any option to do this. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 12:32, 2 April 2026 (UTC) :::::When you are creating an object you must specify its type. By default, the UI expects you to provide a reference to the type, so you can just type in the selector box and click the type you want. For an object like a typed list, the type is specified as a function call, so you click the menu dots beside “type” and choose “function call” instead of “reference”. The selector now allows you to search for functions that can return a type object. You start entering “typed list” and select it in the normal way. Then the UI will allow you to specify the argument to the function call, which is the type shared by all elements in the list. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 13:12, 2 April 2026 (UTC) == Unable to use the Z32643 function. == I'm trying to use the [[Z32643]] (Article-less multi instantiating fragment) function to edit an article in Abstract Wikipedia, but it looks like it's missing connected implementations, and it looks like i don't have the permissions to connect the function with the implementation and use it in ab.wiki. Since i'm not familiar with Wikifunctions, i would like to get help for this specific problem. Thanks. --[[User:Mattiz6276|Mattiz6276]] ([[User talk:Mattiz6276|talk]]) 13:50, 2 April 2026 (UTC) :@[[User:Mattiz6276|Mattiz6276]]: Hey there, it looks like that's a work-in-progress by @[[User:MetalBreaksAndBends|MetalBreaksAndBends]]. There's only a fall-back implementation, Z32652, which fails its own test for a second item. I can connect the items together but it might not work as you expect? [[User:Jdforrester (WMF)|Jdforrester (WMF)]] ([[User talk:Jdforrester (WMF)|talk]]) 14:06, 2 April 2026 (UTC) ::Maybe… I don’t think functions without implementations should be appearing on AW so I have amended the label to avoid giving the impression that this function is available. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 14:23, 2 April 2026 (UTC) == Being able to use edit summaries == I have wanted to use edit summaries a few times when connecting or disconnecting implementations or tests, and I have found that the only way to do that is to use the [[:User:%D7%9E%D7%A7%D7%A3/wikilambda_editsource.js|wikilambda editsource]] tool. I feel like it would be a lot more convenient to be able to make these edit summaries without having to use that tool. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:40, 3 April 2026 (UTC) == Definite forms == [[Talk:Z32162|I've noticed an incomplete implementation and would like to work on fixing it, but need advice.]] [[User:Ijon|Ijon]] ([[User talk:Ijon|talk]]) 21:05, 3 April 2026 (UTC) == Wikifunctions & Abstract Wikipedia Newsletter #243 is out: Community proposals for capturing meaning == There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-04-10|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it! In this issue, we report on three community proposals on syntactic approaches, we introduce a new Type (Complex numbers), we report on current hiccups on Abstract Wikipedia, we share more information about a presentation about Abstract Wikipedia at WikiCon Australia, and we take a look at the latest software developments. Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]! Also, we remind you that if you have questions or ideas to discuss, the next '''Volunteers' Corner''' will be held on '''[https://zonestamp.toolforge.org/1776101400 April 13, at 17:30 UTC]''' ([https://meet.google.com/xuy-njxh-rkw link to the meeting]). Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 15:35, 10 April 2026 (UTC) <!-- Message sent by User:Sannita (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=30325620 --> :<small>This section was archived on a request by: [[User:Sannita (WMF)|Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 13:12, 3 May 2026 (UTC)</small> == Wikifunctions & Abstract Wikipedia Newsletter #244 is out: Milestones; Some major issues hopefully resolved == There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-04-16|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it! In this issue, we celebrate 4000 functions on Wikifunctions and 1000 abstract articles on Abstract Wikipedia, we announce that we should have fixed some major issues with the websites, we inform you on our latest outreach activities, and we take a look at the latest software developments. Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]! Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 10:22, 17 April 2026 (UTC) <!-- Message sent by User:Sannita (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=30325620 --> :<small>This section was archived on a request by: [[User:Sannita (WMF)|Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 13:12, 3 May 2026 (UTC)</small> fhtdh0nhbvtf3pf6ephv4zudi5ytlxl Z34678 0 82213 272423 271626 2026-05-05T11:09:37Z Jsamwrites 938 272423 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34678" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z33024", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z13436", "Z13436K1": "Z31676", "Z13436K2": { "Z1K1": "Z18", "Z18K1": "Z33024K2" }, "Z13436K3": { "Z1K1": "Z18", "Z18K1": "Z33024K2" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "label texts for Wikidata items, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } kz9zcu4pacbis6kil9y9firlb2ct9k2 272424 272423 2026-05-05T11:28:43Z Jsamwrites 938 272424 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34678" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z33024", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z13464", "Z13464K1": "Z31676", "Z13464K2": { "Z1K1": "Z18", "Z18K1": "Z33024K1" }, "Z13464K3": { "Z1K1": "Z18", "Z18K1": "Z33024K2" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "label texts for Wikidata items, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 4c3zmvqhg6wz9e8vc7tswvew31tib2i Z34707 0 82282 272359 271864 2026-05-04T21:11:48Z YoshiRulz 10156 Pass comparison function to RLE 272359 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34707" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z19170", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z10174", "Z10174K1": { "Z1K1": "Z7", "Z7K1": "Z24331", "Z24331K1": { "Z1K1": "Z18", "Z18K1": "Z19170K1" } }, "Z10174K2": { "Z1K1": "Z7", "Z7K1": "Z14416", "Z14416K1": { "Z1K1": "Z7", "Z7K1": "Z31032", "Z31032K1": { "Z1K1": "Z7", "Z7K1": "Z873", "Z873K1": "Z821", "Z873K2": { "Z1K1": "Z7", "Z7K1": "Z34790", "Z34790K1": { "Z1K1": "Z7", "Z7K1": "Z22717", "Z22717K1": { "Z1K1": "Z18", "Z18K1": "Z19170K1" } }, "Z34790K2": "Z22683" } }, "Z31032K2": { "Z1K1": "Z13518", "Z13518K1": "1" }, "Z31032K3": "Z13522" }, "Z14416K2": { "Z1K1": "Z7", "Z7K1": "Z12681", "Z12681K1": { "Z1K1": "Z7", "Z7K1": "Z34790", "Z34790K1": { "Z1K1": "Z7", "Z7K1": "Z22717", "Z22717K1": { "Z1K1": "Z18", "Z18K1": "Z19170K1" } }, "Z34790K2": "Z22683" } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "has double letter, RLE composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } b3v6g0o6mvv9m5ktxpo3mtm36xtbjcp Wikifunctions talk:Status updates/2026-05-02 5 82333 272304 272035 2026-05-04T19:02:24Z Hogü-456 617 /* What should we count for Abstract Wikipedia */ Reply 272304 wikitext text/x-wiki == What should we count for Abstract Wikipedia == In my opinion representative metrics for activity of Abstract Wikipedia are * How many monthly active contributors are there on Abstract Wikipedia? (currently 113, going down a bit from the record at launch, where 163 was reached.) * How many edits per month do we have on Abstract Wikipedia? The number of articles or fragments is not representative, as the functions used will not always give a proper sentence, and certainly not for all languages, even if no technical error is shown. [[User:HenkvD|HenkvD]] ([[User talk:HenkvD|talk]]) 12:21, 3 May 2026 (UTC) :I think there should be a count of articles fully rendering grouped by number of languages. With fully rendering I mean available implementations for all languages and also lexemes and forms of them for related items are available. So an article producing not an error and also not going to an fallback. To make sure the output makes sense I think a way to check the articles to be counted is needed. So far I am not sure what is the best way for it. [[User:Hogü-456|Hogü-456]] ([[User talk:Hogü-456|talk]]) 19:02, 4 May 2026 (UTC) == usability metric == Seeing how many prose articles on other wikis got ported from abstract articles could be a proxy for what value editors are getting out of the project. I don't know if this is feasible currently. [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 16:50, 3 May 2026 (UTC) 6zwy6x86pck5zr5picwonfcwpm053ht 272407 272304 2026-05-05T06:51:38Z Arlo Barnes 1231 /* What should we count for Abstract Wikipedia */ Reply 272407 wikitext text/x-wiki == What should we count for Abstract Wikipedia == In my opinion representative metrics for activity of Abstract Wikipedia are * How many monthly active contributors are there on Abstract Wikipedia? (currently 113, going down a bit from the record at launch, where 163 was reached.) * How many edits per month do we have on Abstract Wikipedia? The number of articles or fragments is not representative, as the functions used will not always give a proper sentence, and certainly not for all languages, even if no technical error is shown. [[User:HenkvD|HenkvD]] ([[User talk:HenkvD|talk]]) 12:21, 3 May 2026 (UTC) :I think there should be a count of articles fully rendering grouped by number of languages. With fully rendering I mean available implementations for all languages and also lexemes and forms of them for related items are available. So an article producing not an error and also not going to an fallback. To make sure the output makes sense I think a way to check the articles to be counted is needed. So far I am not sure what is the best way for it. [[User:Hogü-456|Hogü-456]] ([[User talk:Hogü-456|talk]]) 19:02, 4 May 2026 (UTC) ::[[WF:tests]] are of course useful but also can be misleading if the test cases are not sufficiently well-distributed over the sample space. [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 06:51, 5 May 2026 (UTC) == usability metric == Seeing how many prose articles on other wikis got ported from abstract articles could be a proxy for what value editors are getting out of the project. I don't know if this is feasible currently. [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 16:50, 3 May 2026 (UTC) 2rt2bztag0ywoxdmdi2juvyctaqgvcs Wikifunctions:Status updates/2026-05-02/de 4 82349 272412 272107 2026-05-05T10:03:44Z Ameisenigel 44 Created page with "In den vergangenen zwei Wochen gab es mehrere Aktualisierungen zur Verbesserung der Benutzerfreundlichkeit und Verständlichkeit von der Abstrakten Wikipedia und Wikifunctions." 272412 wikitext text/x-wiki <languages/> {{Wikifunctions updates | prevlabel = Vorheriges Update | prev = 2026-04-25 | nextlabel = Nächstes Update | next = }} <span id="Request_for_input:_what_should_we_count_for_Abstract_Wikipedia"></span> === Bitte um Anregungen: Was sollten wir für die Abstrakte Wikipedia zählen === Wir möchten die Entwicklung der Abstrakten Wikipedia sichtbar machen und bitten daher um Anregungen: Welche Kennzahlen zu Seiten in der Abstrakten Wikipedia hältst du für wichtig? Hier sind ein paar Ideen für Kennzahlen, aber wir sind sicher, dass dir bessere einfallen werden: * Wie viele Artikel gibt es in der Abstrakten Wikipedia? (Zum Zeitpunkt der Erstellung dieses Newsletters 1203, eine Zahl, die auf der Startseite der Abstrakten Wikipedia sichtbar veröffentlicht ist.) * Wie viele monatlich aktive Beitragende gibt es in der Abstrakten Wikipedia? (Derzeit 113, ein leichter Rückgang gegenüber dem Rekordwert von 163 zum Start.) * Wie viele Bearbeitungen pro Monat gibt es in der Abstrakten Wikipedia? * Wie viele Fragmente gibt es? (Derzeit 3410) Wie viele Fragmente enthält ein Artikel durchschnittlich? (Derzeit etwa 2,8) * Welche Fragmente werden am häufigsten verwendet? ({{Z|Z32123}} 1452 Mal, gefolgt von {{Z|Z27868}} 736 Mal und {{Z|Z29749}} 650 Mal) * Wie viele Artikel in wie vielen Sprachen sind tatsächlich vollständig und fehlerfrei verfügbar? * Wie viele davon existieren derzeit nicht in den jeweiligen Wikipedias? * Wie viele Bytes an Ausgabetext werden dadurch erzeugt? Wir sind jedoch überzeugt, dass dir weitere Vorschläge einfallen werden, und du hast vielleicht auch Gedanken darüber, welche dieser Kennzahlen man im Auge behalten sollte, um ein gesundes Wachstum zu erfassen. Teile uns deine Meinung mit! <span id="Recent_Changes_in_the_software"></span> === Letzte Änderungen an der Software === In den vergangenen zwei Wochen gab es mehrere Aktualisierungen zur Verbesserung der Benutzerfreundlichkeit und Verständlichkeit von der Abstrakten Wikipedia und Wikifunctions. <div lang="en" dir="ltr" class="mw-content-ltr"> Search and discovery have been improved so contributors can more easily find and recognize content. In Abstract Wikipedia, search suggestions now display Wikidata entity thumbnails alongside results (when available), making it easier to visually identify entities ([[:phab:T423464|T423464]]). In addition, the label search algorithm has been updated to ensure that exact matches are always returned as the first result, addressing cases where known objects or functions were difficult to find ([[:phab:T424211|T424211]]). </div> <div lang="en" dir="ltr" class="mw-content-ltr"> We have also introduced a more user-friendly way for communities to configure recommended functions. Previously, suggested functions for embedded Wikifunctions and Abstract Wikipedia fragments were managed through JSON pages (MediaWiki:Wikilambda-suggested-functions.json and MediaWiki:Abstractwiki-suggested-functions.json). This has now been replaced with configuration via the CommunityConfiguration special page, making it easier for communities to manage these recommendations ([[:phab:T394410|T394410]]). </div> <div lang="en" dir="ltr" class="mw-content-ltr"> We also fixed several bugs and made some display improvements. We fixed a bug in the test results caching system where sometimes tests appeared as failing when they should have been passing ([[:phab:T422300|T422300]]). A bug in copy/paste functionality has been fixed, which sometimes caused issues when copying blocks with undefined references. Another fix ensures that when publishing function definition changes, connected implementations and tests are properly disconnected when required. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> When it comes to improved displays; the composition formatting has been improved so that line breaks occur at word separators. ([[:phab:T421959|T421959]]). We also fixed a bug to ensure the Typed List label is fetched as part of the page initialization so that it's not displayed as a zid ([[:phab:T422094|T422094]]). And on Abstract Wikipedia we improved how content is displayed in the preview. The preview box no longer inserts unwelcome line spacing when fragments are defined as paragraphs (<nowiki><p></nowiki>), resulting in more accurate spacing ([[:phab:T424041|T424041]]). </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Finally, we have quoted the type in the filter box of the ListObjectsByType Special page, to add clarity in cases such as "All Objects of type 'Type' (Z4)" - [[Special:ListObjectsByType/Z4|see example]] ([[:phab:T377649|T377649]]), and the language selector now correctly displays the selected language name even for non mediawiki supported languages ([[:phab:T417211|T417211]]). </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Updates about V2 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> We have reverted one change related to the recent deployment of "Composition Language v2" (which was introduced in the [[Special:MyLanguage/Wikifunctions:Status updates/2026-03-11|11 March newsletter]]). Prior to v2, arguments going to code implementations were generally fully resolved. Updates related to v2 changed that, so that arguments were only resolved at the top level; nested parts of arguments didn't necessarily get resolved. The reversion means that once again, arguments going to code implementations will be fully resolved. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> This makes sense as a default, because once an argument gets passed to a code implementation, it's impossible to explicitly ask for the resolution of any part of it. However, there is also a competing principle that, in general, arguments are not guaranteed to present themselves as literals (or as references) all the time, so all implementations should ideally allow for both forms of arguments coming in, by using equality functions that can recognize when a reference and a literal are equivalent. Since this is currently difficult or impossible in code implementations, we decided this reversion is the best way to go for now. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Volunteers’ Corner on May 11 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> The next Volunteers’ Corner will be on [https://zonestamp.toolforge.org/1778520600 Monday, 11 May 2026 at 17:30 UTC] (moved a week due to the [[:mw:Special:MyLanguage/Wikimedia Hackathon 2026|Wikimedia Hackathon]]). We plan to have the following agenda: there will be time to ask questions and discuss all matters arising. If we have time, we will either write a function together or work on an Abstract Wikipedia article together (volunteer-led). Everyone is welcome to join us on [https://meet.google.com/xuy-njxh-rkw Google Meet]. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Fresh Functions weekly: 81 new Functions === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> This week we had 81 new functions. Here is an incomplete list of functions with implementations and passing tests to get a taste of what functions have been created. Thanks everybody for contributing! </div> * {{Z|Z33778}} * {{Z|Z33780}} * {{Z|Z33785}} * {{Z|Z33788}} * {{Z|Z33797}} * {{Z|Z33808}} * {{Z|Z33818}} * {{Z|Z33823}} * {{Z|Z33828}} * {{Z|Z33831}} * {{Z|Z33836}} * {{Z|Z33842}} * {{Z|Z33844}} * {{Z|Z33848}} * {{Z|Z33862}} * {{Z|Z33876}} * {{Z|Z33878}} * {{Z|Z33880}} * {{Z|Z33890}} * {{Z|Z33895}} * {{Z|Z33902}} * {{Z|Z33933}} * {{Z|Z33951}} * {{Z|Z33955}} * {{Z|Z33975}} * {{Z|Z33977}} * {{Z|Z33983}} * {{Z|Z33986}} * {{Z|Z33999}} * {{Z|Z34008}} * {{Z|Z34009}} * {{Z|Z34039}} * {{Z|Z34060}} * {{Z|Z34070}} * {{Z|Z34072}} * {{Z|Z34077}} * {{Z|Z34084}} * {{Z|Z34096}} * {{Z|Z34105}} * {{Z|Z34124}} * {{Z|Z34127}} * {{Z|Z34132}} * {{Z|Z34139}} * {{Z|Z34178}} * {{Z|Z34197}} * {{Z|Z34200}} * {{Z|Z34204}} * {{Z|Z34209}} * {{Z|Z34212}} * {{Z|Z34218}} * {{Z|Z34250}} * {{Z|Z34253}} * {{Z|Z34257}} * {{Z|Z34263}} * {{Z|Z34273}} <div lang="en" dir="ltr" class="mw-content-ltr"> A [https://www.wikifunctions.org/wiki/Special:ListObjectsByType?type=Z8&orderby=latest complete list of all functions sorted by when they were created] is available. </div> [[Category:Status updates{{#translation:}}|2026-05-02]] 87orhkjuhnw7omudtdg1jpnkwdbs64u 272414 272412 2026-05-05T10:06:22Z Ameisenigel 44 Created page with "Die Such- und Entdeckungsfunktionen wurden verbessert, sodass Beitragende Inhalte leichter finden und erkennen können. In der Abstrakten Wikipedia werden nun neben den Suchergebnissen Vorschaubilder der Wikidata-Entitäten angezeigt (sofern verfügbar), was die visuelle Identifizierung von Entitäten erleichtert ($1). Darüber hinaus wurde der Algorithmus für die Suche von Bezeichnungen aktualisiert, um sicherzustellen, dass exakte Übereinstimmungen immer als erstes E..." 272414 wikitext text/x-wiki <languages/> {{Wikifunctions updates | prevlabel = Vorheriges Update | prev = 2026-04-25 | nextlabel = Nächstes Update | next = }} <span id="Request_for_input:_what_should_we_count_for_Abstract_Wikipedia"></span> === Bitte um Anregungen: Was sollten wir für die Abstrakte Wikipedia zählen === Wir möchten die Entwicklung der Abstrakten Wikipedia sichtbar machen und bitten daher um Anregungen: Welche Kennzahlen zu Seiten in der Abstrakten Wikipedia hältst du für wichtig? Hier sind ein paar Ideen für Kennzahlen, aber wir sind sicher, dass dir bessere einfallen werden: * Wie viele Artikel gibt es in der Abstrakten Wikipedia? (Zum Zeitpunkt der Erstellung dieses Newsletters 1203, eine Zahl, die auf der Startseite der Abstrakten Wikipedia sichtbar veröffentlicht ist.) * Wie viele monatlich aktive Beitragende gibt es in der Abstrakten Wikipedia? (Derzeit 113, ein leichter Rückgang gegenüber dem Rekordwert von 163 zum Start.) * Wie viele Bearbeitungen pro Monat gibt es in der Abstrakten Wikipedia? * Wie viele Fragmente gibt es? (Derzeit 3410) Wie viele Fragmente enthält ein Artikel durchschnittlich? (Derzeit etwa 2,8) * Welche Fragmente werden am häufigsten verwendet? ({{Z|Z32123}} 1452 Mal, gefolgt von {{Z|Z27868}} 736 Mal und {{Z|Z29749}} 650 Mal) * Wie viele Artikel in wie vielen Sprachen sind tatsächlich vollständig und fehlerfrei verfügbar? * Wie viele davon existieren derzeit nicht in den jeweiligen Wikipedias? * Wie viele Bytes an Ausgabetext werden dadurch erzeugt? Wir sind jedoch überzeugt, dass dir weitere Vorschläge einfallen werden, und du hast vielleicht auch Gedanken darüber, welche dieser Kennzahlen man im Auge behalten sollte, um ein gesundes Wachstum zu erfassen. Teile uns deine Meinung mit! <span id="Recent_Changes_in_the_software"></span> === Letzte Änderungen an der Software === In den vergangenen zwei Wochen gab es mehrere Aktualisierungen zur Verbesserung der Benutzerfreundlichkeit und Verständlichkeit von der Abstrakten Wikipedia und Wikifunctions. Die Such- und Entdeckungsfunktionen wurden verbessert, sodass Beitragende Inhalte leichter finden und erkennen können. In der Abstrakten Wikipedia werden nun neben den Suchergebnissen Vorschaubilder der Wikidata-Entitäten angezeigt (sofern verfügbar), was die visuelle Identifizierung von Entitäten erleichtert ([[:phab:T423464|T423464]]). Darüber hinaus wurde der Algorithmus für die Suche von Bezeichnungen aktualisiert, um sicherzustellen, dass exakte Übereinstimmungen immer als erstes Ergebnis angezeigt werden. Dies behebt Fälle, in denen bekannte Objekte oder Funktionen schwer zu finden waren ([[:phab:T424211|T424211]]). <div lang="en" dir="ltr" class="mw-content-ltr"> We have also introduced a more user-friendly way for communities to configure recommended functions. Previously, suggested functions for embedded Wikifunctions and Abstract Wikipedia fragments were managed through JSON pages (MediaWiki:Wikilambda-suggested-functions.json and MediaWiki:Abstractwiki-suggested-functions.json). This has now been replaced with configuration via the CommunityConfiguration special page, making it easier for communities to manage these recommendations ([[:phab:T394410|T394410]]). </div> <div lang="en" dir="ltr" class="mw-content-ltr"> We also fixed several bugs and made some display improvements. We fixed a bug in the test results caching system where sometimes tests appeared as failing when they should have been passing ([[:phab:T422300|T422300]]). A bug in copy/paste functionality has been fixed, which sometimes caused issues when copying blocks with undefined references. Another fix ensures that when publishing function definition changes, connected implementations and tests are properly disconnected when required. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> When it comes to improved displays; the composition formatting has been improved so that line breaks occur at word separators. ([[:phab:T421959|T421959]]). We also fixed a bug to ensure the Typed List label is fetched as part of the page initialization so that it's not displayed as a zid ([[:phab:T422094|T422094]]). And on Abstract Wikipedia we improved how content is displayed in the preview. The preview box no longer inserts unwelcome line spacing when fragments are defined as paragraphs (<nowiki><p></nowiki>), resulting in more accurate spacing ([[:phab:T424041|T424041]]). </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Finally, we have quoted the type in the filter box of the ListObjectsByType Special page, to add clarity in cases such as "All Objects of type 'Type' (Z4)" - [[Special:ListObjectsByType/Z4|see example]] ([[:phab:T377649|T377649]]), and the language selector now correctly displays the selected language name even for non mediawiki supported languages ([[:phab:T417211|T417211]]). </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Updates about V2 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> We have reverted one change related to the recent deployment of "Composition Language v2" (which was introduced in the [[Special:MyLanguage/Wikifunctions:Status updates/2026-03-11|11 March newsletter]]). Prior to v2, arguments going to code implementations were generally fully resolved. Updates related to v2 changed that, so that arguments were only resolved at the top level; nested parts of arguments didn't necessarily get resolved. The reversion means that once again, arguments going to code implementations will be fully resolved. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> This makes sense as a default, because once an argument gets passed to a code implementation, it's impossible to explicitly ask for the resolution of any part of it. However, there is also a competing principle that, in general, arguments are not guaranteed to present themselves as literals (or as references) all the time, so all implementations should ideally allow for both forms of arguments coming in, by using equality functions that can recognize when a reference and a literal are equivalent. Since this is currently difficult or impossible in code implementations, we decided this reversion is the best way to go for now. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Volunteers’ Corner on May 11 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> The next Volunteers’ Corner will be on [https://zonestamp.toolforge.org/1778520600 Monday, 11 May 2026 at 17:30 UTC] (moved a week due to the [[:mw:Special:MyLanguage/Wikimedia Hackathon 2026|Wikimedia Hackathon]]). We plan to have the following agenda: there will be time to ask questions and discuss all matters arising. If we have time, we will either write a function together or work on an Abstract Wikipedia article together (volunteer-led). Everyone is welcome to join us on [https://meet.google.com/xuy-njxh-rkw Google Meet]. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Fresh Functions weekly: 81 new Functions === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> This week we had 81 new functions. Here is an incomplete list of functions with implementations and passing tests to get a taste of what functions have been created. Thanks everybody for contributing! </div> * {{Z|Z33778}} * {{Z|Z33780}} * {{Z|Z33785}} * {{Z|Z33788}} * {{Z|Z33797}} * {{Z|Z33808}} * {{Z|Z33818}} * {{Z|Z33823}} * {{Z|Z33828}} * {{Z|Z33831}} * {{Z|Z33836}} * {{Z|Z33842}} * {{Z|Z33844}} * {{Z|Z33848}} * {{Z|Z33862}} * {{Z|Z33876}} * {{Z|Z33878}} * {{Z|Z33880}} * {{Z|Z33890}} * {{Z|Z33895}} * {{Z|Z33902}} * {{Z|Z33933}} * {{Z|Z33951}} * {{Z|Z33955}} * {{Z|Z33975}} * {{Z|Z33977}} * {{Z|Z33983}} * {{Z|Z33986}} * {{Z|Z33999}} * {{Z|Z34008}} * {{Z|Z34009}} * {{Z|Z34039}} * {{Z|Z34060}} * {{Z|Z34070}} * {{Z|Z34072}} * {{Z|Z34077}} * {{Z|Z34084}} * {{Z|Z34096}} * {{Z|Z34105}} * {{Z|Z34124}} * {{Z|Z34127}} * {{Z|Z34132}} * {{Z|Z34139}} * {{Z|Z34178}} * {{Z|Z34197}} * {{Z|Z34200}} * {{Z|Z34204}} * {{Z|Z34209}} * {{Z|Z34212}} * {{Z|Z34218}} * {{Z|Z34250}} * {{Z|Z34253}} * {{Z|Z34257}} * {{Z|Z34263}} * {{Z|Z34273}} <div lang="en" dir="ltr" class="mw-content-ltr"> A [https://www.wikifunctions.org/wiki/Special:ListObjectsByType?type=Z8&orderby=latest complete list of all functions sorted by when they were created] is available. </div> [[Category:Status updates{{#translation:}}|2026-05-02]] 7xutyt21n6gyfrnliibwdb0bh71dapb 272416 272414 2026-05-05T10:08:12Z Ameisenigel 44 Created page with "Wir haben außerdem eine benutzerfreundlichere Methode für Communitys eingeführt, um empfohlene Funktionen zu konfigurieren. Bisher wurden die vorgeschlagenen Funktionen für eingebettete Fragmente von Wikifunctions und der Abstrakten Wikipedia über JSON-Seiten (MediaWiki:Wikilambda-suggested-functions.json und MediaWiki:Abstractwiki-suggested-functions.json) verwaltet. Dies wurde nun durch die Konfiguration über die Spezialseite Community-Konfiguration ersetzt, wodu..." 272416 wikitext text/x-wiki <languages/> {{Wikifunctions updates | prevlabel = Vorheriges Update | prev = 2026-04-25 | nextlabel = Nächstes Update | next = }} <span id="Request_for_input:_what_should_we_count_for_Abstract_Wikipedia"></span> === Bitte um Anregungen: Was sollten wir für die Abstrakte Wikipedia zählen === Wir möchten die Entwicklung der Abstrakten Wikipedia sichtbar machen und bitten daher um Anregungen: Welche Kennzahlen zu Seiten in der Abstrakten Wikipedia hältst du für wichtig? Hier sind ein paar Ideen für Kennzahlen, aber wir sind sicher, dass dir bessere einfallen werden: * Wie viele Artikel gibt es in der Abstrakten Wikipedia? (Zum Zeitpunkt der Erstellung dieses Newsletters 1203, eine Zahl, die auf der Startseite der Abstrakten Wikipedia sichtbar veröffentlicht ist.) * Wie viele monatlich aktive Beitragende gibt es in der Abstrakten Wikipedia? (Derzeit 113, ein leichter Rückgang gegenüber dem Rekordwert von 163 zum Start.) * Wie viele Bearbeitungen pro Monat gibt es in der Abstrakten Wikipedia? * Wie viele Fragmente gibt es? (Derzeit 3410) Wie viele Fragmente enthält ein Artikel durchschnittlich? (Derzeit etwa 2,8) * Welche Fragmente werden am häufigsten verwendet? ({{Z|Z32123}} 1452 Mal, gefolgt von {{Z|Z27868}} 736 Mal und {{Z|Z29749}} 650 Mal) * Wie viele Artikel in wie vielen Sprachen sind tatsächlich vollständig und fehlerfrei verfügbar? * Wie viele davon existieren derzeit nicht in den jeweiligen Wikipedias? * Wie viele Bytes an Ausgabetext werden dadurch erzeugt? Wir sind jedoch überzeugt, dass dir weitere Vorschläge einfallen werden, und du hast vielleicht auch Gedanken darüber, welche dieser Kennzahlen man im Auge behalten sollte, um ein gesundes Wachstum zu erfassen. Teile uns deine Meinung mit! <span id="Recent_Changes_in_the_software"></span> === Letzte Änderungen an der Software === In den vergangenen zwei Wochen gab es mehrere Aktualisierungen zur Verbesserung der Benutzerfreundlichkeit und Verständlichkeit von der Abstrakten Wikipedia und Wikifunctions. Die Such- und Entdeckungsfunktionen wurden verbessert, sodass Beitragende Inhalte leichter finden und erkennen können. In der Abstrakten Wikipedia werden nun neben den Suchergebnissen Vorschaubilder der Wikidata-Entitäten angezeigt (sofern verfügbar), was die visuelle Identifizierung von Entitäten erleichtert ([[:phab:T423464|T423464]]). Darüber hinaus wurde der Algorithmus für die Suche von Bezeichnungen aktualisiert, um sicherzustellen, dass exakte Übereinstimmungen immer als erstes Ergebnis angezeigt werden. Dies behebt Fälle, in denen bekannte Objekte oder Funktionen schwer zu finden waren ([[:phab:T424211|T424211]]). Wir haben außerdem eine benutzerfreundlichere Methode für Communitys eingeführt, um empfohlene Funktionen zu konfigurieren. Bisher wurden die vorgeschlagenen Funktionen für eingebettete Fragmente von Wikifunctions und der Abstrakten Wikipedia über JSON-Seiten (MediaWiki:Wikilambda-suggested-functions.json und MediaWiki:Abstractwiki-suggested-functions.json) verwaltet. Dies wurde nun durch die Konfiguration über die Spezialseite Community-Konfiguration ersetzt, wodurch die Verwaltung dieser Empfehlungen für Communitys vereinfacht wird ([[:phab:T394410|T394410]]). <div lang="en" dir="ltr" class="mw-content-ltr"> We also fixed several bugs and made some display improvements. We fixed a bug in the test results caching system where sometimes tests appeared as failing when they should have been passing ([[:phab:T422300|T422300]]). A bug in copy/paste functionality has been fixed, which sometimes caused issues when copying blocks with undefined references. Another fix ensures that when publishing function definition changes, connected implementations and tests are properly disconnected when required. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> When it comes to improved displays; the composition formatting has been improved so that line breaks occur at word separators. ([[:phab:T421959|T421959]]). We also fixed a bug to ensure the Typed List label is fetched as part of the page initialization so that it's not displayed as a zid ([[:phab:T422094|T422094]]). And on Abstract Wikipedia we improved how content is displayed in the preview. The preview box no longer inserts unwelcome line spacing when fragments are defined as paragraphs (<nowiki><p></nowiki>), resulting in more accurate spacing ([[:phab:T424041|T424041]]). </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Finally, we have quoted the type in the filter box of the ListObjectsByType Special page, to add clarity in cases such as "All Objects of type 'Type' (Z4)" - [[Special:ListObjectsByType/Z4|see example]] ([[:phab:T377649|T377649]]), and the language selector now correctly displays the selected language name even for non mediawiki supported languages ([[:phab:T417211|T417211]]). </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Updates about V2 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> We have reverted one change related to the recent deployment of "Composition Language v2" (which was introduced in the [[Special:MyLanguage/Wikifunctions:Status updates/2026-03-11|11 March newsletter]]). Prior to v2, arguments going to code implementations were generally fully resolved. Updates related to v2 changed that, so that arguments were only resolved at the top level; nested parts of arguments didn't necessarily get resolved. The reversion means that once again, arguments going to code implementations will be fully resolved. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> This makes sense as a default, because once an argument gets passed to a code implementation, it's impossible to explicitly ask for the resolution of any part of it. However, there is also a competing principle that, in general, arguments are not guaranteed to present themselves as literals (or as references) all the time, so all implementations should ideally allow for both forms of arguments coming in, by using equality functions that can recognize when a reference and a literal are equivalent. Since this is currently difficult or impossible in code implementations, we decided this reversion is the best way to go for now. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Volunteers’ Corner on May 11 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> The next Volunteers’ Corner will be on [https://zonestamp.toolforge.org/1778520600 Monday, 11 May 2026 at 17:30 UTC] (moved a week due to the [[:mw:Special:MyLanguage/Wikimedia Hackathon 2026|Wikimedia Hackathon]]). We plan to have the following agenda: there will be time to ask questions and discuss all matters arising. If we have time, we will either write a function together or work on an Abstract Wikipedia article together (volunteer-led). Everyone is welcome to join us on [https://meet.google.com/xuy-njxh-rkw Google Meet]. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Fresh Functions weekly: 81 new Functions === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> This week we had 81 new functions. Here is an incomplete list of functions with implementations and passing tests to get a taste of what functions have been created. Thanks everybody for contributing! </div> * {{Z|Z33778}} * {{Z|Z33780}} * {{Z|Z33785}} * {{Z|Z33788}} * {{Z|Z33797}} * {{Z|Z33808}} * {{Z|Z33818}} * {{Z|Z33823}} * {{Z|Z33828}} * {{Z|Z33831}} * {{Z|Z33836}} * {{Z|Z33842}} * {{Z|Z33844}} * {{Z|Z33848}} * {{Z|Z33862}} * {{Z|Z33876}} * {{Z|Z33878}} * {{Z|Z33880}} * {{Z|Z33890}} * {{Z|Z33895}} * {{Z|Z33902}} * {{Z|Z33933}} * {{Z|Z33951}} * {{Z|Z33955}} * {{Z|Z33975}} * {{Z|Z33977}} * {{Z|Z33983}} * {{Z|Z33986}} * {{Z|Z33999}} * {{Z|Z34008}} * {{Z|Z34009}} * {{Z|Z34039}} * {{Z|Z34060}} * {{Z|Z34070}} * {{Z|Z34072}} * {{Z|Z34077}} * {{Z|Z34084}} * {{Z|Z34096}} * {{Z|Z34105}} * {{Z|Z34124}} * {{Z|Z34127}} * {{Z|Z34132}} * {{Z|Z34139}} * {{Z|Z34178}} * {{Z|Z34197}} * {{Z|Z34200}} * {{Z|Z34204}} * {{Z|Z34209}} * {{Z|Z34212}} * {{Z|Z34218}} * {{Z|Z34250}} * {{Z|Z34253}} * {{Z|Z34257}} * {{Z|Z34263}} * {{Z|Z34273}} <div lang="en" dir="ltr" class="mw-content-ltr"> A [https://www.wikifunctions.org/wiki/Special:ListObjectsByType?type=Z8&orderby=latest complete list of all functions sorted by when they were created] is available. </div> [[Category:Status updates{{#translation:}}|2026-05-02]] cmmcgekplenmoi92g3we7hyb4t5l4in 272418 272416 2026-05-05T10:09:55Z Ameisenigel 44 Created page with "Wir haben außerdem mehrere Fehler behoben und die Darstellung verbessert. Ein Fehler im Testergebnis-Caching-System wurde behoben, der dazu führte, dass Tests fälschlicherweise als fehlgeschlagen angezeigt wurden ($1). Ein Fehler in der Kopier-/Einfügefunktion, der beim Kopieren von Blöcken mit undefinierten Referenzen gelegentlich Probleme verursachte, wurde ebenfalls behoben. Eine weitere Korrektur stellt sicher, dass beim Veröffentlichen von Funktionsdefinitions..." 272418 wikitext text/x-wiki <languages/> {{Wikifunctions updates | prevlabel = Vorheriges Update | prev = 2026-04-25 | nextlabel = Nächstes Update | next = }} <span id="Request_for_input:_what_should_we_count_for_Abstract_Wikipedia"></span> === Bitte um Anregungen: Was sollten wir für die Abstrakte Wikipedia zählen === Wir möchten die Entwicklung der Abstrakten Wikipedia sichtbar machen und bitten daher um Anregungen: Welche Kennzahlen zu Seiten in der Abstrakten Wikipedia hältst du für wichtig? Hier sind ein paar Ideen für Kennzahlen, aber wir sind sicher, dass dir bessere einfallen werden: * Wie viele Artikel gibt es in der Abstrakten Wikipedia? (Zum Zeitpunkt der Erstellung dieses Newsletters 1203, eine Zahl, die auf der Startseite der Abstrakten Wikipedia sichtbar veröffentlicht ist.) * Wie viele monatlich aktive Beitragende gibt es in der Abstrakten Wikipedia? (Derzeit 113, ein leichter Rückgang gegenüber dem Rekordwert von 163 zum Start.) * Wie viele Bearbeitungen pro Monat gibt es in der Abstrakten Wikipedia? * Wie viele Fragmente gibt es? (Derzeit 3410) Wie viele Fragmente enthält ein Artikel durchschnittlich? (Derzeit etwa 2,8) * Welche Fragmente werden am häufigsten verwendet? ({{Z|Z32123}} 1452 Mal, gefolgt von {{Z|Z27868}} 736 Mal und {{Z|Z29749}} 650 Mal) * Wie viele Artikel in wie vielen Sprachen sind tatsächlich vollständig und fehlerfrei verfügbar? * Wie viele davon existieren derzeit nicht in den jeweiligen Wikipedias? * Wie viele Bytes an Ausgabetext werden dadurch erzeugt? Wir sind jedoch überzeugt, dass dir weitere Vorschläge einfallen werden, und du hast vielleicht auch Gedanken darüber, welche dieser Kennzahlen man im Auge behalten sollte, um ein gesundes Wachstum zu erfassen. Teile uns deine Meinung mit! <span id="Recent_Changes_in_the_software"></span> === Letzte Änderungen an der Software === In den vergangenen zwei Wochen gab es mehrere Aktualisierungen zur Verbesserung der Benutzerfreundlichkeit und Verständlichkeit von der Abstrakten Wikipedia und Wikifunctions. Die Such- und Entdeckungsfunktionen wurden verbessert, sodass Beitragende Inhalte leichter finden und erkennen können. In der Abstrakten Wikipedia werden nun neben den Suchergebnissen Vorschaubilder der Wikidata-Entitäten angezeigt (sofern verfügbar), was die visuelle Identifizierung von Entitäten erleichtert ([[:phab:T423464|T423464]]). Darüber hinaus wurde der Algorithmus für die Suche von Bezeichnungen aktualisiert, um sicherzustellen, dass exakte Übereinstimmungen immer als erstes Ergebnis angezeigt werden. Dies behebt Fälle, in denen bekannte Objekte oder Funktionen schwer zu finden waren ([[:phab:T424211|T424211]]). Wir haben außerdem eine benutzerfreundlichere Methode für Communitys eingeführt, um empfohlene Funktionen zu konfigurieren. Bisher wurden die vorgeschlagenen Funktionen für eingebettete Fragmente von Wikifunctions und der Abstrakten Wikipedia über JSON-Seiten (MediaWiki:Wikilambda-suggested-functions.json und MediaWiki:Abstractwiki-suggested-functions.json) verwaltet. Dies wurde nun durch die Konfiguration über die Spezialseite Community-Konfiguration ersetzt, wodurch die Verwaltung dieser Empfehlungen für Communitys vereinfacht wird ([[:phab:T394410|T394410]]). Wir haben außerdem mehrere Fehler behoben und die Darstellung verbessert. Ein Fehler im Testergebnis-Caching-System wurde behoben, der dazu führte, dass Tests fälschlicherweise als fehlgeschlagen angezeigt wurden ([[:phab:T422300|T422300]]). Ein Fehler in der Kopier-/Einfügefunktion, der beim Kopieren von Blöcken mit undefinierten Referenzen gelegentlich Probleme verursachte, wurde ebenfalls behoben. Eine weitere Korrektur stellt sicher, dass beim Veröffentlichen von Funktionsdefinitionsänderungen verbundene Implementierungen und Tests bei Bedarf ordnungsgemäß getrennt werden. <div lang="en" dir="ltr" class="mw-content-ltr"> When it comes to improved displays; the composition formatting has been improved so that line breaks occur at word separators. ([[:phab:T421959|T421959]]). We also fixed a bug to ensure the Typed List label is fetched as part of the page initialization so that it's not displayed as a zid ([[:phab:T422094|T422094]]). And on Abstract Wikipedia we improved how content is displayed in the preview. The preview box no longer inserts unwelcome line spacing when fragments are defined as paragraphs (<nowiki><p></nowiki>), resulting in more accurate spacing ([[:phab:T424041|T424041]]). </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Finally, we have quoted the type in the filter box of the ListObjectsByType Special page, to add clarity in cases such as "All Objects of type 'Type' (Z4)" - [[Special:ListObjectsByType/Z4|see example]] ([[:phab:T377649|T377649]]), and the language selector now correctly displays the selected language name even for non mediawiki supported languages ([[:phab:T417211|T417211]]). </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Updates about V2 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> We have reverted one change related to the recent deployment of "Composition Language v2" (which was introduced in the [[Special:MyLanguage/Wikifunctions:Status updates/2026-03-11|11 March newsletter]]). Prior to v2, arguments going to code implementations were generally fully resolved. Updates related to v2 changed that, so that arguments were only resolved at the top level; nested parts of arguments didn't necessarily get resolved. The reversion means that once again, arguments going to code implementations will be fully resolved. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> This makes sense as a default, because once an argument gets passed to a code implementation, it's impossible to explicitly ask for the resolution of any part of it. However, there is also a competing principle that, in general, arguments are not guaranteed to present themselves as literals (or as references) all the time, so all implementations should ideally allow for both forms of arguments coming in, by using equality functions that can recognize when a reference and a literal are equivalent. Since this is currently difficult or impossible in code implementations, we decided this reversion is the best way to go for now. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Volunteers’ Corner on May 11 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> The next Volunteers’ Corner will be on [https://zonestamp.toolforge.org/1778520600 Monday, 11 May 2026 at 17:30 UTC] (moved a week due to the [[:mw:Special:MyLanguage/Wikimedia Hackathon 2026|Wikimedia Hackathon]]). We plan to have the following agenda: there will be time to ask questions and discuss all matters arising. If we have time, we will either write a function together or work on an Abstract Wikipedia article together (volunteer-led). Everyone is welcome to join us on [https://meet.google.com/xuy-njxh-rkw Google Meet]. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Fresh Functions weekly: 81 new Functions === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> This week we had 81 new functions. Here is an incomplete list of functions with implementations and passing tests to get a taste of what functions have been created. Thanks everybody for contributing! </div> * {{Z|Z33778}} * {{Z|Z33780}} * {{Z|Z33785}} * {{Z|Z33788}} * {{Z|Z33797}} * {{Z|Z33808}} * {{Z|Z33818}} * {{Z|Z33823}} * {{Z|Z33828}} * {{Z|Z33831}} * {{Z|Z33836}} * {{Z|Z33842}} * {{Z|Z33844}} * {{Z|Z33848}} * {{Z|Z33862}} * {{Z|Z33876}} * {{Z|Z33878}} * {{Z|Z33880}} * {{Z|Z33890}} * {{Z|Z33895}} * {{Z|Z33902}} * {{Z|Z33933}} * {{Z|Z33951}} * {{Z|Z33955}} * {{Z|Z33975}} * {{Z|Z33977}} * {{Z|Z33983}} * {{Z|Z33986}} * {{Z|Z33999}} * {{Z|Z34008}} * {{Z|Z34009}} * {{Z|Z34039}} * {{Z|Z34060}} * {{Z|Z34070}} * {{Z|Z34072}} * {{Z|Z34077}} * {{Z|Z34084}} * {{Z|Z34096}} * {{Z|Z34105}} * {{Z|Z34124}} * {{Z|Z34127}} * {{Z|Z34132}} * {{Z|Z34139}} * {{Z|Z34178}} * {{Z|Z34197}} * {{Z|Z34200}} * {{Z|Z34204}} * {{Z|Z34209}} * {{Z|Z34212}} * {{Z|Z34218}} * {{Z|Z34250}} * {{Z|Z34253}} * {{Z|Z34257}} * {{Z|Z34263}} * {{Z|Z34273}} <div lang="en" dir="ltr" class="mw-content-ltr"> A [https://www.wikifunctions.org/wiki/Special:ListObjectsByType?type=Z8&orderby=latest complete list of all functions sorted by when they were created] is available. </div> [[Category:Status updates{{#translation:}}|2026-05-02]] ayyw587o83qvavq7pvifyb540yc40ce 272420 272418 2026-05-05T10:12:11Z Ameisenigel 44 Created page with "Im Hinblick auf die verbesserte Darstellung wurde die Formatierung bei Kompositionen optimiert, sodass Zeilenumbrüche nun an Worttrennern erfolgen ($1). Außerdem wurde ein Fehler behoben, um sicherzustellen, dass die Bezeichnung Typisierte Liste beim Seitenaufbau geladen und nicht als ZID angezeigt wird ($2). Und in der Abstrakten Wikipedia wurde die Inhaltsdarstellung in der Vorschau verbessert. Die Vorschau fügt nun keine unerwünschten Zeilenabstände mehr ein, wen..." 272420 wikitext text/x-wiki <languages/> {{Wikifunctions updates | prevlabel = Vorheriges Update | prev = 2026-04-25 | nextlabel = Nächstes Update | next = }} <span id="Request_for_input:_what_should_we_count_for_Abstract_Wikipedia"></span> === Bitte um Anregungen: Was sollten wir für die Abstrakte Wikipedia zählen === Wir möchten die Entwicklung der Abstrakten Wikipedia sichtbar machen und bitten daher um Anregungen: Welche Kennzahlen zu Seiten in der Abstrakten Wikipedia hältst du für wichtig? Hier sind ein paar Ideen für Kennzahlen, aber wir sind sicher, dass dir bessere einfallen werden: * Wie viele Artikel gibt es in der Abstrakten Wikipedia? (Zum Zeitpunkt der Erstellung dieses Newsletters 1203, eine Zahl, die auf der Startseite der Abstrakten Wikipedia sichtbar veröffentlicht ist.) * Wie viele monatlich aktive Beitragende gibt es in der Abstrakten Wikipedia? (Derzeit 113, ein leichter Rückgang gegenüber dem Rekordwert von 163 zum Start.) * Wie viele Bearbeitungen pro Monat gibt es in der Abstrakten Wikipedia? * Wie viele Fragmente gibt es? (Derzeit 3410) Wie viele Fragmente enthält ein Artikel durchschnittlich? (Derzeit etwa 2,8) * Welche Fragmente werden am häufigsten verwendet? ({{Z|Z32123}} 1452 Mal, gefolgt von {{Z|Z27868}} 736 Mal und {{Z|Z29749}} 650 Mal) * Wie viele Artikel in wie vielen Sprachen sind tatsächlich vollständig und fehlerfrei verfügbar? * Wie viele davon existieren derzeit nicht in den jeweiligen Wikipedias? * Wie viele Bytes an Ausgabetext werden dadurch erzeugt? Wir sind jedoch überzeugt, dass dir weitere Vorschläge einfallen werden, und du hast vielleicht auch Gedanken darüber, welche dieser Kennzahlen man im Auge behalten sollte, um ein gesundes Wachstum zu erfassen. Teile uns deine Meinung mit! <span id="Recent_Changes_in_the_software"></span> === Letzte Änderungen an der Software === In den vergangenen zwei Wochen gab es mehrere Aktualisierungen zur Verbesserung der Benutzerfreundlichkeit und Verständlichkeit von der Abstrakten Wikipedia und Wikifunctions. Die Such- und Entdeckungsfunktionen wurden verbessert, sodass Beitragende Inhalte leichter finden und erkennen können. In der Abstrakten Wikipedia werden nun neben den Suchergebnissen Vorschaubilder der Wikidata-Entitäten angezeigt (sofern verfügbar), was die visuelle Identifizierung von Entitäten erleichtert ([[:phab:T423464|T423464]]). Darüber hinaus wurde der Algorithmus für die Suche von Bezeichnungen aktualisiert, um sicherzustellen, dass exakte Übereinstimmungen immer als erstes Ergebnis angezeigt werden. Dies behebt Fälle, in denen bekannte Objekte oder Funktionen schwer zu finden waren ([[:phab:T424211|T424211]]). Wir haben außerdem eine benutzerfreundlichere Methode für Communitys eingeführt, um empfohlene Funktionen zu konfigurieren. Bisher wurden die vorgeschlagenen Funktionen für eingebettete Fragmente von Wikifunctions und der Abstrakten Wikipedia über JSON-Seiten (MediaWiki:Wikilambda-suggested-functions.json und MediaWiki:Abstractwiki-suggested-functions.json) verwaltet. Dies wurde nun durch die Konfiguration über die Spezialseite Community-Konfiguration ersetzt, wodurch die Verwaltung dieser Empfehlungen für Communitys vereinfacht wird ([[:phab:T394410|T394410]]). Wir haben außerdem mehrere Fehler behoben und die Darstellung verbessert. Ein Fehler im Testergebnis-Caching-System wurde behoben, der dazu führte, dass Tests fälschlicherweise als fehlgeschlagen angezeigt wurden ([[:phab:T422300|T422300]]). Ein Fehler in der Kopier-/Einfügefunktion, der beim Kopieren von Blöcken mit undefinierten Referenzen gelegentlich Probleme verursachte, wurde ebenfalls behoben. Eine weitere Korrektur stellt sicher, dass beim Veröffentlichen von Funktionsdefinitionsänderungen verbundene Implementierungen und Tests bei Bedarf ordnungsgemäß getrennt werden. Im Hinblick auf die verbesserte Darstellung wurde die Formatierung bei Kompositionen optimiert, sodass Zeilenumbrüche nun an Worttrennern erfolgen ([[:phab:T421959|T421959]]). Außerdem wurde ein Fehler behoben, um sicherzustellen, dass die Bezeichnung Typisierte Liste beim Seitenaufbau geladen und nicht als ZID angezeigt wird ([[:phab:T422094|T422094]]). Und in der Abstrakten Wikipedia wurde die Inhaltsdarstellung in der Vorschau verbessert. Die Vorschau fügt nun keine unerwünschten Zeilenabstände mehr ein, wenn Textfragmente als Absätze definiert werden (<nowiki><p></nowiki>), was zu einer präziseren Formatierung führt ([[:phab:T424041|T424041]]). <div lang="en" dir="ltr" class="mw-content-ltr"> Finally, we have quoted the type in the filter box of the ListObjectsByType Special page, to add clarity in cases such as "All Objects of type 'Type' (Z4)" - [[Special:ListObjectsByType/Z4|see example]] ([[:phab:T377649|T377649]]), and the language selector now correctly displays the selected language name even for non mediawiki supported languages ([[:phab:T417211|T417211]]). </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Updates about V2 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> We have reverted one change related to the recent deployment of "Composition Language v2" (which was introduced in the [[Special:MyLanguage/Wikifunctions:Status updates/2026-03-11|11 March newsletter]]). Prior to v2, arguments going to code implementations were generally fully resolved. Updates related to v2 changed that, so that arguments were only resolved at the top level; nested parts of arguments didn't necessarily get resolved. The reversion means that once again, arguments going to code implementations will be fully resolved. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> This makes sense as a default, because once an argument gets passed to a code implementation, it's impossible to explicitly ask for the resolution of any part of it. However, there is also a competing principle that, in general, arguments are not guaranteed to present themselves as literals (or as references) all the time, so all implementations should ideally allow for both forms of arguments coming in, by using equality functions that can recognize when a reference and a literal are equivalent. Since this is currently difficult or impossible in code implementations, we decided this reversion is the best way to go for now. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Volunteers’ Corner on May 11 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> The next Volunteers’ Corner will be on [https://zonestamp.toolforge.org/1778520600 Monday, 11 May 2026 at 17:30 UTC] (moved a week due to the [[:mw:Special:MyLanguage/Wikimedia Hackathon 2026|Wikimedia Hackathon]]). We plan to have the following agenda: there will be time to ask questions and discuss all matters arising. If we have time, we will either write a function together or work on an Abstract Wikipedia article together (volunteer-led). Everyone is welcome to join us on [https://meet.google.com/xuy-njxh-rkw Google Meet]. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Fresh Functions weekly: 81 new Functions === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> This week we had 81 new functions. Here is an incomplete list of functions with implementations and passing tests to get a taste of what functions have been created. Thanks everybody for contributing! </div> * {{Z|Z33778}} * {{Z|Z33780}} * {{Z|Z33785}} * {{Z|Z33788}} * {{Z|Z33797}} * {{Z|Z33808}} * {{Z|Z33818}} * {{Z|Z33823}} * {{Z|Z33828}} * {{Z|Z33831}} * {{Z|Z33836}} * {{Z|Z33842}} * {{Z|Z33844}} * {{Z|Z33848}} * {{Z|Z33862}} * {{Z|Z33876}} * {{Z|Z33878}} * {{Z|Z33880}} * {{Z|Z33890}} * {{Z|Z33895}} * {{Z|Z33902}} * {{Z|Z33933}} * {{Z|Z33951}} * {{Z|Z33955}} * {{Z|Z33975}} * {{Z|Z33977}} * {{Z|Z33983}} * {{Z|Z33986}} * {{Z|Z33999}} * {{Z|Z34008}} * {{Z|Z34009}} * {{Z|Z34039}} * {{Z|Z34060}} * {{Z|Z34070}} * {{Z|Z34072}} * {{Z|Z34077}} * {{Z|Z34084}} * {{Z|Z34096}} * {{Z|Z34105}} * {{Z|Z34124}} * {{Z|Z34127}} * {{Z|Z34132}} * {{Z|Z34139}} * {{Z|Z34178}} * {{Z|Z34197}} * {{Z|Z34200}} * {{Z|Z34204}} * {{Z|Z34209}} * {{Z|Z34212}} * {{Z|Z34218}} * {{Z|Z34250}} * {{Z|Z34253}} * {{Z|Z34257}} * {{Z|Z34263}} * {{Z|Z34273}} <div lang="en" dir="ltr" class="mw-content-ltr"> A [https://www.wikifunctions.org/wiki/Special:ListObjectsByType?type=Z8&orderby=latest complete list of all functions sorted by when they were created] is available. </div> [[Category:Status updates{{#translation:}}|2026-05-02]] e2rrr64aunirrv2is50v6t1krin22el Z34745 0 82374 272140 2026-05-04T13:26:43Z YoshiRulz 10156 Create implementation 272140 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34745" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z20006", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z16667", "Z16667K1": { "Z1K1": "Z7", "Z7K1": "Z19717", "Z19717K1": { "Z1K1": "Z18", "Z18K1": "Z20006K1" } }, "Z16667K2": { "Z1K1": "Z7", "Z7K1": "Z19717", "Z19717K1": { "Z1K1": "Z18", "Z18K1": "Z20006K2" } } }, "Z802K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z19753", "Z19753K1": { "Z1K1": "Z7", "Z7K1": "Z21692", "Z21692K1": { "Z1K1": "Z18", "Z18K1": "Z20006K1" } }, "Z19753K2": { "Z1K1": "Z7", "Z7K1": "Z21692", "Z21692K1": { "Z1K1": "Z18", "Z18K1": "Z20006K2" } } }, "Z802K2": { "Z1K1": "Z18", "Z18K1": "Z20006K1" }, "Z802K3": { "Z1K1": "Z7", "Z7K1": "Z20006", "Z20006K1": { "Z1K1": "Z7", "Z7K1": "Z19699", "Z19699K1": { "Z1K1": "Z18", "Z18K1": "Z20006K1" }, "Z19699K2": { "Z1K1": "Z18", "Z18K1": "Z20006K2" } }, "Z20006K2": { "Z1K1": "Z18", "Z18K1": "Z20006K2" } } }, "Z802K3": { "Z1K1": "Z7", "Z7K1": "Z19694", "Z19694K1": { "Z1K1": "Z7", "Z7K1": "Z20006", "Z20006K1": { "Z1K1": "Z18", "Z18K1": "Z20006K1" }, "Z20006K2": { "Z1K1": "Z7", "Z7K1": "Z19694", "Z19694K1": { "Z1K1": "Z18", "Z18K1": "Z20006K2" } } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Rational modulo, recursive composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 1opcz1v49ot8rsovtcsebbds2hpaqcl Talk:Z20013 1 82375 272142 2026-05-04T13:27:20Z YoshiRulz 10156 Add to category 272142 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Z34746 0 82376 272143 2026-05-04T13:29:42Z YoshiRulz 10156 Create implementation 272143 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34746" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z20020", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z27612", "Z27612K1": { "Z1K1": "Z18", "Z18K1": "Z20020K1" }, "Z27612K2": "Z19753" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "sort list of Rationals ascending, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 6s2hjq4ed5dix7nm12pn6kq6zjrmzb7 Talk:Z20020 1 82377 272144 2026-05-04T13:29:54Z YoshiRulz 10156 Add to category 272144 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z20024 1 82378 272145 2026-05-04T13:30:15Z YoshiRulz 10156 Add to category 272145 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z20132 1 82379 272146 2026-05-04T13:33:38Z YoshiRulz 10156 Add to category 272146 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Z34747 0 82380 272147 2026-05-04T13:39:50Z YoshiRulz 10156 Create implementation 272147 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34747" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z20172", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z20166", "Z20166K1": { "Z1K1": "Z18", "Z18K1": "Z20172K1" }, "Z20166K2": { "Z1K1": "Z20159", "Z20159K1": { "Z1K1": "Z17813", "Z17813K1": "Z17815" }, "Z20159K2": { "Z1K1": "Z13518", "Z13518K1": "1" } } }, "Z802K2": { "Z1K1": "Z20159", "Z20159K1": "Z17814", "Z20159K2": { "Z1K1": "Z13518", "Z13518K1": "1" } }, "Z802K3": { "Z1K1": "Z20159", "Z20159K1": { "Z1K1": "Z7", "Z7K1": "Z20185", "Z20185K1": { "Z1K1": "Z18", "Z18K1": "Z20172K1" } }, "Z20159K2": { "Z1K1": "Z7", "Z7K1": "Z13036", "Z13036K1": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z25060", "Z25060K1": { "Z1K1": "Z18", "Z18K1": "Z20172K1" } }, "Z802K2": "Z13582", "Z802K3": "Z13578" }, "Z13036K2": { "Z1K1": "Z7", "Z7K1": "Z20160", "Z20160K1": { "Z1K1": "Z18", "Z18K1": "Z20172K1" } } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "following Gregorian year, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } mq8f59pjjwtc0miniz25v5vbelpfpzm 272148 272147 2026-05-04T13:41:33Z YoshiRulz 10156 Fix era check 272148 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34747" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z20172", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z20166", "Z20166K1": { "Z1K1": "Z18", "Z18K1": "Z20172K1" }, "Z20166K2": { "Z1K1": "Z20159", "Z20159K1": { "Z1K1": "Z17813", "Z17813K1": "Z17815" }, "Z20159K2": { "Z1K1": "Z13518", "Z13518K1": "1" } } }, "Z802K2": { "Z1K1": "Z20159", "Z20159K1": "Z17814", "Z20159K2": { "Z1K1": "Z13518", "Z13518K1": "1" } }, "Z802K3": { "Z1K1": "Z20159", "Z20159K1": { "Z1K1": "Z7", "Z7K1": "Z20185", "Z20185K1": { "Z1K1": "Z18", "Z18K1": "Z20172K1" } }, "Z20159K2": { "Z1K1": "Z7", "Z7K1": "Z13036", "Z13036K1": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z28875", "Z28875K1": { "Z1K1": "Z18", "Z18K1": "Z20172K1" } }, "Z802K2": "Z13578", "Z802K3": "Z13582" }, "Z13036K2": { "Z1K1": "Z7", "Z7K1": "Z20160", "Z20160K1": { "Z1K1": "Z18", "Z18K1": "Z20172K1" } } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "following Gregorian year, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } pf8b1ntdvdu9h1h5ebdb01lbrffzvd8 Talk:Z20198 1 82381 272150 2026-05-04T13:42:46Z YoshiRulz 10156 Add to category 272150 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Z34748 0 82382 272151 2026-05-04T13:45:54Z YoshiRulz 10156 Create implementation 272151 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34748" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z20219", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z17111", "Z17111K1": { "Z1K1": "Z7", "Z7K1": "Z20257", "Z20257K1": { "Z1K1": "Z18", "Z18K1": "Z20219K2" } }, "Z17111K2": { "Z1K1": "Z7", "Z7K1": "Z20257", "Z20257K1": { "Z1K1": "Z18", "Z18K1": "Z20219K1" } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Gregorian year subtraction, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 6jnntclp7sswten5hcka8085os1cyti Talk:Z20285 1 82383 272153 2026-05-04T13:52:30Z YoshiRulz 10156 Add to category 272153 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Z34749 0 82384 272154 2026-05-04T13:55:46Z YoshiRulz 10156 Create implementation 272154 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34749" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z20314", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z20166", "Z20166K1": { "Z1K1": "Z18", "Z18K1": "Z20314K1" }, "Z20166K2": { "Z1K1": "Z20159", "Z20159K1": { "Z1K1": "Z17813", "Z17813K1": "Z17814" }, "Z20159K2": { "Z1K1": "Z13518", "Z13518K1": "1" } } }, "Z802K2": { "Z1K1": "Z20159", "Z20159K1": "Z17815", "Z20159K2": { "Z1K1": "Z13518", "Z13518K1": "1" } }, "Z802K3": { "Z1K1": "Z20159", "Z20159K1": { "Z1K1": "Z7", "Z7K1": "Z20185", "Z20185K1": { "Z1K1": "Z18", "Z18K1": "Z20314K1" } }, "Z20159K2": { "Z1K1": "Z7", "Z7K1": "Z13036", "Z13036K1": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z28875", "Z28875K1": { "Z1K1": "Z18", "Z18K1": "Z20314K1" } }, "Z802K2": "Z13582", "Z802K3": "Z13578" }, "Z13036K2": { "Z1K1": "Z7", "Z7K1": "Z20160", "Z20160K1": { "Z1K1": "Z18", "Z18K1": "Z20314K1" } } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "preceding Gregorian year, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } pw8bzmwf7avyjs4rr90hkbzhu43f1d6 Z34750 0 82385 272157 2026-05-04T14:04:38Z YoshiRulz 10156 Create implementation 272157 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34750" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z20323", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z19565", "Z19565K1": { "Z1K1": "Z7", "Z7K1": "Z31547", "Z31547K1": { "Z1K1": "Z18", "Z18K1": "Z20323K3" } }, "Z19565K2": { "Z1K1": "Z7", "Z7K1": "Z19953", "Z19953K1": { "Z1K1": "Z18", "Z18K1": "Z20323K2" }, "Z19953K2": { "Z1K1": "Z7", "Z7K1": "Z19711", "Z19711K1": { "Z1K1": "Z18", "Z18K1": "Z20323K1" } } }, "Z19565K3": { "Z1K1": "Z7", "Z7K1": "Z31554", "Z31554K1": { "Z1K1": "Z18", "Z18K1": "Z20323K3" } }, "Z19565K4": { "Z1K1": "Z7", "Z7K1": "Z21071", "Z21071K1": { "Z1K1": "Z7", "Z7K1": "Z21037", "Z21037K1": { "Z1K1": "Z7", "Z7K1": "Z20854", "Z20854K1": { "Z1K1": "Z18", "Z18K1": "Z20323K2" } }, "Z21037K2": { "Z1K1": "Z7", "Z7K1": "Z20854", "Z20854K1": { "Z1K1": "Z18", "Z18K1": "Z20323K1" } } } }, "Z19565K5": { "Z1K1": "Z7", "Z7K1": "Z19953", "Z19953K1": { "Z1K1": "Z18", "Z18K1": "Z20323K1" }, "Z19953K2": { "Z1K1": "Z18", "Z18K1": "Z20323K2" } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Triangle of Power operation, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 4seshfnx1a8tfg1snp7lqlc3ef9c01h Z34751 0 82386 272159 2026-05-04T14:24:32Z YoshiRulz 10156 Create implementation 272159 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34751" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z20357", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z13521", "Z13521K1": { "Z1K1": "Z7", "Z7K1": "Z13397", "Z13397K1": [ "Z13518", { "Z1K1": "Z13518", "Z13518K1": "0" }, { "Z1K1": "Z13518", "Z13518K1": "31" }, { "Z1K1": "Z13518", "Z13518K1": "59" }, { "Z1K1": "Z13518", "Z13518K1": "90" }, { "Z1K1": "Z13518", "Z13518K1": "120" }, { "Z1K1": "Z13518", "Z13518K1": "151" }, { "Z1K1": "Z13518", "Z13518K1": "181" }, { "Z1K1": "Z13518", "Z13518K1": "212" }, { "Z1K1": "Z13518", "Z13518K1": "243" }, { "Z1K1": "Z13518", "Z13518K1": "273" }, { "Z1K1": "Z13518", "Z13518K1": "304" }, { "Z1K1": "Z13518", "Z13518K1": "334" } ], "Z13397K2": { "Z1K1": "Z7", "Z7K1": "Z16230", "Z16230K1": { "Z1K1": "Z7", "Z7K1": "Z20343", "Z20343K1": { "Z1K1": "Z18", "Z18K1": "Z20357K1" } } } }, "Z13521K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z10174", "Z10174K1": { "Z1K1": "Z18", "Z18K1": "Z20357K2" }, "Z10174K2": { "Z1K1": "Z7", "Z7K1": "Z16648", "Z16648K1": { "Z1K1": "Z7", "Z7K1": "Z20343", "Z20343K1": { "Z1K1": "Z18", "Z18K1": "Z20357K1" } }, "Z16648K2": "Z16102" } }, "Z802K2": { "Z1K1": "Z7", "Z7K1": "Z13578", "Z13578K1": { "Z1K1": "Z7", "Z7K1": "Z20388", "Z20388K1": { "Z1K1": "Z18", "Z18K1": "Z20357K1" } } }, "Z802K3": { "Z1K1": "Z7", "Z7K1": "Z20388", "Z20388K1": { "Z1K1": "Z18", "Z18K1": "Z20357K1" } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Day of Roman year as nth of year, sum composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 2vn9qpokxsuo0i2g56cvyqx4co49f46 Z34752 0 82387 272160 2026-05-04T14:25:49Z YoshiRulz 10156 Create implementation 272160 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34752" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z20357", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z13578", "Z13578K1": { "Z1K1": "Z7", "Z7K1": "Z20733", "Z20733K1": { "Z1K1": "Z20342", "Z20342K1": { "Z1K1": "Z16098", "Z16098K1": "Z16101" }, "Z20342K2": { "Z1K1": "Z13518", "Z13518K1": "1" } }, "Z20733K2": { "Z1K1": "Z18", "Z18K1": "Z20357K1" }, "Z20733K3": { "Z1K1": "Z18", "Z18K1": "Z20357K2" } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Day of Roman year as nth of year, diff composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } f3ui42hz01ent8topagof67xhv3p0au Talk:Z20362 1 82388 272162 2026-05-04T14:27:41Z YoshiRulz 10156 Add to category 272162 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Z34753 0 82389 272163 2026-05-04T14:33:44Z YoshiRulz 10156 Create implementation 272163 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34753" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z20446", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z14494", "Z14494K1": { "Z1K1": "Z18", "Z18K1": "Z20446K1" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "remove chars not valid for Z13518K1, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } ga6r2ff05tx4b0fkvhxi91h898h82db Talk:Z20446 1 82390 272165 2026-05-04T14:34:30Z YoshiRulz 10156 /* Duplicate */ new section 272165 wikitext text/x-wiki == Duplicate == of [[Z14494]] [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:34, 4 May 2026 (UTC) 6w5je0ccj848iso0u4jasebi0a7imjo Talk:Z20426 1 82391 272166 2026-05-04T14:37:58Z YoshiRulz 10156 Add to category 272166 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Z34754 0 82392 272167 2026-05-04T14:39:33Z YoshiRulz 10156 Create implementation 272167 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34754" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z20430", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z10174", "Z10174K1": { "Z1K1": "Z7", "Z7K1": "Z20166", "Z20166K1": { "Z1K1": "Z7", "Z7K1": "Z24948", "Z24948K1": { "Z1K1": "Z18", "Z18K1": "Z20430K1" } }, "Z20166K2": { "Z1K1": "Z7", "Z7K1": "Z24948", "Z24948K1": { "Z1K1": "Z18", "Z18K1": "Z20430K2" } } }, "Z10174K2": { "Z1K1": "Z7", "Z7K1": "Z20348", "Z20348K1": { "Z1K1": "Z7", "Z7K1": "Z24936", "Z24936K1": { "Z1K1": "Z18", "Z18K1": "Z20430K1" } }, "Z20348K2": { "Z1K1": "Z7", "Z7K1": "Z24936", "Z24936K1": { "Z1K1": "Z18", "Z18K1": "Z20430K2" } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "same Gregorian calendar date, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 7hoz9r76dez7bh9fcwl6n78ov4ae1m9 Talk:Z20449 1 82393 272169 2026-05-04T14:42:31Z YoshiRulz 10156 Add to category 272169 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z20465 1 82394 272170 2026-05-04T14:45:31Z YoshiRulz 10156 Add to category 272170 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z20467 1 82395 272171 2026-05-04T14:45:35Z YoshiRulz 10156 Add to category 272171 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z20468 1 82396 272172 2026-05-04T14:45:37Z YoshiRulz 10156 Add to category 272172 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z20469 1 82397 272173 2026-05-04T14:45:40Z YoshiRulz 10156 Add to category 272173 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z20511 1 82398 272174 2026-05-04T14:45:41Z YoshiRulz 10156 Add to category 272174 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z20573 1 82399 272175 2026-05-04T14:47:07Z YoshiRulz 10156 Add to category 272175 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z20617 1 82400 272177 2026-05-04T14:51:12Z YoshiRulz 10156 Add to category 272177 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Z34755 0 82401 272178 2026-05-04T14:56:14Z YoshiRulz 10156 Create implementation 272178 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34755" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z20648", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z17101", "Z17101K1": { "Z1K1": "Z7", "Z7K1": "Z27068", "Z27068K1": { "Z1K1": "Z7", "Z7K1": "Z16316", "Z16316K1": { "Z1K1": "Z18", "Z18K1": "Z20648K1" } }, "Z27068K2": "Z13578", "Z27068K3": { "Z1K1": "Z7", "Z7K1": "Z20181", "Z20181K1": { "Z1K1": "Z18", "Z18K1": "Z20648K2" } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "num. days in Gregorian month in year, compositio" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 0hkf3bh9v4f454apb9k38tbbabg8rhf Z34756 0 82402 272180 2026-05-04T15:01:29Z YoshiRulz 10156 Create implementation 272180 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34756" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z20653", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z18", "Z18K1": "Z20653K3" }, "Z802K2": { "Z1K1": "Z7", "Z7K1": "Z13397", "Z13397K1": { "Z1K1": "Z18", "Z18K1": "Z20653K1" }, "Z13397K2": { "Z1K1": "Z7", "Z7K1": "Z28755", "Z28755K1": { "Z1K1": "Z7", "Z7K1": "Z19509", "Z19509K1": { "Z1K1": "Z7", "Z7K1": "Z13464", "Z13464K1": "Z11328", "Z13464K2": { "Z1K1": "Z18", "Z18K1": "Z20653K1" }, "Z13464K3": { "Z1K1": "Z18", "Z18K1": "Z20653K2" } } }, "Z28755K2": { "Z1K1": "Z7", "Z7K1": "Z13464", "Z13464K1": "Z31026", "Z13464K2": { "Z1K1": "Z18", "Z18K1": "Z20653K1" }, "Z13464K3": { "Z1K1": "Z18", "Z18K1": "Z20653K2" } } } }, "Z802K3": { "Z1K1": "Z7", "Z7K1": "Z28755", "Z28755K1": { "Z1K1": "Z7", "Z7K1": "Z19509", "Z19509K1": { "Z1K1": "Z7", "Z7K1": "Z13464", "Z13464K1": "Z11328", "Z13464K2": { "Z1K1": "Z18", "Z18K1": "Z20653K1" }, "Z13464K3": { "Z1K1": "Z18", "Z18K1": "Z20653K2" } } }, "Z28755K2": { "Z1K1": "Z7", "Z7K1": "Z13464", "Z13464K1": "Z11328", "Z13464K2": { "Z1K1": "Z18", "Z18K1": "Z20653K1" }, "Z13464K3": { "Z1K1": "Z18", "Z18K1": "Z20653K2" } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "closest to given String from list, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } bye7sjf7t6r6hw8r5apc3fn1qr19xmj 272181 272180 2026-05-04T15:03:06Z YoshiRulz 10156 Fix typo 272181 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34756" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z20653", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z18", "Z18K1": "Z20653K3" }, "Z802K2": { "Z1K1": "Z7", "Z7K1": "Z13397", "Z13397K1": { "Z1K1": "Z18", "Z18K1": "Z20653K1" }, "Z13397K2": { "Z1K1": "Z7", "Z7K1": "Z28755", "Z28755K1": { "Z1K1": "Z7", "Z7K1": "Z19509", "Z19509K1": { "Z1K1": "Z7", "Z7K1": "Z13464", "Z13464K1": "Z11328", "Z13464K2": { "Z1K1": "Z18", "Z18K1": "Z20653K1" }, "Z13464K3": { "Z1K1": "Z18", "Z18K1": "Z20653K2" } } }, "Z28755K2": { "Z1K1": "Z7", "Z7K1": "Z13464", "Z13464K1": "Z11328", "Z13464K2": { "Z1K1": "Z18", "Z18K1": "Z20653K1" }, "Z13464K3": { "Z1K1": "Z18", "Z18K1": "Z20653K2" } } } }, "Z802K3": { "Z1K1": "Z7", "Z7K1": "Z28755", "Z28755K1": { "Z1K1": "Z7", "Z7K1": "Z19509", "Z19509K1": { "Z1K1": "Z7", "Z7K1": "Z13464", "Z13464K1": "Z11328", "Z13464K2": { "Z1K1": "Z18", "Z18K1": "Z20653K1" }, "Z13464K3": { "Z1K1": "Z18", "Z18K1": "Z20653K2" } } }, "Z28755K2": { "Z1K1": "Z7", "Z7K1": "Z13464", "Z13464K1": "Z11328", "Z13464K2": { "Z1K1": "Z18", "Z18K1": "Z20653K1" }, "Z13464K3": { "Z1K1": "Z18", "Z18K1": "Z20653K2" } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "closest to given String from list, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } h103lgz6ju6p3fqy1tr50r38f4wv20w 272182 272181 2026-05-04T15:09:22Z YoshiRulz 10156 Switch to Levenshstein metric and fix list typing 272182 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34756" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z20653", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z18", "Z18K1": "Z20653K3" }, "Z802K2": { "Z1K1": "Z7", "Z7K1": "Z13397", "Z13397K1": { "Z1K1": "Z18", "Z18K1": "Z20653K1" }, "Z13397K2": { "Z1K1": "Z7", "Z7K1": "Z28755", "Z28755K1": { "Z1K1": "Z7", "Z7K1": "Z19509", "Z19509K1": { "Z1K1": "Z7", "Z7K1": "Z18475", "Z18475K1": { "Z1K1": "Z7", "Z7K1": "Z13464", "Z13464K1": "Z10393", "Z13464K2": { "Z1K1": "Z18", "Z18K1": "Z20653K1" }, "Z13464K3": { "Z1K1": "Z18", "Z18K1": "Z20653K2" } } } }, "Z28755K2": { "Z1K1": "Z7", "Z7K1": "Z13464", "Z13464K1": "Z10393", "Z13464K2": { "Z1K1": "Z18", "Z18K1": "Z20653K1" }, "Z13464K3": { "Z1K1": "Z18", "Z18K1": "Z20653K2" } } } }, "Z802K3": { "Z1K1": "Z7", "Z7K1": "Z28755", "Z28755K1": { "Z1K1": "Z7", "Z7K1": "Z19509", "Z19509K1": { "Z1K1": "Z7", "Z7K1": "Z18475", "Z18475K1": { "Z1K1": "Z7", "Z7K1": "Z13464", "Z13464K1": "Z10393", "Z13464K2": { "Z1K1": "Z18", "Z18K1": "Z20653K1" }, "Z13464K3": { "Z1K1": "Z18", "Z18K1": "Z20653K2" } } } }, "Z28755K2": { "Z1K1": "Z7", "Z7K1": "Z13464", "Z13464K1": "Z10393", "Z13464K2": { "Z1K1": "Z18", "Z18K1": "Z20653K1" }, "Z13464K3": { "Z1K1": "Z18", "Z18K1": "Z20653K2" } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "closest to given String from list, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } fe6cl087znf0yhmibrorkan7bs25a8f User:亞洲區 2 82403 272185 2026-05-04T15:32:16Z 亞洲區 68153 Created page with "{{Bot|<?php // PHP 8+ // Usage: export TELEGRAM_BOT_TOKEN="123:ABC..." && php bot_polling.php $token = getenv('TELEGRAM_BOT_TOKEN') ?: exit("Please set TELEGRAM_BOT_TOKEN env var\n"); $apiBase = "https://api.telegram.org/bot{$token}"; $offset = 0; echo "Bot started (polling)...\n"; while (true) { $updates = apiRequest('getUpdates', ['offset' => $offset, 'timeout' => 30, 'limit' => 30]); if (!is_array($updates) || count($updates) === 0) { // no updates..." 272185 wikitext text/x-wiki {{Bot|<?php // PHP 8+ // Usage: export TELEGRAM_BOT_TOKEN="123:ABC..." && php bot_polling.php $token = getenv('TELEGRAM_BOT_TOKEN') ?: exit("Please set TELEGRAM_BOT_TOKEN env var\n"); $apiBase = "https://api.telegram.org/bot{$token}"; $offset = 0; echo "Bot started (polling)...\n"; while (true) { $updates = apiRequest('getUpdates', ['offset' => $offset, 'timeout' => 30, 'limit' => 30]); if (!is_array($updates) || count($updates) === 0) { // no updates continue; } foreach ($updates as $u) { if (!isset($u['update_id'])) continue; $offset = $u['update_id'] + 1; // handle message (ignore non-message updates for simplicity) if (isset($u['message'])) { $msg = $u['message']; $chatId = $msg['chat']['id']; $text = $msg['text'] ?? ''; // simple command parsing if (str_starts_with($text, '/')) { $parts = preg_split('/\s+/', $text, 2); $cmd = strtolower($parts[0]); $arg = $parts[1] ?? ''; match ($cmd) { '/start' => apiRequest('sendMessage', ['chat_id' => $chatId, 'text' => "嗨!我是 PHP Bot。輸入 /help 查看功能。"]), '/help' => apiRequest('sendMessage', ['chat_id' => $chatId, 'text' => "/start - 啟動\n/help - 幫助\n/echo <文字> - 回傳相同文字"]), '/echo' => apiRequest('sendMessage', ['chat_id' => $chatId, 'text' => $arg ?: "請在 /echo 後面加文字,例如:/echo 哈囉"]), default => apiRequest('sendMessage', ['chat_id' => $chatId, 'text' => "未知指令: {$cmd}\n輸入 /help 查看支援的指令。"]), }; } else { // echo back normal messages if ($text !== '') { apiRequest('sendMessage', ['chat_id' => $chatId, 'text' => "你說: " . $text]); } } } } // small sleep to avoid busy looping (getUpdates has long polling but loop guard) usleep(200_000); } /** * Helper to call Telegram Bot API */ function apiRequest(string $method, array $params = []): mixed { global $apiBase; $url = "{$apiBase}/{$method}"; $ch = curl_init($url); $payload = json_encode($params, JSON_UNESCAPED_UNICODE); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']); curl_setopt($ch, CURLOPT_POSTFIELDS, $payload); curl_setopt($ch, CURLOPT_TIMEOUT, 60); $resp = curl_exec($ch); if ($resp === false) { error_log("CURL error: " . curl_error($ch)); curl_close($ch); return null; } curl_close($ch); $data = json_decode($resp, true); if (!isset($data['ok']) || $data['ok'] !== true) { error_log("Telegram API error: " . $resp); return null; } return $data['result'] ?? null; }|allow=all}} {{Author|name=|birthyear=|deathyear=|firstletter=|wikipedia=|zh-classical-wikipedia=|wikiquote=|commons=|notes=|image=|country=|times=}} {{PD|GFDL}} tca331jupdv9ox7lq5icpdkgk20bb0v Template:PD 10 82404 272186 2026-05-04T15:33:25Z 亞洲區 68153 新增 272186 wikitext text/x-wiki {{Google AI}} ex305fo8u2u6e95i3nd898gxkxwl930 Template:Google AI 10 82405 272187 2026-05-04T15:36:28Z 亞洲區 68153 新增 272187 wikitext text/x-wiki {{鍾顓如|{{Navbox | name = Google AI | title = [[Google AI]] | state = {{{state<includeonly>|autocollapse</includeonly>}}} | bodyclass = hlist | above = * [[Google]] * [[Google Brain]] * [[Google DeepMind]] | group1 = Computer <br>programs | list1 = {{navbox|child | group1 = AlphaGo | list1 = {{navbox|child | group1 = Versions | list1 = * [[AlphaGo]] (2015) * [[Master (software)|Master]] (2016) * [[AlphaGo Zero]] (2017) * [[AlphaZero]] (2017) * [[MuZero]] (2019) | group2 = Competitions | list2 = * [[AlphaGo versus Fan Hui|Fan Hui]] (2015) * [[AlphaGo versus Lee Sedol|Lee Sedol]] (2016) * [[AlphaGo versus Ke Jie|Ke Jie]] (2017) | group3 = In popular culture | list3 = * ''[[AlphaGo (film)|AlphaGo]]'' (2017) * ''[[The MANIAC]]'' (2023) }} | group2 = Other | list2 = * [[AlphaFold]] (2018) * [[AlphaStar (software)|AlphaStar]] (2019) * [[AlphaDev]] (2023) * [[AlphaGeometry]] (2024) * [[AlphaGenome]] (2025) }} | group2 = Machine <br>learning | list2 = {{navbox|child | group1 = Neural networks | list1 = * [[Inception (deep learning architecture)|Inception]] (2014) * [[WaveNet]] (2016) * [[MobileNet]] (2017) * [[Transformer (deep learning architecture)|Transformer]] (2017) * [[EfficientNet]] (2019) * [[Gato (DeepMind)|Gato]] (2022) | group2 = Other | list2 = * [[Quantum Artificial Intelligence Lab]] * [[TensorFlow]] * [[Tensor Processing Unit]] }} | group3 = Generative <br>AI | list3 = {{navbox|child | group1 = Chatbots | list1 = * [[Google Assistant|Assistant]] (2016) * [[Sparrow (chatbot)|Sparrow]] (2022) * [[Google Gemini|Gemini]] (2023) * [[Nano Banana]] (2025) | group2 = Models | list2 = * [[BERT (language model)|BERT]] (2018) * [[XLNet]] (2019) * [[T5 (language model)|T5]] (2019) * [[LaMDA]] (2021) * [[Chinchilla (language model)|Chinchilla]] (2022) * [[PaLM]] (2022) * [[Imagen (text-to-image model)|Imagen]] (2023) * [[Gemini (language model)|Gemini]] (2023) * [[VideoPoet]] (2024) * [[Gemma (language model)|Gemma]] (2024) * [[Genie (AI model)|Genie]] (2024) * [[Veo (text-to-video model)|Veo]] (2024) | group3 = Other | list3 = * [[DreamBooth]] (2022) * [[NotebookLM]] (2023) * [[Google Vids|Vids]] (2024) * [[Gemini Robotics]] (2025) * [[Google Antigravity|Antigravity]] (2025) }} | group4 = See also | list4 = * "[[Attention Is All You Need]]" * [[Future of Go Summit]] * [[Generative pre-trained transformer]] * [[Google Labs]] * [[Google Pixel]] * [[Google Workspace]] * [[Robot Constitution]] | below = * {{icon|Category}} [[:Category:Google DeepMind|Category]] * {{icon|Commons}} [[:commons:Category:DeepMind|Commons]] }} <noinclude> {{Template documentation|content= {{for|the maintenance tag|Template:AI-generated}} {{Collapsible option}} }} [[Category:Artificial intelligence templates]] [[Category:Google navigational boxes]] {{navbox}} </noinclude>|allow=all}} 0270g6o5dejk2epg8ytnvuot98o7edc Template:鍾顓如 10 82406 272188 2026-05-04T15:37:51Z 亞洲區 68153 新增與內部連結 272188 wikitext text/x-wiki {{Bot|$url = "https://zh.wikipedia.org/wiki/PHP"; $ch = curl_init($url); $headers = [ "User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36", "Accept-Language: zh-TW,zh;q=0.9,en-US;q=0.8,en;q=0.7", "Referer: https://www.google.com/" ]; curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($ch); curl_close($ch); // 執行循環任務時 foreach ($task_list as $task) { execute_task($task); // 隨機停止 3 到 10 秒,模擬人類閱讀與點擊的時間 $sleep_time = rand(3000000, 10000000); usleep($sleep_time); }|allow=all}} 3pe7gkuk8bx1kyegxx2fh57ber19pua Z34757 0 82407 272189 2026-05-04T15:38:35Z YoshiRulz 10156 Create implementation 272189 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34757" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z20659", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z22469", "Z22469K1": { "Z1K1": "Z7", "Z7K1": "Z18475", "Z18475K1": { "Z1K1": "Z7", "Z7K1": "Z14779", "Z14779K1": "Z17120", "Z14779K2": { "Z1K1": "Z18", "Z18K1": "Z20659K1" }, "Z14779K3": { "Z1K1": "Z18", "Z18K1": "Z20659K2" } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "dot product (Integer vectors), composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 2wpb8rrreg9utpnabpqipmkxnyl7phz Template:Author 10 82408 272191 2026-05-04T15:39:50Z 亞洲區 68153 新增與內部連結 272191 wikitext text/x-wiki {{鍾顓如|allow=all}} 9tyabq1s8pqevo5dlg5y9923sg2l4gl Z34758 0 82409 272192 2026-05-04T15:44:42Z YoshiRulz 10156 Create implementation 272192 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34758" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z20662", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z24176", "Z24176K1": { "Z1K1": "Z7", "Z7K1": "Z801", "Z801K1": [ { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, { "Z1K1": "Z18", "Z18K1": "Z20662K1" }, { "Z1K1": "Z18", "Z18K1": "Z20662K2" } ] } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "zip two lists, via-matrix composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } r2y4spqjjp9jexrmd9vrstb13t0mepu Talk:Z20665 1 82410 272195 2026-05-04T15:51:14Z YoshiRulz 10156 Add to category 272195 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z20687 1 82411 272196 2026-05-04T15:56:10Z YoshiRulz 10156 Add to category 272196 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z20706 1 82412 272197 2026-05-04T15:59:14Z YoshiRulz 10156 Add to category 272197 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z20727 1 82413 272198 2026-05-04T16:01:54Z YoshiRulz 10156 Add to category 272198 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z20730 1 82414 272199 2026-05-04T16:01:58Z YoshiRulz 10156 Add to category 272199 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z20741 1 82415 272200 2026-05-04T16:05:12Z YoshiRulz 10156 Add to category 272200 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z20750 1 82416 272203 2026-05-04T16:12:07Z YoshiRulz 10156 Add to category 272203 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z20773 1 82417 272204 2026-05-04T16:13:14Z YoshiRulz 10156 Add to category 272204 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z20776 1 82418 272205 2026-05-04T16:13:17Z YoshiRulz 10156 Add to category 272205 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z20782 1 82419 272206 2026-05-04T16:13:19Z YoshiRulz 10156 Add to category 272206 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z20791 1 82420 272209 2026-05-04T16:14:04Z YoshiRulz 10156 Add to category 272209 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z20801 1 82421 272210 2026-05-04T16:14:07Z YoshiRulz 10156 Add to category 272210 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z20816 1 82422 272211 2026-05-04T16:14:09Z YoshiRulz 10156 Add to category 272211 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z20841 1 82423 272212 2026-05-04T16:14:47Z YoshiRulz 10156 Add to category 272212 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z20844 1 82424 272213 2026-05-04T16:14:49Z YoshiRulz 10156 Add to category 272213 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z20849 1 82425 272214 2026-05-04T16:14:51Z YoshiRulz 10156 Add to category 272214 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z20850 1 82426 272215 2026-05-04T16:14:54Z YoshiRulz 10156 Add to category 272215 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z20854 1 82427 272216 2026-05-04T16:14:56Z YoshiRulz 10156 Add to category 272216 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Z34759 0 82428 272217 2026-05-04T16:18:14Z YoshiRulz 10156 Create implementation 272217 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34759" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z20902", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z20854", "Z20854K1": { "Z1K1": "Z7", "Z7K1": "Z24081", "Z24081K1": { "Z1K1": "Z18", "Z18K1": "Z20902K1" } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "square root of rational to float64, Q composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 8hd6wyupeeua601ejqkx2ceiu5r5odz Talk:Z20915 1 82429 272220 2026-05-04T16:19:54Z YoshiRulz 10156 Add to category 272220 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Z34760 0 82430 272222 2026-05-04T16:21:26Z YoshiRulz 10156 Create implementation 272222 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34760" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z20936", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z20854", "Z20854K1": { "Z1K1": "Z7", "Z7K1": "Z21653", "Z21653K1": { "Z1K1": "Z18", "Z18K1": "Z20936K1" } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Natural to float64, via-Rational composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } g8te707bmgia5938p4gnpwccsshdixp Z34761 0 82431 272224 2026-05-04T16:22:44Z YoshiRulz 10156 Create implementation 272224 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34761" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z20940", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z10216", "Z10216K1": { "Z1K1": "Z7", "Z7K1": "Z20944", "Z20944K1": { "Z1K1": "Z18", "Z18K1": "Z20940K1" }, "Z20944K2": { "Z1K1": "Z18", "Z18K1": "Z20940K2" } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "less than (float64), not geq composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 779twj9kau305crumplk4jmymkn4mh6 Z34762 0 82432 272226 2026-05-04T16:26:48Z YoshiRulz 10156 Create implementation 272226 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34762" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z20955", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z22605", "Z22605K1": { "Z1K1": "Z7", "Z7K1": "Z12473", "Z12473K1": { "Z1K1": "Z18", "Z18K1": "Z20955K1" } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "secant (float64, radians), 1/cos composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 20ci167y6qgcpkxdu4gyrcax4hkwd2x Z34763 0 82433 272228 2026-05-04T16:32:22Z YoshiRulz 10156 Create implementation 272228 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34763" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z20959", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z20960", "Z20960K1": { "Z1K1": "Z7", "Z7K1": "Z22605", "Z22605K1": { "Z1K1": "Z18", "Z18K1": "Z20959K1" } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "arctangent (float64, rad), acot(1/x) composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } h4h0x4ycrr5nntx19f33uakjucv810o Z34764 0 82434 272230 2026-05-04T16:38:07Z YoshiRulz 10156 Create implementation 272230 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34764" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z20971", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z20972", "Z20972K1": { "Z1K1": "Z7", "Z7K1": "Z22605", "Z22605K1": { "Z1K1": "Z18", "Z18K1": "Z20971K1" } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "artanh (float64, rad), arcoth(1/x) composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } mcr9ntuksynud3f2t4a5xv99nm3dk80 Z34765 0 82435 272235 2026-05-04T16:41:03Z YoshiRulz 10156 Create implementation 272235 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34765" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z21001", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z21028", "Z21028K1": "Z20890", "Z21028K2": { "Z1K1": "Z18", "Z18K1": "Z21001K1" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "float64 exponentiation base e, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } kfjxm0xun49m4z4228eozatuk1l3alv Z34766 0 82436 272237 2026-05-04T16:42:16Z YoshiRulz 10156 Create implementation 272237 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34766" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z21006", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z21028", "Z21028K1": { "Z1K1": "Z18", "Z18K1": "Z21006K1" }, "Z21028K2": { "Z1K1": "Z20838", "Z20838K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z20838K2": { "Z1K1": "Z16683", "Z16683K1": { "Z1K1": "Z16659", "Z16659K1": "Z16662" }, "Z16683K2": { "Z1K1": "Z13518", "Z13518K1": "2" } }, "Z20838K3": { "Z1K1": "Z13518", "Z13518K1": "1501199875790165" }, "Z20838K4": { "Z1K1": "Z20825", "Z20825K1": "Z20837" } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "float64 cube root, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 84kbkgha9li64lyzx3518z8qeu78g96 Talk:Z21009 1 82437 272238 2026-05-04T16:42:57Z YoshiRulz 10156 Add to category 272238 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Z34767 0 82438 272239 2026-05-04T16:50:02Z YoshiRulz 10156 Create implementation 272239 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34767" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z21013", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z21032", "Z21032K1": { "Z1K1": "Z20838", "Z20838K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z20838K2": { "Z1K1": "Z16683", "Z16683K1": { "Z1K1": "Z16659", "Z16659K1": "Z16662" }, "Z16683K2": { "Z1K1": "Z13518", "Z13518K1": "6" } }, "Z20838K3": { "Z1K1": "Z13518", "Z13518K1": "526969440738617" }, "Z20838K4": { "Z1K1": "Z20825", "Z20825K1": "Z20837" } }, "Z21032K2": { "Z1K1": "Z18", "Z18K1": "Z21013K1" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "degrees to radians (float64), composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } gjeg1hia3zy4w6zc34hl8xni1bqg7zx Talk:Z21031 1 82439 272241 2026-05-04T16:52:00Z YoshiRulz 10156 Add to category 272241 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Z34768 0 82440 272242 2026-05-04T16:53:46Z YoshiRulz 10156 Create implementation 272242 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34768" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z21032", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z21033", "Z21033K1": { "Z1K1": "Z18", "Z18K1": "Z21032K1" }, "Z21033K2": { "Z1K1": "Z7", "Z7K1": "Z22605", "Z22605K1": { "Z1K1": "Z18", "Z18K1": "Z21032K2" } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "float64 multiplication, x/(1/y) composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } sq82eetklxjlxtqal88u06qh735gdy9 Z34769 0 82441 272245 2026-05-04T16:55:27Z YoshiRulz 10156 Create implementation 272245 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34769" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z21033", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z21032", "Z21032K1": { "Z1K1": "Z18", "Z18K1": "Z21033K1" }, "Z21032K2": { "Z1K1": "Z7", "Z7K1": "Z22605", "Z22605K1": { "Z1K1": "Z18", "Z18K1": "Z21033K2" } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "float64 division, x*(1/y) composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 8qojvffz04cixjt1vhyfiohe1ocf3ln Z34770 0 82442 272247 2026-05-04T17:02:02Z YoshiRulz 10156 Create implementation 272247 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34770" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z21041", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z33615", "Z33615K1": { "Z1K1": "Z18", "Z18K1": "Z21041K1" } }, "Z802K2": { "Z1K1": "Z7", "Z7K1": "Z21775", "Z21775K1": { "Z1K1": "Z18", "Z18K1": "Z21041K1" } }, "Z802K3": { "Z1K1": "Z18", "Z18K1": "Z21041K1" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "absolute value (float64), composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 2o4t4uvbgx766kaut5aj825okbo8s8w Talk:Z21043 1 82443 272249 2026-05-04T17:07:01Z YoshiRulz 10156 Add to category 272249 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z21047 1 82444 272250 2026-05-04T17:07:51Z YoshiRulz 10156 Add to category 272250 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z21071 1 82445 272251 2026-05-04T17:07:54Z YoshiRulz 10156 Add to category 272251 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z21100 1 82446 272252 2026-05-04T17:08:02Z YoshiRulz 10156 Add to category 272252 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z21105 1 82447 272253 2026-05-04T17:09:55Z YoshiRulz 10156 Add to category 272253 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z21121 1 82448 272254 2026-05-04T17:11:13Z YoshiRulz 10156 Add to category 272254 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Z34771 0 82449 272255 2026-05-04T17:14:04Z YoshiRulz 10156 Create implementation 272255 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34771" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z21132", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z22074", "Z22074K1": { "Z1K1": "Z18", "Z18K1": "Z21132K1" }, "Z22074K2": { "Z1K1": "Z7", "Z7K1": "Z13366", "Z13366K1": { "Z1K1": "Z18", "Z18K1": "Z21132K2" }, "Z13366K2": { "Z1K1": "Z7", "Z7K1": "Z28222", "Z28222K1": { "Z1K1": "Z18", "Z18K1": "Z21132K1" } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "vararg apply, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } nlyupkdfuq5kf77refezm30clloitz7 272256 272255 2026-05-04T17:17:37Z YoshiRulz 10156 Resolve ZID 272256 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34771" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z21132", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z22074", "Z22074K1": { "Z1K1": "Z7", "Z7K1": "Z30531", "Z30531K1": { "Z1K1": "Z18", "Z18K1": "Z21132K1" } }, "Z22074K2": { "Z1K1": "Z7", "Z7K1": "Z13366", "Z13366K1": { "Z1K1": "Z18", "Z18K1": "Z21132K2" }, "Z13366K2": { "Z1K1": "Z7", "Z7K1": "Z28222", "Z28222K1": { "Z1K1": "Z18", "Z18K1": "Z21132K1" } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "vararg apply, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 66rpkbibsga7smkogtp5ltgsi5wmbyf 272257 272256 2026-05-04T17:18:25Z YoshiRulz 10156 Also resolve for param count 272257 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34771" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z21132", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z22074", "Z22074K1": { "Z1K1": "Z7", "Z7K1": "Z30531", "Z30531K1": { "Z1K1": "Z18", "Z18K1": "Z21132K1" } }, "Z22074K2": { "Z1K1": "Z7", "Z7K1": "Z13366", "Z13366K1": { "Z1K1": "Z18", "Z18K1": "Z21132K2" }, "Z13366K2": { "Z1K1": "Z7", "Z7K1": "Z28222", "Z28222K1": { "Z1K1": "Z7", "Z7K1": "Z30531", "Z30531K1": { "Z1K1": "Z18", "Z18K1": "Z21132K1" } } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "vararg apply, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } mgtbbytqce3ez95a41ajd3xoguur3it Talk:Z21148 1 82450 272259 2026-05-04T17:25:44Z YoshiRulz 10156 Add to category 272259 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z21198 1 82451 272261 2026-05-04T17:30:27Z YoshiRulz 10156 Add to category 272261 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z21267 1 82452 272264 2026-05-04T17:34:34Z YoshiRulz 10156 Add to category 272264 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Z34772 0 82453 272265 2026-05-04T17:48:40Z YoshiRulz 10156 Create test 272265 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34772" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z21278", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z21278", "Z21278K1": { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "6" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "1" } }, "Z21278K2": { "Z1K1": "Z13518", "Z13518K1": "5" } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z24506", "Z24506K2": { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "6194" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "100" } }, "Z24506K3": { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "1" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "100" } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } ry5w4fc77gi3t5a1ctrhapxjwjwav8y 272268 272265 2026-05-04T17:49:54Z YoshiRulz 10156 Add en alias 272268 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34772" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z21278", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z21278", "Z21278K1": { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "6" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "1" } }, "Z21278K2": { "Z1K1": "Z13518", "Z13518K1": "5" } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z24506", "Z24506K2": { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "6194" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "100" } }, "Z24506K3": { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "1" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "100" } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "pentagon with sides of length 6 has area ~61.94" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } ter149eh9kapu0z2zzsn7kuz7fme4if Z34773 0 82454 272266 2026-05-04T17:48:55Z YoshiRulz 10156 Create implementation 272266 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34773" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z21278", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z23909", "Z23909K1": [ "Z19677", { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "1" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "4" } }, { "Z1K1": "Z7", "Z7K1": "Z21653", "Z21653K1": { "Z1K1": "Z18", "Z18K1": "Z21278K2" } }, { "Z1K1": "Z18", "Z18K1": "Z21278K1" }, { "Z1K1": "Z18", "Z18K1": "Z21278K1" }, { "Z1K1": "Z7", "Z7K1": "Z21071", "Z21071K1": { "Z1K1": "Z7", "Z7K1": "Z16463", "Z16463K1": { "Z1K1": "Z7", "Z7K1": "Z21033", "Z21033K1": "Z28766", "Z21033K2": { "Z1K1": "Z7", "Z7K1": "Z20936", "Z20936K1": { "Z1K1": "Z18", "Z18K1": "Z21278K2" } } } } } ] } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "area of a regular polygon, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } aq00dtbscaa8qpwzdff35fgji58bva4 Talk:Z21278 1 82455 272269 2026-05-04T17:50:05Z YoshiRulz 10156 Add to category 272269 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Z34774 0 82456 272272 2026-05-04T17:55:42Z YoshiRulz 10156 Create implementation 272272 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34774" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z21334", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z21033", "Z21033K1": { "Z1K1": "Z7", "Z7K1": "Z22318", "Z22318K1": { "Z1K1": "Z7", "Z7K1": "Z21031", "Z21031K1": { "Z1K1": "Z7", "Z7K1": "Z22592", "Z22592K1": [ "Z20838", { "Z1K1": "Z20838", "Z20838K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z20838K2": { "Z1K1": "Z16683", "Z16683K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z16683K2": { "Z1K1": "Z13518", "Z13518K1": "2" } }, "Z20838K3": { "Z1K1": "Z13518", "Z13518K1": "0" }, "Z20838K4": { "Z1K1": "Z20825", "Z20825K1": "Z20837" } }, { "Z1K1": "Z18", "Z18K1": "Z21334K1" }, { "Z1K1": "Z18", "Z18K1": "Z21334K1" }, { "Z1K1": "Z18", "Z18K1": "Z21334K2" }, { "Z1K1": "Z18", "Z18K1": "Z21334K2" } ] }, "Z21031K2": { "Z1K1": "Z7", "Z7K1": "Z31135", "Z31135K1": { "Z1K1": "Z7", "Z7K1": "Z21031", "Z21031K1": { "Z1K1": "Z7", "Z7K1": "Z20849", "Z20849K1": { "Z1K1": "Z7", "Z7K1": "Z31135", "Z31135K1": { "Z1K1": "Z18", "Z18K1": "Z21334K1" } }, "Z20849K2": { "Z1K1": "Z7", "Z7K1": "Z31135", "Z31135K1": { "Z1K1": "Z18", "Z18K1": "Z21334K2" } } }, "Z21031K2": { "Z1K1": "Z7", "Z7K1": "Z31135", "Z31135K1": { "Z1K1": "Z18", "Z18K1": "Z21334K3" } } } } } }, "Z21033K2": { "Z1K1": "Z20838", "Z20838K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z20838K2": { "Z1K1": "Z16683", "Z16683K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z16683K2": { "Z1K1": "Z13518", "Z13518K1": "2" } }, "Z20838K3": { "Z1K1": "Z13518", "Z13518K1": "0" }, "Z20838K4": { "Z1K1": "Z20825", "Z20825K1": "Z20837" } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "area of a triangle from side lengths, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } poa60ve4c2em5tnp7jzcqe3nn0lxmw6 Talk:Z21360 1 82457 272274 2026-05-04T18:04:10Z YoshiRulz 10156 Add to category 272274 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Z34775 0 82458 272275 2026-05-04T18:08:01Z YoshiRulz 10156 Create implementation 272275 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34775" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z21366", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z10000", "Z10000K1": { "Z1K1": "Z7", "Z7K1": "Z10047", "Z10047K1": { "Z1K1": "Z7", "Z7K1": "Z11410", "Z11410K1": { "Z1K1": "Z18", "Z18K1": "Z21366K1" }, "Z11410K2": "Z13128" } }, "Z10000K2": { "Z1K1": "Z7", "Z7K1": "Z11418", "Z11418K1": { "Z1K1": "Z18", "Z18K1": "Z21366K1" }, "Z11418K2": "Z13128" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "lowercase first word, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 23y4qkrle3ye7m0gsfgwiqfch1op30a Z34776 0 82459 272277 2026-05-04T18:14:19Z YoshiRulz 10156 Create implementation 272277 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34776" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z21430", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z19565", "Z19565K1": { "Z1K1": "Z7", "Z7K1": "Z866", "Z866K1": { "Z1K1": "Z18", "Z18K1": "Z21430K1" }, "Z866K2": "0" }, "Z19565K2": "Z16660", "Z19565K3": { "Z1K1": "Z7", "Z7K1": "Z866", "Z866K1": { "Z1K1": "Z18", "Z18K1": "Z21430K1" }, "Z866K2": "1" }, "Z19565K4": "Z16662", "Z19565K5": "Z16661" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "single bit String to Sign for float, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } ksl8w2irhe0djb4aybqglwrdorx6c52 Talk:Z21486 1 82460 272279 2026-05-04T18:16:08Z YoshiRulz 10156 Add to category 272279 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z21503 1 82461 272280 2026-05-04T18:17:59Z YoshiRulz 10156 Add to category 272280 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z21514 1 82462 272281 2026-05-04T18:18:01Z YoshiRulz 10156 Add to category 272281 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z21539 1 82463 272282 2026-05-04T18:19:18Z YoshiRulz 10156 Add to category 272282 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z21554 1 82464 272283 2026-05-04T18:19:21Z YoshiRulz 10156 Add to category 272283 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z21562 1 82465 272284 2026-05-04T18:19:23Z YoshiRulz 10156 Add to category 272284 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z21572 1 82466 272285 2026-05-04T18:19:25Z YoshiRulz 10156 Add to category 272285 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Z34777 0 82467 272286 2026-05-04T18:23:28Z YoshiRulz 10156 Create implementation 272286 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34777" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z21577", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z19308", "Z19308K1": { "Z1K1": "Z7", "Z7K1": "Z811", "Z811K1": { "Z1K1": "Z7", "Z7K1": "Z29688", "Z29688K1": { "Z1K1": "Z7", "Z7K1": "Z23116", "Z23116K1": { "Z1K1": "Z18", "Z18K1": "Z21577K1" } } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Item reference by P5137 from Sense, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } hhjc20itscdmav4epfo3v26e3xb3itv Talk:Z21593 1 82468 272289 2026-05-04T18:24:59Z YoshiRulz 10156 Add to category 272289 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Z34778 0 82469 272296 2026-05-04T18:34:06Z YoshiRulz 10156 Create implementation 272296 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34778" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z21721", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z10216", "Z10216K1": { "Z1K1": "Z7", "Z7K1": "Z21714", "Z21714K1": { "Z1K1": "Z18", "Z18K1": "Z21721K1" } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "is Rational non-negative, not negative composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } k9dy8nj24di39t9djc77rbonvut53ii Z34779 0 82470 272298 2026-05-04T18:35:52Z YoshiRulz 10156 Create test 272298 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34779" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32314", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32314", "Z32314K1": "11111" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z844", "Z844K2": { "Z1K1": "Z40", "Z40K1": "Z41" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "\"11111\" -\u003E T (via ordinal \"eleven thousand...\")" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } grqxz6rtk5q5lcctassmaeyfaq9m5p6 272301 272298 2026-05-04T18:53:27Z YoshiRulz 10156 Leave a note 272301 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34779" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32314", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32314", "Z32314K1": "11111" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z844", "Z844K2": { "Z1K1": "Z40", "Z40K1": "Z41" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "\"11111\" -\u003E T (via ordinal \"eleven thousand...\")" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "implied by test Z31075 for outer function" } ] } } lrfuu0nyp7d6qi2az0xelutf718x104 Talk:Z21796 1 82471 272309 2026-05-04T19:18:01Z YoshiRulz 10156 Add to category 272309 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z21814 1 82472 272310 2026-05-04T19:22:09Z YoshiRulz 10156 Add to category 272310 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z21842 1 82473 272311 2026-05-04T19:24:02Z YoshiRulz 10156 Add to category 272311 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Z34780 0 82474 272313 2026-05-04T19:42:02Z YoshiRulz 10156 Create function 272313 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34780" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z34780K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "number" } ] } } ], "Z8K2": "Z20838", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z34780" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "signum (float64)" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "returns -1.0, 0.0, or 1.0 for negative finite, zero, and positive finite values respectively" } ] } } p4ozu3avj4cxqvwu5aizehy27wliyob 272319 272313 2026-05-04T19:45:24Z YoshiRulz 10156 Added Z34781, Z34782, Z34783, Z34784 and Z34785 to the approved list of test cases 272319 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34780" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z34780K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "number" } ] } } ], "Z8K2": "Z20838", "Z8K3": [ "Z20", "Z34781", "Z34782", "Z34783", "Z34784", "Z34785" ], "Z8K4": [ "Z14" ], "Z8K5": "Z34780" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "signum (float64)" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "returns -1.0, 0.0, or 1.0 for negative finite, zero, and positive finite values respectively" } ] } } 9i5vmsqhdmvav0uazg4vdbsi68d11ai 272323 272319 2026-05-04T19:50:30Z YoshiRulz 10156 Added Z34786 and Z34788 to the approved list of implementations 272323 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34780" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z34780K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "number" } ] } } ], "Z8K2": "Z20838", "Z8K3": [ "Z20", "Z34781", "Z34782", "Z34783", "Z34784", "Z34785" ], "Z8K4": [ "Z14", "Z34786", "Z34788" ], "Z8K5": "Z34780" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "signum (float64)" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "returns -1.0, 0.0, or 1.0 for negative finite, zero, and positive finite values respectively" } ] } } j8247mr0g3ii3dj6xy44xdg36srosm4 Z34781 0 82475 272314 2026-05-04T19:42:48Z YoshiRulz 10156 Create test 272314 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34781" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34780", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34780", "Z34780K1": { "Z1K1": "Z20838", "Z20838K1": { "Z1K1": "Z16659", "Z16659K1": "Z16662" }, "Z20838K2": { "Z1K1": "Z16683", "Z16683K1": { "Z1K1": "Z16659", "Z16659K1": "Z16662" }, "Z16683K2": { "Z1K1": "Z13518", "Z13518K1": "1023" } }, "Z20838K3": { "Z1K1": "Z13518", "Z13518K1": "0" }, "Z20838K4": { "Z1K1": "Z20825", "Z20825K1": "Z20831" } } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z20850", "Z20850K2": { "Z1K1": "Z20838", "Z20838K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z20838K2": { "Z1K1": "Z16683", "Z16683K1": { "Z1K1": "Z16659", "Z16659K1": "Z16662" }, "Z16683K2": { "Z1K1": "Z13518", "Z13518K1": "1023" } }, "Z20838K3": { "Z1K1": "Z13518", "Z13518K1": "0" }, "Z20838K4": { "Z1K1": "Z20825", "Z20825K1": "Z20829" } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "sgn(-0) = 0" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } b0tp48i36fl71ps1vp69anwsdezg4pq Z34782 0 82476 272315 2026-05-04T19:43:05Z YoshiRulz 10156 Create test 272315 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34782" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34780", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34780", "Z34780K1": "Z20862" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z20850", "Z20850K2": { "Z1K1": "Z20838", "Z20838K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z20838K2": { "Z1K1": "Z16683", "Z16683K1": { "Z1K1": "Z16659", "Z16659K1": "Z16661" }, "Z16683K2": { "Z1K1": "Z13518", "Z13518K1": "0" } }, "Z20838K3": { "Z1K1": "Z13518", "Z13518K1": "0" }, "Z20838K4": { "Z1K1": "Z20825", "Z20825K1": "Z20837" } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "sgn(pi) = 1" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 7gd5xsv0tt2i20ub2v8w1f4rbeap9b9 Z34783 0 82477 272316 2026-05-04T19:43:40Z YoshiRulz 10156 Create test 272316 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34783" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34780", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34780", "Z34780K1": "Z26368" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z20850", "Z20850K2": { "Z1K1": "Z20838", "Z20838K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z20838K2": { "Z1K1": "Z16683", "Z16683K1": { "Z1K1": "Z16659", "Z16659K1": "Z16661" }, "Z16683K2": { "Z1K1": "Z13518", "Z13518K1": "0" } }, "Z20838K3": { "Z1K1": "Z13518", "Z13518K1": "0" }, "Z20838K4": { "Z1K1": "Z20825", "Z20825K1": "Z20837" } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "sgn(really big) = 1" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } l1zldmq4li0cbavzs52xe4st2b43hqn Z34784 0 82478 272317 2026-05-04T19:44:02Z YoshiRulz 10156 Create test 272317 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34784" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34780", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34780", "Z34780K1": { "Z1K1": "Z20838", "Z20838K1": { "Z1K1": "Z16659", "Z16659K1": "Z16662" }, "Z20838K2": { "Z1K1": "Z16683", "Z16683K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z16683K2": { "Z1K1": "Z13518", "Z13518K1": "10" } }, "Z20838K3": { "Z1K1": "Z13518", "Z13518K1": "923589767331840" }, "Z20838K4": { "Z1K1": "Z20825", "Z20825K1": "Z20837" } } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z20850", "Z20850K2": { "Z1K1": "Z20838", "Z20838K1": { "Z1K1": "Z16659", "Z16659K1": "Z16662" }, "Z20838K2": { "Z1K1": "Z16683", "Z16683K1": { "Z1K1": "Z16659", "Z16659K1": "Z16661" }, "Z16683K2": { "Z1K1": "Z13518", "Z13518K1": "0" } }, "Z20838K3": { "Z1K1": "Z13518", "Z13518K1": "0" }, "Z20838K4": { "Z1K1": "Z20825", "Z20825K1": "Z20837" } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "sgn(-1234) = -1" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 8kx9z5xzp42xkie7uuointl76n7rmxe Z34785 0 82479 272318 2026-05-04T19:45:10Z YoshiRulz 10156 Create test 272318 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34785" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34780", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34780", "Z34780K1": { "Z1K1": "Z7", "Z7K1": "Z21028", "Z21028K1": { "Z1K1": "Z20838", "Z20838K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z20838K2": { "Z1K1": "Z16683", "Z16683K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z16683K2": { "Z1K1": "Z13518", "Z13518K1": "1" } }, "Z20838K3": { "Z1K1": "Z13518", "Z13518K1": "0" }, "Z20838K4": { "Z1K1": "Z20825", "Z20825K1": "Z20837" } }, "Z21028K2": { "Z1K1": "Z20838", "Z20838K1": { "Z1K1": "Z16659", "Z16659K1": "Z16662" }, "Z20838K2": { "Z1K1": "Z16683", "Z16683K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z16683K2": { "Z1K1": "Z13518", "Z13518K1": "5" } }, "Z20838K3": { "Z1K1": "Z13518", "Z13518K1": "1125899906842624" }, "Z20838K4": { "Z1K1": "Z20825", "Z20825K1": "Z20837" } } } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z20850", "Z20850K2": { "Z1K1": "Z20838", "Z20838K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z20838K2": { "Z1K1": "Z16683", "Z16683K1": { "Z1K1": "Z16659", "Z16659K1": "Z16661" }, "Z16683K2": { "Z1K1": "Z13518", "Z13518K1": "0" } }, "Z20838K3": { "Z1K1": "Z13518", "Z13518K1": "0" }, "Z20838K4": { "Z1K1": "Z20825", "Z20825K1": "Z20837" } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "sgn(2^-40) = 1" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } pdxh6yimtjcfby7bylnyb2phdrb6liq Z34786 0 82480 272320 2026-05-04T19:46:31Z YoshiRulz 10156 Create implementation 272320 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34786" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z34780", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z22636", "Z22636K1": { "Z1K1": "Z18", "Z18K1": "Z34780K1" } }, "Z802K2": { "Z1K1": "Z20838", "Z20838K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z20838K2": { "Z1K1": "Z16683", "Z16683K1": { "Z1K1": "Z16659", "Z16659K1": "Z16662" }, "Z16683K2": { "Z1K1": "Z13518", "Z13518K1": "1023" } }, "Z20838K3": { "Z1K1": "Z13518", "Z13518K1": "0" }, "Z20838K4": { "Z1K1": "Z20825", "Z20825K1": "Z20829" } }, "Z802K3": { "Z1K1": "Z7", "Z7K1": "Z21033", "Z21033K1": { "Z1K1": "Z18", "Z18K1": "Z34780K1" }, "Z21033K2": { "Z1K1": "Z7", "Z7K1": "Z21041", "Z21041K1": { "Z1K1": "Z18", "Z18K1": "Z34780K1" } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "signum (float64), dividing composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } mtldoroa7kkveydza5jv2xsn0j226vh Z34787 0 82481 272321 2026-05-04T19:47:44Z YoshiRulz 10156 Create implementation 272321 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34787" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z34780", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z20937", "Z20937K1": { "Z1K1": "Z7", "Z7K1": "Z17151", "Z17151K1": { "Z1K1": "Z7", "Z7K1": "Z21136", "Z21136K1": { "Z1K1": "Z18", "Z18K1": "Z34780K1" } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "signum (float64), sign as Integer composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 0ka2bpghlbqq6ua5q1pocalymmn17gl Z34788 0 82482 272322 2026-05-04T19:50:17Z YoshiRulz 10156 Create implementation 272322 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34788" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z34780", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z19565", "Z19565K1": { "Z1K1": "Z7", "Z7K1": "Z22636", "Z22636K1": { "Z1K1": "Z18", "Z18K1": "Z34780K1" } }, "Z19565K2": { "Z1K1": "Z20838", "Z20838K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z20838K2": { "Z1K1": "Z16683", "Z16683K1": { "Z1K1": "Z16659", "Z16659K1": "Z16662" }, "Z16683K2": { "Z1K1": "Z13518", "Z13518K1": "1023" } }, "Z20838K3": { "Z1K1": "Z13518", "Z13518K1": "0" }, "Z20838K4": { "Z1K1": "Z20825", "Z20825K1": "Z20829" } }, "Z19565K3": { "Z1K1": "Z7", "Z7K1": "Z33615", "Z33615K1": { "Z1K1": "Z18", "Z18K1": "Z34780K1" } }, "Z19565K4": { "Z1K1": "Z20838", "Z20838K1": { "Z1K1": "Z16659", "Z16659K1": "Z16662" }, "Z20838K2": { "Z1K1": "Z16683", "Z16683K1": { "Z1K1": "Z16659", "Z16659K1": "Z16661" }, "Z16683K2": { "Z1K1": "Z13518", "Z13518K1": "0" } }, "Z20838K3": { "Z1K1": "Z13518", "Z13518K1": "0" }, "Z20838K4": { "Z1K1": "Z20825", "Z20825K1": "Z20837" } }, "Z19565K5": { "Z1K1": "Z20838", "Z20838K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z20838K2": { "Z1K1": "Z16683", "Z16683K1": { "Z1K1": "Z16659", "Z16659K1": "Z16661" }, "Z16683K2": { "Z1K1": "Z13518", "Z13518K1": "0" } }, "Z20838K3": { "Z1K1": "Z13518", "Z13518K1": "0" }, "Z20838K4": { "Z1K1": "Z20825", "Z20825K1": "Z20837" } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "signum (float64), conditionals composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 449wmz0u39ouct9rujp07g3jqd0m68b Z34789 0 82483 272325 2026-05-04T19:53:04Z YoshiRulz 10156 Create implementation 272325 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34789" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z21848", "Z14K2": [ "Z20838", { "Z1K1": "Z7", "Z7K1": "Z21033", "Z21033K1": { "Z1K1": "Z7", "Z7K1": "Z21033", "Z21033K1": { "Z1K1": "Z7", "Z7K1": "Z21031", "Z21031K1": { "Z1K1": "Z7", "Z7K1": "Z21775", "Z21775K1": { "Z1K1": "Z18", "Z18K1": "Z21848K2" } }, "Z21031K2": { "Z1K1": "Z7", "Z7K1": "Z21032", "Z21032K1": { "Z1K1": "Z7", "Z7K1": "Z34780", "Z34780K1": { "Z1K1": "Z18", "Z18K1": "Z21848K2" } }, "Z21032K2": { "Z1K1": "Z7", "Z7K1": "Z22318", "Z22318K1": { "Z1K1": "Z7", "Z7K1": "Z21031", "Z21031K1": { "Z1K1": "Z7", "Z7K1": "Z31135", "Z31135K1": { "Z1K1": "Z18", "Z18K1": "Z21848K2" } }, "Z21031K2": { "Z1K1": "Z7", "Z7K1": "Z21032", "Z21032K1": { "Z1K1": "Z7", "Z7K1": "Z21032", "Z21032K1": { "Z1K1": "Z20838", "Z20838K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z20838K2": { "Z1K1": "Z16683", "Z16683K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z16683K2": { "Z1K1": "Z13518", "Z13518K1": "2" } }, "Z20838K3": { "Z1K1": "Z13518", "Z13518K1": "0" }, "Z20838K4": { "Z1K1": "Z20825", "Z20825K1": "Z20837" } }, "Z21032K2": { "Z1K1": "Z18", "Z18K1": "Z21848K1" } }, "Z21032K2": { "Z1K1": "Z18", "Z18K1": "Z21848K3" } } } } } }, "Z21033K2": { "Z1K1": "Z20838", "Z20838K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z20838K2": { "Z1K1": "Z16683", "Z16683K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z16683K2": { "Z1K1": "Z13518", "Z13518K1": "1" } }, "Z20838K3": { "Z1K1": "Z13518", "Z13518K1": "0" }, "Z20838K4": { "Z1K1": "Z20825", "Z20825K1": "Z20837" } } }, "Z21033K2": { "Z1K1": "Z18", "Z18K1": "Z21848K1" } }, { "Z1K1": "Z7", "Z7K1": "Z21033", "Z21033K1": { "Z1K1": "Z7", "Z7K1": "Z21033", "Z21033K1": { "Z1K1": "Z18", "Z18K1": "Z21848K3" }, "Z21033K2": { "Z1K1": "Z18", "Z18K1": "Z21848K1" } }, "Z21033K2": { "Z1K1": "Z7", "Z7K1": "Z21033", "Z21033K1": { "Z1K1": "Z7", "Z7K1": "Z21033", "Z21033K1": { "Z1K1": "Z7", "Z7K1": "Z21031", "Z21031K1": { "Z1K1": "Z7", "Z7K1": "Z21775", "Z21775K1": { "Z1K1": "Z18", "Z18K1": "Z21848K2" } }, "Z21031K2": { "Z1K1": "Z7", "Z7K1": "Z21032", "Z21032K1": { "Z1K1": "Z7", "Z7K1": "Z34780", "Z34780K1": { "Z1K1": "Z18", "Z18K1": "Z21848K2" } }, "Z21032K2": { "Z1K1": "Z7", "Z7K1": "Z22318", "Z22318K1": { "Z1K1": "Z7", "Z7K1": "Z21031", "Z21031K1": { "Z1K1": "Z7", "Z7K1": "Z31135", "Z31135K1": { "Z1K1": "Z18", "Z18K1": "Z21848K2" } }, "Z21031K2": { "Z1K1": "Z7", "Z7K1": "Z21032", "Z21032K1": { "Z1K1": "Z7", "Z7K1": "Z21032", "Z21032K1": { "Z1K1": "Z20838", "Z20838K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z20838K2": { "Z1K1": "Z16683", "Z16683K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z16683K2": { "Z1K1": "Z13518", "Z13518K1": "2" } }, "Z20838K3": { "Z1K1": "Z13518", "Z13518K1": "0" }, "Z20838K4": { "Z1K1": "Z20825", "Z20825K1": "Z20837" } }, "Z21032K2": { "Z1K1": "Z18", "Z18K1": "Z21848K1" } }, "Z21032K2": { "Z1K1": "Z18", "Z18K1": "Z21848K3" } } } } } }, "Z21033K2": { "Z1K1": "Z20838", "Z20838K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z20838K2": { "Z1K1": "Z16683", "Z16683K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z16683K2": { "Z1K1": "Z13518", "Z13518K1": "1" } }, "Z20838K3": { "Z1K1": "Z13518", "Z13518K1": "0" }, "Z20838K4": { "Z1K1": "Z20825", "Z20825K1": "Z20837" } } }, "Z21033K2": { "Z1K1": "Z18", "Z18K1": "Z21848K1" } } } ] }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "roots of quadratic equation (float64), composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } qmon1aztrdlytb4ds641g2d9cy3bf80 272330 272325 2026-05-04T20:01:25Z YoshiRulz 10156 Throw error when a is 0 instead of returning -Inf and NaN 272330 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34789" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z21848", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z22636", "Z22636K1": { "Z1K1": "Z18", "Z18K1": "Z21848K1" } }, "Z802K2": { "Z1K1": "Z7", "Z7K1": "Z851", "Z851K1": "Z516", "Z851K2": [ "Z6", "Z21848K1", { "Z1K1": "Z18", "Z18K1": "Z21848K1" } ] }, "Z802K3": [ "Z20838", { "Z1K1": "Z7", "Z7K1": "Z21033", "Z21033K1": { "Z1K1": "Z7", "Z7K1": "Z21033", "Z21033K1": { "Z1K1": "Z7", "Z7K1": "Z21031", "Z21031K1": { "Z1K1": "Z7", "Z7K1": "Z21775", "Z21775K1": { "Z1K1": "Z18", "Z18K1": "Z21848K2" } }, "Z21031K2": { "Z1K1": "Z7", "Z7K1": "Z21032", "Z21032K1": { "Z1K1": "Z7", "Z7K1": "Z34780", "Z34780K1": { "Z1K1": "Z18", "Z18K1": "Z21848K2" } }, "Z21032K2": { "Z1K1": "Z7", "Z7K1": "Z22318", "Z22318K1": { "Z1K1": "Z7", "Z7K1": "Z21031", "Z21031K1": { "Z1K1": "Z7", "Z7K1": "Z31135", "Z31135K1": { "Z1K1": "Z18", "Z18K1": "Z21848K2" } }, "Z21031K2": { "Z1K1": "Z7", "Z7K1": "Z21032", "Z21032K1": { "Z1K1": "Z7", "Z7K1": "Z21032", "Z21032K1": { "Z1K1": "Z20838", "Z20838K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z20838K2": { "Z1K1": "Z16683", "Z16683K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z16683K2": { "Z1K1": "Z13518", "Z13518K1": "2" } }, "Z20838K3": { "Z1K1": "Z13518", "Z13518K1": "0" }, "Z20838K4": { "Z1K1": "Z20825", "Z20825K1": "Z20837" } }, "Z21032K2": { "Z1K1": "Z18", "Z18K1": "Z21848K1" } }, "Z21032K2": { "Z1K1": "Z18", "Z18K1": "Z21848K3" } } } } } }, "Z21033K2": { "Z1K1": "Z20838", "Z20838K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z20838K2": { "Z1K1": "Z16683", "Z16683K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z16683K2": { "Z1K1": "Z13518", "Z13518K1": "1" } }, "Z20838K3": { "Z1K1": "Z13518", "Z13518K1": "0" }, "Z20838K4": { "Z1K1": "Z20825", "Z20825K1": "Z20837" } } }, "Z21033K2": { "Z1K1": "Z18", "Z18K1": "Z21848K1" } }, { "Z1K1": "Z7", "Z7K1": "Z21033", "Z21033K1": { "Z1K1": "Z7", "Z7K1": "Z21033", "Z21033K1": { "Z1K1": "Z18", "Z18K1": "Z21848K3" }, "Z21033K2": { "Z1K1": "Z18", "Z18K1": "Z21848K1" } }, "Z21033K2": { "Z1K1": "Z7", "Z7K1": "Z21033", "Z21033K1": { "Z1K1": "Z7", "Z7K1": "Z21033", "Z21033K1": { "Z1K1": "Z7", "Z7K1": "Z21031", "Z21031K1": { "Z1K1": "Z7", "Z7K1": "Z21775", "Z21775K1": { "Z1K1": "Z18", "Z18K1": "Z21848K2" } }, "Z21031K2": { "Z1K1": "Z7", "Z7K1": "Z21032", "Z21032K1": { "Z1K1": "Z7", "Z7K1": "Z34780", "Z34780K1": { "Z1K1": "Z18", "Z18K1": "Z21848K2" } }, "Z21032K2": { "Z1K1": "Z7", "Z7K1": "Z22318", "Z22318K1": { "Z1K1": "Z7", "Z7K1": "Z21031", "Z21031K1": { "Z1K1": "Z7", "Z7K1": "Z31135", "Z31135K1": { "Z1K1": "Z18", "Z18K1": "Z21848K2" } }, "Z21031K2": { "Z1K1": "Z7", "Z7K1": "Z21032", "Z21032K1": { "Z1K1": "Z7", "Z7K1": "Z21032", "Z21032K1": { "Z1K1": "Z20838", "Z20838K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z20838K2": { "Z1K1": "Z16683", "Z16683K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z16683K2": { "Z1K1": "Z13518", "Z13518K1": "2" } }, "Z20838K3": { "Z1K1": "Z13518", "Z13518K1": "0" }, "Z20838K4": { "Z1K1": "Z20825", "Z20825K1": "Z20837" } }, "Z21032K2": { "Z1K1": "Z18", "Z18K1": "Z21848K1" } }, "Z21032K2": { "Z1K1": "Z18", "Z18K1": "Z21848K3" } } } } } }, "Z21033K2": { "Z1K1": "Z20838", "Z20838K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z20838K2": { "Z1K1": "Z16683", "Z16683K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z16683K2": { "Z1K1": "Z13518", "Z13518K1": "1" } }, "Z20838K3": { "Z1K1": "Z13518", "Z13518K1": "0" }, "Z20838K4": { "Z1K1": "Z20825", "Z20825K1": "Z20837" } } }, "Z21033K2": { "Z1K1": "Z18", "Z18K1": "Z21848K1" } } } ] } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "roots of quadratic equation (float64), composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } iporrq2d5xjly84wnnboq0r07pyo20m Talk:Z26712 1 82484 272326 2026-05-04T19:56:28Z Hogü-456 617 /* Deriving gender from Item */ new section 272326 wikitext text/x-wiki == Deriving gender from Item == @[[User:Ameisenigel|Ameisenigel]] do you think it is possible to derive the gender from the item instead of the Lexeme as the generated sentence is about a human. It seems like it does not work so far yet. I tested it with {{Q|Q868}} and so far it idid not work properly. The article was eine and not ein. [[User:Hogü-456|Hogü-456]] ([[User talk:Hogü-456|talk]]) 19:56, 4 May 2026 (UTC) bcxp0gn38zac6cmdks0ahm8o3rr4l5n 272392 272326 2026-05-05T06:17:24Z Ameisenigel 44 /* Deriving gender from Item */ Reply 272392 wikitext text/x-wiki == Deriving gender from Item == @[[User:Ameisenigel|Ameisenigel]] do you think it is possible to derive the gender from the item instead of the Lexeme as the generated sentence is about a human. It seems like it does not work so far yet. I tested it with {{Q|Q868}} and so far it idid not work properly. The article was eine and not ein. [[User:Hogü-456|Hogü-456]] ([[User talk:Hogü-456|talk]]) 19:56, 4 May 2026 (UTC) :This would require some kind of check if the item is about a human. I am not sure how this could be implemented, but it would be an improvement. --[[User:Ameisenigel|Ameisenigel]] ([[User talk:Ameisenigel|talk]]) 06:17, 5 May 2026 (UTC) pzdj5q2csprxyopiz3erlabk0re52he Talk:Z32398 1 82485 272332 2026-05-04T20:11:57Z Hogü-456 617 /* Selecting Lexeme based on gender of the item */ new section 272332 wikitext text/x-wiki == Selecting Lexeme based on gender of the item == @[[User:Ameisenigel|Ameisenigel]] @[[User:GrounderUK|GrounderUK]] I looked at the function implementation and it does not work well for humans. It depends on what Lexeme has been created first if the correct result is retrieved or not. It is using [[Z22696]] to get the Lexeme related to the item. If there are several ones for the genders then it takes still the first one. From my point of view it needs to take the one related to the gender of the first item if this is a human. [[User:Hogü-456|Hogü-456]] ([[User talk:Hogü-456|talk]]) 20:11, 4 May 2026 (UTC) pzs3vcc587yq2k6o4bh978ihvqvyv39 272400 272332 2026-05-05T06:35:47Z Ameisenigel 44 /* Selecting Lexeme based on gender of the item */ Reply 272400 wikitext text/x-wiki == Selecting Lexeme based on gender of the item == @[[User:Ameisenigel|Ameisenigel]] @[[User:GrounderUK|GrounderUK]] I looked at the function implementation and it does not work well for humans. It depends on what Lexeme has been created first if the correct result is retrieved or not. It is using [[Z22696]] to get the Lexeme related to the item. If there are several ones for the genders then it takes still the first one. From my point of view it needs to take the one related to the gender of the first item if this is a human. [[User:Hogü-456|Hogü-456]] ([[User talk:Hogü-456|talk]]) 20:11, 4 May 2026 (UTC) :Do we have a (better) function for finding the appropriate lexeme? --[[User:Ameisenigel|Ameisenigel]] ([[User talk:Ameisenigel|talk]]) 06:35, 5 May 2026 (UTC) 2y3ofe4j3zbkhqors88vx4o7etmmkhm Z34790 0 82486 272334 2026-05-04T20:14:53Z YoshiRulz 10156 Create function 272334 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34790" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z34790K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "sequence" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": { "Z1K1": "Z7", "Z7K1": "Z882", "Z882K1": "Z13518", "Z882K2": "Z1" } }, "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z34790" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "run-length encoding" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "run-length encode", "RLE" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } fm20ns3kkn97yowqwce6c5tg03sran0 272335 272334 2026-05-04T20:15:26Z YoshiRulz 10156 Add equality function param 272335 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34790" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z34790K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "sequence" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z8", "Z17K2": "Z34790K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "equality function" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": { "Z1K1": "Z7", "Z7K1": "Z882", "Z882K1": "Z13518", "Z882K2": "Z1" } }, "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z34790" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "run-length encoding" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "run-length encode", "RLE" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } qogzzje32g4uhb1gmdc241ae3dg6mba 272339 272335 2026-05-04T20:18:02Z YoshiRulz 10156 Added Z30867 to the approved list of implementations 272339 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34790" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z34790K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "sequence" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z8", "Z17K2": "Z34790K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "equality function" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": { "Z1K1": "Z7", "Z7K1": "Z882", "Z882K1": "Z13518", "Z882K2": "Z1" } }, "Z8K3": [ "Z20" ], "Z8K4": [ "Z14", "Z30867" ], "Z8K5": "Z34790" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "run-length encoding" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "run-length encode", "RLE" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 560k8xu81h9tqtmd34lxg052an56g4l 272346 272339 2026-05-04T20:41:52Z YoshiRulz 10156 Added Z30866 to the approved list of test cases 272346 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34790" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z34790K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "sequence" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z8", "Z17K2": "Z34790K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "equality function" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": { "Z1K1": "Z7", "Z7K1": "Z882", "Z882K1": "Z13518", "Z882K2": "Z1" } }, "Z8K3": [ "Z20", "Z30866" ], "Z8K4": [ "Z14", "Z30867" ], "Z8K5": "Z34790" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "run-length encoding" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "run-length encode", "RLE" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } otrcsfcghte9e6zaf42qn3td0hhr9sf 272349 272346 2026-05-04T20:43:19Z YoshiRulz 10156 Added Z30909 to the approved list of test cases 272349 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34790" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z34790K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "sequence" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z8", "Z17K2": "Z34790K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "equality function" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": { "Z1K1": "Z7", "Z7K1": "Z882", "Z882K1": "Z13518", "Z882K2": "Z1" } }, "Z8K3": [ "Z20", "Z30866", "Z30909" ], "Z8K4": [ "Z14", "Z30867" ], "Z8K5": "Z34790" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "run-length encoding" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "run-length encode", "RLE" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } hvjwyw2gfkmps3iopt12jribfv6cik5 272350 272349 2026-05-04T20:44:07Z YoshiRulz 10156 Removed Z30867 from the approved list of implementations 272350 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34790" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z34790K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "sequence" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z8", "Z17K2": "Z34790K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "equality function" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": { "Z1K1": "Z7", "Z7K1": "Z882", "Z882K1": "Z13518", "Z882K2": "Z1" } }, "Z8K3": [ "Z20", "Z30866", "Z30909" ], "Z8K4": [ "Z14" ], "Z8K5": "Z34790" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "run-length encoding" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "run-length encode", "RLE" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } r2618rvitl5qvo2iywsozc1i5347q85 272352 272350 2026-05-04T20:45:00Z YoshiRulz 10156 Added Z30867 to the approved list of implementations 272352 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34790" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z34790K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "sequence" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z8", "Z17K2": "Z34790K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "equality function" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": { "Z1K1": "Z7", "Z7K1": "Z882", "Z882K1": "Z13518", "Z882K2": "Z1" } }, "Z8K3": [ "Z20", "Z30866", "Z30909" ], "Z8K4": [ "Z14", "Z30867" ], "Z8K5": "Z34790" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "run-length encoding" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "run-length encode", "RLE" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } hvjwyw2gfkmps3iopt12jribfv6cik5 272356 272352 2026-05-04T20:57:14Z YoshiRulz 10156 Added Z34792 to the approved list of test cases 272356 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34790" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z34790K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "sequence" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z8", "Z17K2": "Z34790K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "equality function" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": { "Z1K1": "Z7", "Z7K1": "Z882", "Z882K1": "Z13518", "Z882K2": "Z1" } }, "Z8K3": [ "Z20", "Z30866", "Z30909", "Z34792" ], "Z8K4": [ "Z14", "Z30867" ], "Z8K5": "Z34790" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "run-length encoding" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "run-length encode", "RLE" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } kt4wiexutq0hxfc6eonikm21yfo9dk1 Z34791 0 82487 272336 2026-05-04T20:16:13Z YoshiRulz 10156 Create implementation 272336 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34791" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z30865", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z34790", "Z34790K1": { "Z1K1": "Z18", "Z18K1": "Z30865K1" }, "Z34790K2": "Z13052" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "run-length encoding (object equality), composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } nh4h6u2d05x2hch5nw4p3h1cyr6qhxw Z34792 0 82488 272353 2026-05-04T20:54:01Z YoshiRulz 10156 Create test 272353 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34792" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34790", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34790", "Z34790K1": [ "Z6", "A", "B", "CC", "D", "E" ], "Z34790K2": "Z11690" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z889", "Z889K2": [ { "Z1K1": "Z7", "Z7K1": "Z882", "Z882K1": "Z13518", "Z882K2": "Z6" }, { "Z1K1": { "Z1K1": "Z7", "Z7K1": "Z882", "Z882K1": "Z13518", "Z882K2": "Z6" }, "K1": { "Z1K1": "Z13518", "Z13518K1": "2" }, "K2": "A" }, { "Z1K1": { "Z1K1": "Z7", "Z7K1": "Z882", "Z882K1": "Z13518", "Z882K2": "Z6" }, "K1": { "Z1K1": "Z13518", "Z13518K1": "1" }, "K2": "CC" }, { "Z1K1": { "Z1K1": "Z7", "Z7K1": "Z882", "Z882K1": "Z13518", "Z882K2": "Z6" }, "K1": { "Z1K1": "Z13518", "Z13518K1": "2" }, "K2": "D" } ], "Z889K3": "Z19586" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "RLE([...]) == [ (2,[...]), (1,[...]), (2,[...]) ]" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } o1ppigrurum2hze0tok29cfx01kalac 272355 272353 2026-05-04T20:56:14Z YoshiRulz 10156 Only check run lengths 272355 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34792" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34790", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z873", "Z873K1": "Z821", "Z873K2": { "Z1K1": "Z7", "Z7K1": "Z34790", "Z34790K1": [ "Z6", "A", "B", "CC", "D", "E" ], "Z34790K2": "Z11690" } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z889", "Z889K2": [ "Z13518", { "Z1K1": "Z13518", "Z13518K1": "2" }, { "Z1K1": "Z13518", "Z13518K1": "1" }, { "Z1K1": "Z13518", "Z13518K1": "2" } ], "Z889K3": "Z13522" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "RLE([...]) == [ (2,[...]), (1,[...]), (2,[...]) ]" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } ckb10v0xauamw5tv0v2oowy3phfnqwh Z34793 0 82489 272365 2026-05-04T21:53:19Z YoshiRulz 10156 Create function 272365 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34793" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z34793K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "list" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z8", "Z17K2": "Z34793K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "equality function" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z34793" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "most common element(s) in list" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } irig73w6frdzkdux5mm5bo8fng6xhvc 272369 272365 2026-05-04T22:02:56Z YoshiRulz 10156 Added Z34794, Z34795 and Z34796 to the approved list of test cases 272369 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34793" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z34793K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "list" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z8", "Z17K2": "Z34793K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "equality function" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z8K3": [ "Z20", "Z34794", "Z34795", "Z34796" ], "Z8K4": [ "Z14" ], "Z8K5": "Z34793" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "most common element(s) in list" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 6v0490wqt3jg97vutdt9nh3pcboxec3 Z34794 0 82490 272366 2026-05-04T22:02:31Z YoshiRulz 10156 Create test 272366 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34794" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34793", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34793", "Z34793K1": [ "Z6", "A", "B", "A", "A", "B" ], "Z34793K2": "Z866" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z889", "Z889K2": [ "Z6", "A" ], "Z889K3": "Z866" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "mode([ \"A\", \"B\", \"A\", \"A\", \"B\" ], equality)" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 1c597nf9vqgr88eek5mk9qdxscchesv Z34795 0 82491 272367 2026-05-04T22:02:35Z YoshiRulz 10156 Create test 272367 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34795" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34793", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34793", "Z34793K1": [ "Z6", "A", "B", "A", "A", "B", "B" ], "Z34793K2": "Z866" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z889", "Z889K2": [ "Z6", "A", "B" ], "Z889K3": "Z866" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "mode([ \"A\", \"B\", \"A\", \"A\", \"B\", \"B\" ], equality)" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 91upvkcqx2zymm1axb8z0mvv96g0p1m Z34796 0 82492 272368 2026-05-04T22:02:40Z YoshiRulz 10156 Create test 272368 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34796" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34793", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34793", "Z34793K1": [ "Z6", "A", "BB", "C", "D", "EE" ], "Z34793K2": "Z11690" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z889", "Z889K2": [ "Z6", "A" ], "Z889K3": "Z866" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "mode([ \"A\", \"BB\", \"C\", \"D\", \"EE\" ], same length)" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 95vk9skfqyu4jo30ifo9tm68qllfrcn Wikifunctions:Human languages/Z1360 4 82493 272376 2026-05-05T05:44:02Z Arlo Barnes 1231 move from [[WF:RF]] 272376 wikitext text/x-wiki {{Z+|Z1360}} * inputs: natural number (new numeric type) and language Z-number; output: 'singular', 'dual', 'paucal', 'plural', etc. as string *: {{doing}}: {{z+|Z15977}} * {{z|Z26570}} but with a {{z|Z881}} of {{z|Z6091}} for the {{para|location}} input;<br/>such as in "{{q|Q122962941}} is an {{q|Q350604}} in {{em|{{q|Q801}} and {{q|Q39760}}}}" m67wzenv6qv2r7qqiseyekdzwifiw82 Wikifunctions:Human languages/vgt 4 82494 272378 2026-05-05T05:47:54Z Arlo Barnes 1231 move from [[WF:RF]] 272378 wikitext text/x-wiki === vgt - Flemish Sign Language === * SignWriting encode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 12:44, 18 January 2026 (UTC) ixddx1jbvbjwdtunelomjccwt2ztca3 Wikifunctions:Human languages/Z1179 4 82495 272379 2026-05-05T05:49:03Z Arlo Barnes 1231 move from [[WF:RF]] 272379 wikitext text/x-wiki {{z+|Z1179}} * Tyap has six determiners/definite articles which determine the pronoun, number (1-5), etc. forms used. ** ka & wu (basically for singular nouns and adjectives with a few exceptions) ** hu & ji (for singular and plural nouns and adjectives) ** ba & na (mainly for plural nouns. *** Determiners come after nouns. *** When an adjective comes before a noun, the determiner used is that of the adjective. E.g., a̱sham (ka) - (the) beautiful, kyang (hu) - (the) thing = a̱sham kyang (ka) - (the) beautiful thing. * Tyap has a non-uniform noun class system used for noun pluralization and conversion from one part of speech to another. E.g., a̱bwom (song) and bwom (to sing), a̱fufwuo (ears) and fufwuo (ear). * Affixation: Prefixes exist but suffixes hardly are found. k9r85z3vyqcum2cjmk4w353973vonnq Wikifunctions:Human languages/Z1157 4 82496 272380 2026-05-05T05:50:37Z Arlo Barnes 1231 move from [[WF:RF]] 272380 wikitext text/x-wiki {{z+|Z1157}} * Cardinals ** Cardinal to number ** Number to cardinal * Verbs ** [https://e-ans.ivdnt.org/topics/pid/ans0203lingtopic Conjugations] * Morphology ** Diminutive to root word *** Belgian diminutive to root word ** Root word to diminutive *** Belgian root word to diminutive (-ke) ** Plural diminutive to root word *** Belgian plural diminutive to root word ** Root word to plural diminutive *** Belgian root word to plural diminutive (-kes) iomu4cd4znlhlalt5zu1gxclawfr0dw Wikifunctions:Human languages/Z1013 4 82497 272381 2026-05-05T05:52:24Z Arlo Barnes 1231 move from [[WF:RF]] 272381 wikitext text/x-wiki {{z+|Z1013}} A notated demo sentence ("Aishà taa jeefar dà kàren Indoo" ― "Aisha threw away Indo's dog") is available at http://intent.xigt.org tao9gkab4wnt8p3qhv52843ifgq430j Wikifunctions:Human languages/Z1004 4 82498 272382 2026-05-05T05:53:07Z Arlo Barnes 1231 move from [[WF:RF]] 272382 wikitext text/x-wiki {{z+|Z1004}} * {{z+|Z11590}} Masculine adjective -> feminine, e.g. "exact"->"exacte" * Conjugated verb => Infinitive, e.g. "alla" => "aller", "mordit" => "mordre" 4u6dcf7pv7c3kdz522fj2pt9sqbha2z Wikifunctions:Human languages/Z1314 4 82499 272384 2026-05-05T05:54:51Z Arlo Barnes 1231 move from [[WF:RF]] 272384 wikitext text/x-wiki {{Z+|Z1314}} * Basque language declension system in rather regular based on suffixes. ** Here a few examples for Basque declension: *** {{z+|Z18541}} *** {{z+|Z18670}} **Before implementing all of them, we may propose an overall classification that eases both the implementation and the future usage of the functions. Here a first try based on bibliography from the [https://www.euskaltzaindia.eus/index.php?option=com_ebe&view=bilaketa&task=pdf&Itemid=1161&atala=deklinabide-taulak Basque Language Academy]: ***Personal pronouns: they can be treated as exceptions (e.g. "zuek -> zuei", etc.) together with proper noun declension, or as a separate case. ***Determiners: they can be treated as exceptions (e.g. "hau" -> "honek", etc) together with common noun declension, or as a separated case ***Grammatical cases: ****Absolutive ("Nor"): indefinite, singular and plural ****Ergative ("Nork"): indefinite, singular and plural ****Dative ("Nori"): indefinite, singular and plural ***Place and Time: we must distinguish animate (AN) and inanimate (IN) ****Inessive IN ("Non"): indefinite, singular and plural ****Inessive AN ("Norengan"): indefinite, singular and plural - It could be a composition of "Noren" + "-gan" ****Place and time ("Nongo"): indefinite, singular and plural ****Allative IN ("Nora"): indefinite, singular and plural ****Allative AN ("Norengana"): indefinite, singular and plural - It could be a composition of "Noren/Norengan" + "-gan/-a" ****Finished Allative AN ("Noraino"): indefinite, singular and plural - It could be a composition of "Nora" + "-ino" ****Finished Allative AN ("Norengainaino"): indefinite, singular and plural - It could be a composition of "Noregana" + "-ino" ****Right way Allative IN ("Noratz"): indefinite, singular and plural - It could be a composition of "Nora" + "-ntz" ****Right way Allative AN ("Norenganantz"): indefinite, singular and plural - It could be a composition of "Norengana" + "-ntz" ****Ablative IN ("Nondik"): indefinite, singular and plural ****Ablative AN ("Norengandik"): indefinite, singular and plural ***Rest of the cases: ****Partitive ("Zerik"): indefinite ****Possessive ("Noren"): indefinite, singular and plural ****Sociative ("Norekin"): indefinite, singular and plural ****Instrumental ("Zerez"): indefinite, singular and plural ****Motivative ("Zerengatik"): indefinite, singular and plural ****Destinative ("Norentzat"): indefinite, singular and plural - It could be a composition of "Noren" + "-tzat" ***Special case: ****Prolative ("Nortzat"): indefinite ***To take into consideration: ****Together with animate and inanimate classification, we should also consider if the noun is a proper noun ("izen berezia"). We can identify that automatically (e.g. check if written in Title case, but this may not be always possible like in the beginning of sentences), but a dedicated function may be preferred (or a boolean to the generic function saying it is a proper noun). ****The main distinction is between noun ending by vowel or consonant that can be easily computed 84r2yux0h765ucy8p7zuvsoozsbveie Wikifunctions:Human languages/Z1430 4 82500 272386 2026-05-05T05:57:43Z Arlo Barnes 1231 move from [[WF:RF]] 272386 wikitext text/x-wiki {{z+|Z1430}} * tense * person * number for each verb ** tenses: present, past, ...? ** person: first, second, third ** number: singular, plural ** {{doing}} third person singular present ** second person singular preterite 20w7s0i0pkl8lcw00ummr8mceu93nh9 Wikifunctions:Human languages/Z1024 4 82501 272388 2026-05-05T06:01:03Z Arlo Barnes 1231 move from [[WF:RF]] 272388 wikitext text/x-wiki {{z+|Z1024}} [[w:cy:]], [[w:en:colloquial Welsh morphology]] 6hlbeae3qbjxa2hre9y4dpwo0lrg291 Wikifunctions:Human languages/Z1907 4 82502 272389 2026-05-05T06:01:45Z Arlo Barnes 1231 move from [[WF:RF]] 272389 wikitext text/x-wiki {{z+|Z1907}} * [[w:en:Brazilian Sign Language#Writing|SignWriting]] * [[incubator:wp/bzs/AS1f502S22f00M513x521S1f502492x497S22f00488x480_AS15d22S22b04M514x527S22b04493x497S15d22487x473|sample text]] qfmcmv5f9oordb75ho9k0bfg1awoyje Wikifunctions:JavaScript implementations 4 82503 272394 2026-05-05T06:30:29Z Arlo Barnes 1231 main and see also 272394 wikitext text/x-wiki {{main|WF:PROG}}{{see also|WF:PY}} 47mr9aas5a3h4zlox18wv4jdocxc26w 272399 272394 2026-05-05T06:34:41Z Arlo Barnes 1231 shortcut 272399 wikitext text/x-wiki {{main|WF:PROG}}{{see also|WF:PY}}{{shortcut|[[WF:JS]]}} lwq4lcf6xcxbt0s4bbepfmzlu2os9v6 272403 272399 2026-05-05T06:41:42Z Arlo Barnes 1231 category 272403 wikitext text/x-wiki {{main|WF:PROG}}{{see also|WF:PY}}{{shortcut|[[WF:JS]]}} [[category:JavaScript implementations| ]] gjgcrtqnf3hgq1za2734w2knkpwmwgs Wikifunctions:PY 4 82504 272396 2026-05-05T06:32:20Z Arlo Barnes 1231 redirect 272396 wikitext text/x-wiki #redirect[[WF:Python implementations]] jb5yapii0vp13mwiwtgx9klpqg8pj1c Wikifunctions:JS 4 82505 272398 2026-05-05T06:34:20Z Arlo Barnes 1231 redirect 272398 wikitext text/x-wiki #redirect[[WF:JavaScript implementations]] sllrk3uau1n4225pon2ddb0hwphtlf8 Z34797 0 82506 272410 2026-05-05T07:26:58Z Sun8908 9804 272410 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34797" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z34797K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "pinyin" } ] } } ], "Z8K2": "Z40", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z34797" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "is valid pinyin for single character" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 1i8wltar5s9xko4jz2x5hx4yp51hchs Translations:Wikifunctions:Status updates/2026-05-02/27/de 1198 82507 272411 2026-05-05T10:03:43Z Ameisenigel 44 Created page with "In den vergangenen zwei Wochen gab es mehrere Aktualisierungen zur Verbesserung der Benutzerfreundlichkeit und Verständlichkeit von der Abstrakten Wikipedia und Wikifunctions." 272411 wikitext text/x-wiki In den vergangenen zwei Wochen gab es mehrere Aktualisierungen zur Verbesserung der Benutzerfreundlichkeit und Verständlichkeit von der Abstrakten Wikipedia und Wikifunctions. g8j98n0m0ntsvapgy7a6jw5k24ugj9u Translations:Wikifunctions:Status updates/2026-05-02/16/de 1198 82508 272413 2026-05-05T10:06:22Z Ameisenigel 44 Created page with "Die Such- und Entdeckungsfunktionen wurden verbessert, sodass Beitragende Inhalte leichter finden und erkennen können. In der Abstrakten Wikipedia werden nun neben den Suchergebnissen Vorschaubilder der Wikidata-Entitäten angezeigt (sofern verfügbar), was die visuelle Identifizierung von Entitäten erleichtert ($1). Darüber hinaus wurde der Algorithmus für die Suche von Bezeichnungen aktualisiert, um sicherzustellen, dass exakte Übereinstimmungen immer als erstes E..." 272413 wikitext text/x-wiki Die Such- und Entdeckungsfunktionen wurden verbessert, sodass Beitragende Inhalte leichter finden und erkennen können. In der Abstrakten Wikipedia werden nun neben den Suchergebnissen Vorschaubilder der Wikidata-Entitäten angezeigt (sofern verfügbar), was die visuelle Identifizierung von Entitäten erleichtert ($1). Darüber hinaus wurde der Algorithmus für die Suche von Bezeichnungen aktualisiert, um sicherzustellen, dass exakte Übereinstimmungen immer als erstes Ergebnis angezeigt werden. Dies behebt Fälle, in denen bekannte Objekte oder Funktionen schwer zu finden waren ($2). lm15dte85ls4i0p8inufsi3l9b8mkvh Translations:Wikifunctions:Status updates/2026-05-02/17/de 1198 82509 272415 2026-05-05T10:08:11Z Ameisenigel 44 Created page with "Wir haben außerdem eine benutzerfreundlichere Methode für Communitys eingeführt, um empfohlene Funktionen zu konfigurieren. Bisher wurden die vorgeschlagenen Funktionen für eingebettete Fragmente von Wikifunctions und der Abstrakten Wikipedia über JSON-Seiten (MediaWiki:Wikilambda-suggested-functions.json und MediaWiki:Abstractwiki-suggested-functions.json) verwaltet. Dies wurde nun durch die Konfiguration über die Spezialseite Community-Konfiguration ersetzt, wodu..." 272415 wikitext text/x-wiki Wir haben außerdem eine benutzerfreundlichere Methode für Communitys eingeführt, um empfohlene Funktionen zu konfigurieren. Bisher wurden die vorgeschlagenen Funktionen für eingebettete Fragmente von Wikifunctions und der Abstrakten Wikipedia über JSON-Seiten (MediaWiki:Wikilambda-suggested-functions.json und MediaWiki:Abstractwiki-suggested-functions.json) verwaltet. Dies wurde nun durch die Konfiguration über die Spezialseite Community-Konfiguration ersetzt, wodurch die Verwaltung dieser Empfehlungen für Communitys vereinfacht wird ($1). 7v3h4j9jqz26mujpa9ut5jl4n5rdp3q Translations:Wikifunctions:Status updates/2026-05-02/18/de 1198 82510 272417 2026-05-05T10:09:54Z Ameisenigel 44 Created page with "Wir haben außerdem mehrere Fehler behoben und die Darstellung verbessert. Ein Fehler im Testergebnis-Caching-System wurde behoben, der dazu führte, dass Tests fälschlicherweise als fehlgeschlagen angezeigt wurden ($1). Ein Fehler in der Kopier-/Einfügefunktion, der beim Kopieren von Blöcken mit undefinierten Referenzen gelegentlich Probleme verursachte, wurde ebenfalls behoben. Eine weitere Korrektur stellt sicher, dass beim Veröffentlichen von Funktionsdefinitions..." 272417 wikitext text/x-wiki Wir haben außerdem mehrere Fehler behoben und die Darstellung verbessert. Ein Fehler im Testergebnis-Caching-System wurde behoben, der dazu führte, dass Tests fälschlicherweise als fehlgeschlagen angezeigt wurden ($1). Ein Fehler in der Kopier-/Einfügefunktion, der beim Kopieren von Blöcken mit undefinierten Referenzen gelegentlich Probleme verursachte, wurde ebenfalls behoben. Eine weitere Korrektur stellt sicher, dass beim Veröffentlichen von Funktionsdefinitionsänderungen verbundene Implementierungen und Tests bei Bedarf ordnungsgemäß getrennt werden. 0kikoedoyg5mxlcxqplyqrc4jxcrdw9 Translations:Wikifunctions:Status updates/2026-05-02/19/de 1198 82511 272419 2026-05-05T10:12:10Z Ameisenigel 44 Created page with "Im Hinblick auf die verbesserte Darstellung wurde die Formatierung bei Kompositionen optimiert, sodass Zeilenumbrüche nun an Worttrennern erfolgen ($1). Außerdem wurde ein Fehler behoben, um sicherzustellen, dass die Bezeichnung Typisierte Liste beim Seitenaufbau geladen und nicht als ZID angezeigt wird ($2). Und in der Abstrakten Wikipedia wurde die Inhaltsdarstellung in der Vorschau verbessert. Die Vorschau fügt nun keine unerwünschten Zeilenabstände mehr ein, wen..." 272419 wikitext text/x-wiki Im Hinblick auf die verbesserte Darstellung wurde die Formatierung bei Kompositionen optimiert, sodass Zeilenumbrüche nun an Worttrennern erfolgen ($1). Außerdem wurde ein Fehler behoben, um sicherzustellen, dass die Bezeichnung Typisierte Liste beim Seitenaufbau geladen und nicht als ZID angezeigt wird ($2). Und in der Abstrakten Wikipedia wurde die Inhaltsdarstellung in der Vorschau verbessert. Die Vorschau fügt nun keine unerwünschten Zeilenabstände mehr ein, wenn Textfragmente als Absätze definiert werden ($3), was zu einer präziseren Formatierung führt ($4). ab5oyng5m3px929iisbb7pk3xo38nx9 Z34798 0 82512 272421 2026-05-05T10:56:13Z Jsamwrites 938 272421 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34798" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z33024", "Z14K3": { "Z1K1": "Z16", "Z16K1": "Z610", "Z16K2": "def Z33024(Z33024K1, Z33024K2):\n\treturn [Z31676(x, Z33024K2) for x in Z33024K1]" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "label texts for Wikidata items, python" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } kvo62y1565oya65rgyzv853jh1w2rji 272422 272421 2026-05-05T11:03:38Z Jsamwrites 938 272422 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34798" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z33024", "Z14K3": { "Z1K1": "Z16", "Z16K1": "Z610", "Z16K2": "def Z33024(Z33024K1, Z33024K2):\n\treturn [Z31676(x, Z33024K2) for x in Z33024K1]" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "label texts for Wikidata items, python" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Please not use right now https://www.wikifunctions.org/wiki/Wikifunctions:FAQ" } ] } } qxt810eq0xtt0xrxiq87ngz20c2c3bg