[00:59:33] Is there a reason you put Z33480 on Z26955. It can already be completed like this [00:59:33] https://www.wikifunctions.org/view/en/Z26039?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z26039%22%2C%22Z26039K1%22%3A%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q15433043%22%7D%2C%22Z26039K2%22%3A%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q1622272%22%7D%2C%22Z26039K3%22%3A%22Z1002%22 [00:59:33] %7D. (re @Csisc1994: Luckily, I can implement the required output as test cases there so that anyone working on the implementation can test outputs.) [02:15:58] Did we conclude that v2 doesn't allow user implementations to be lazy? All implementations are thrashing on test Z22106 which is designed to prioritize lazy ones. [05:38:26] No, the test used a function that was actually fast to evaluate. Now I've inserted an actual slow function (re @u99of9: Did we conclude that v2 doesn't allow user implementations to be lazy? All implementations are thrashing on test Z22106 which is...) [05:43:14] I think I chose something that took about 3000 ms. All implementations were taking that long when I posted. (re @dvd_ccc27919: No, the test used a function that was actually fast to evaluate. Now I've inserted an actual slow function) [05:44:10] By comparison if it knows to be lazy, all it has to do is check if True is True, then output a string. (re @u99of9: I think I chose something that took about 3000 ms. All implementations were taking that long when I posted.) [05:46:02] Yours is so slow it blows up. Can I revert? [05:49:39] The fact that it blew up all implementations supports the point, none are successfully lazy? (re @u99of9: Yours is so slow it blows up. Can I revert?) [05:52:27] Oh, it looks like it didn't work in V1 at the start of 2025 either. (re @u99of9: So far I think you're right. I even made this test to give a huge advantage to laziness: Z22106, but it hasn't flipped anything.) [07:56:49] The reason is that I try to prioritize using less functions. (re @u99of9: Is there a reason you put Z33480 on Z26955? It can already be completed like this https://www.wikifunctions.org/view/en/Z26039?c...) [07:57:25] As you see there, there are only three main custom functions. [07:57:56] The SPO one, the preposition one, and the punctuation one. [07:58:10] This will be more intuitive to use. [08:00:00] Using this way will only prioritize using other functions if they cannot be represented using the three basic functions. [08:00:21] This is what I thought. [08:21:38] The suggestion was that a function call could be quoted, which is sometimes true and sometimes successful. I haven’t yet determined the limits. In your context, it would imply an unwrapping step, which is unquoting an object that is a quoted function call. More general, opt-in, laziness is being considered and Denny mentioned it here: [08:21:39] “I came back to this one and it is still up on my mind, but I remain unclear about what exactly to implement. Particularly in combination with Composition v2, having a lazy built-in seems like an interesting idea. I wonder if something supporting laziness in a way that the community can use it is a good idea in general. That probably would be good for this as well as for [08:21:39] Z14294 [08:21:41] and Z14293... Well, but coming back to this: should we first have a type for signatures, and then use the signature type for this configuration type? Does someone want to sketch that one out? [08:21:42] @99of9, (https://www.wikifunctions.org/wiki/User:99of9) GrounderUK, (https://www.wikifunctions.org/wiki/User:GrounderUK) ListWorshiper, (https://www.wikifunctions.org/wiki/User:ListWorshiper?action=edit&redlink=1) Infernostars, (https://www.wikifunctions.org/wiki/User:Infernostars) Dv103, (https://www.wikifunctions.org/wiki/User:Dv103) and SRG372: (https [08:21:42] //www.wikifunctions.org/w [08:21:44] iki/User:SRG372?action=edit&redlink=1) --DVrandecic (WMF (https://www.wikifunctions.org/wiki/User:DVrandecic_(WMF))) (talk (https://www.wikifunctions.org/wiki/User_talk:DVrandecic_(WMF))) 10:14, 7 April 2026 (UTC (https [08:21:44] //www.wikifunctions.org/wiki/Wikifunctions:Type_proposals/configuration_of_functions_for_given_types#c-DVrandecic_(WMF)-20260407101400-Question_for_implementation [08:21:45] )) [08:21:47] (I had a few thoughts on a signature type, but I was waiting for your response before I prioritised this.) (re @u99of9: Did we conclude that v2 doesn't allow user implementations to be lazy? All implementations are thrashing on test Z22106 which is...) [08:40:45] Yes this is tempting for the editor. But it is much less likely to work the way you want compared a tightly specified and heavily supported one. It will be interesting to see how this kind of trade off goes as things mature. Should we think about recommendations? (re @Csisc1994: This will be more intuitive to use.) [09:03:31] I am thinking about this. (re @u99of9: Yes this is tempting for the editor. But it is much less likely to work the way you want compared a tightly specified and heavi...) [09:04:13] This can only be verified when people try to create implementations for the functions. [09:06:42] True. Until then we get error messages from Z26955. (re @Csisc1994: This can only be verified when people try to create implementations for the functions.) [09:31:12] All these functions have the huge problem of being very ill-defined and English-centric. For example, the verb "to be" can have very different meanings, that in some languages are expressed differently (and sometimes with constructions very different from a predicative sentence). Prepositions are even worse, and even punctuation can be weird (as a simple [09:31:12] example, consider that in [09:31:12] Italian the Oxford comma is not a thing) (re @Csisc1994: The SPO one, the preposition one, and the punctuation one.) [09:39:33] I know this information. This is a first attempt. (re @dvd_ccc27919: All these functions have the huge problem of being very ill-defined and English-centric. For example, the verb "to be" can have ...) [09:41:49] Concerning the comma problem, that is the work of who will implement the punctuation in Italian to identify where the comma should not be transcribed. [10:19:25] How can you infer the meaning of the comma from within the function Z33449? (re @Csisc1994: Concerning the comma problem, that is the work of who will implement the punctuation in Italian to identify where the comma shou...) [10:20:31] The problem with these functions is that they don't encode meaning, which means that it is impossible to implement them in many languages [10:20:53] , (comma). (re @dvd_ccc27919: How can you infer the meaning of the comma from within the function Z33449?) [10:21:03] . (full stop). [10:22:26] A comma in English can encode a myriad of different meanings, that translate very differently in other languages (re @Csisc1994: , (comma).) [10:23:22] We can adjust this by creating an item for every comma meaning. (re @dvd_ccc27919: A comma in English can encode a myriad of different meanings, that translate very differently in other languages) [10:23:45] (…and other English variants) (re @dvd_ccc27919: A comma in English can encode a myriad of different meanings, that translate very differently in other languages) [10:25:49] You currently have Z33449 and Z26955 with examples so that people can implement it in a way that allows it to accurately render on Abstract Wikipedia. [10:26:46] A note concerning Z26955: I removed the full stop at the end, as it is different in several languages. As well, this allows to add conjunctions after statements. [10:27:43] Of course, this is a personal effort. I can be wrong. Please feel free to enhance it if absolutely required. [10:28:06] The Abstract Wikipedia Page, the functions and the examples are editable. [10:28:19] I don't see it possible, since we are literally speaking of thousands of meanings (that I don't think anyone has even tried to identify and catalogue). Also consider that sometimes other languages require punctuation where English doesn't, and that other language could need to change completely the entire structure of a sentence (re @Csisc1994: We can adjust [10:28:19] this by creating an i [10:28:20] tem for every comma meaning.) [10:28:53] how may comma is there in Arabic? (I know in English and French there is at least 2 different common ones, for sentences and for numbers) (re @Csisc1994: Of course, this is a personal effort. I can be wrong. Please feel free to enhance it if absolutely required.) [10:29:43] In Arabic, we have the inverted comma for statements. (re @NicolasVIGNERON: how may comma is there in Arabic? (I know in English and French there is at least 2 different common ones, for sentences and for...) [10:30:16] and only this one? (re @Csisc1994: In Arabic, we have the inverted comma for statements.) [10:33:08] Yes. (re @NicolasVIGNERON: and only this one?) [10:34:14] Of course! But I, for one, would first like to see where your efforts lead you, on this one page. I’m sorry I had to leave the volunteers’ meeting early; I have other business on a Monday evening. (re @Csisc1994: Of course, this is a personal effort. I can be wrong. Please feel free to enhance it if absolutely required.) [10:34:15] ok, strange, Arabic is the only language (I know) doing that... (re @Csisc1994: Yes.) [10:37:22] But I thought Arabic used an explicit conjunction for listed items and no comma at all (there). 🤷‍♂️ (re @NicolasVIGNERON: ok, strange, Arabic is the only language (I know) doing that...) [10:37:45] https://www.mezan-institute.com/punctuation-marks-in-arabic/ is a link. (re @Al: But I thought Arabic used an explicit conjunction for listed items and no comma at all (there). 🤷‍♂️) [10:39:37] thanks, that's an useful link, but so many cases are missing (like in mathematics how do you write "3.14" in Arabic? for an obvious case of different commas) (re @Csisc1994: https://www.mezan-institute.com/punctuation-marks-in-arabic/ is a link.) [10:40:58] It differs by country. (re @NicolasVIGNERON: thanks, that's an useful link, but so many cases are missing (like in mathematics how do you write "3.14" in Arabic? for an obvi...) [10:41:14] 1. 3،14 [10:41:14] 2. 3.14 [10:41:15] 3. 3,14. [10:43:39] Convention on Arabic Wikipedia: 3.14. [10:44:16] In Tunisia, Algeria, and Morocco, it is 3,14 in textbooks written in Arabic Script. [10:45:58] @Csisc1994 in this article https://ar.wikipedia.org/wiki/%D8%AA%D9%88%D8%A7%D9%81%D9%82_(%D8%B9%D9%84%D9%88%D9%85_%D8%A7%D9%84%D8%AD%D8%A7%D8%B3%D9%88%D8%A8) (and others) I see "الإخراج إلى رقم ثنائي واحد {0،1}." [10:46:31] That is an interval. [10:47:25] In books using the inverted comma in number. They add a space after a comma in intervals to show the difference. [10:47:26] using an inteverted comma [10:47:27] so there *is* more than one meaning apparently (re @Csisc1994: That is an interval.) [10:48:08] Yes. (re @NicolasVIGNERON: using an inteverted comma [10:48:09] so there *is* more than one meaning apparently) [10:48:55] Some languages use the semicolon in this situation. But, again, this is a mathematical notation. [10:49:08] The function is about natural language. [10:51:11] but mathematics can be use in natural language generation too [10:51:12] like "Pi is 3.14" or "the population is 2.5 million" (re @Csisc1994: The function is about natural language.) [10:51:35] Chinese use `,` for comma, `、` for listed items, and Japanese use `、` for comma, `・` for listed items [10:53:48] That is interesting. Please feel free to adjust the examples accordingly and find a Wikidata item for each situation. (re @OverflowCat: Chinese use , for comma, 、 for listed items, and Japanese use 、 for comma, ・ for listed items) [10:54:00] BTW, Tibetan adds a full stop everywhere, even for a single phrase [10:54:30] Please add this too. (re @OverflowCat: BTW, Tibetan adds a full stop everywhere, even for a single phrase) [10:54:53] https://tools-static.wmflabs.org/bridgebot/1938469f/file_79418.jpg [10:55:26] Note the stick (།). You can see them after button labels, places on maps, etc. [11:01:13] highlighted are syllable splitter; spaces are only used around tibetan numerals and after stops : https://tools-static.wmflabs.org/bridgebot/0b3d9b23/file_79419.jpg [11:08:29] Should we have a language-variant of Arabic for each? Then they could all be configured in Z21956 (re @Csisc1994: It differs by country.) [11:10:25] Imo float64 should NEVER be displayed directly in natural language as there is something called measurement uncertainty (re @u99of9: Should we have a language-variant of Arabic for each? Then they could all be configured in Z21956) [11:12:18] 1.5 million people is not the same as 1500000 people; also im sure you dont want to see 3.0000004 in articles [11:12:24] Uncertainty is handled with a different data type. See Z25326 which is very careful about significant figures and error ranges. (re @OverflowCat: Imo float64 should NEVER be displayed directly in natural language as there is something called measurement uncertainty) [11:13:05] Yes, I remember I saw that somewhere when I edit wikidata [11:14:40] It would be good to have more test examples in more languages so we can show these numbers in the appropriate script for readers. (re @OverflowCat: Imo float64 should NEVER be displayed directly in natural language as there is something called measurement uncertainty) [11:15:14] So I think this function should not be used for abstract wp. Natural languages need at least a precision passed as a param in abstract articles (re @u99of9: It would be good to have more test examples in more languages so we can show these numbers in the appropriate script for readers...) [11:18:33] I think you're probably right. The fragment making functions can call for precision limitation appropriate to their application. But we still need float64 to display well for everyone on WF. (re @OverflowCat: So I think this function should not be used for abstract wp. Natural languages need at least a precision passed as a param in ab...) [11:19:34] Yes, I mean float -> different comma versions maybe okay, but float -> natural language needs precision [11:20:50] I think you’re right, but we have yet to arrive at a consensus around what the contributor would specify and whether there would be a “natural” default, depending on the value. (re @OverflowCat: So I think this function should not be used for abstract wp. Natural languages need at least a precision passed as a param in ab...) [11:24:18] The closest I've got to deciding on precision for everyone is in Z28509. If you haven't tried it yet, play around with putting in the same value with more or less trailing zeros to change the significant figures. (re @OverflowCat: Yes, I mean float -> different comma versions maybe okay, but float -> natural language needs precision) [11:25:14] We should use the Arabic Wikipedia Convention. (re @u99of9: Should we have a language-variant of Arabic for each? Then they could all be configured in Z21956) [11:25:40] They worked hard on it and they even made decisions about Arabic Spelling. [11:27:19] That can be our first implementation. But WF and AW allow more customisation than we are used to on Wikipedia. For example, although there is only one English Wikipedia, I enjoy the idea that I will be able to view AW in en-au (re @Csisc1994: We should use the Arabic Wikipedia Convention.) [11:27:57] …or even en-gb 🤫 (re @u99of9: That can be our first implementation. But WF and AW allow more customisation than we are used to on Wikipedia. For example, alth...) [11:28:22] Most functions will still be shared in common. But already we have slight branches in how we are displaying times in en and en-au (re @u99of9: That can be our first implementation. But WF and AW allow more customisation than we are used to on Wikipedia. For example, alth...) [11:29:26] Yeah, Abstract wikipedia boasts itself that it "aims to create a language-independent version of Wikipedia". It's a pity if we give up our goal in the first place [11:30:37] At least Im sure more things can be done compared to LanguageConverter (https://www.mediawiki.org/wiki/Language_Converter) [11:30:39] And we do have multiple Arabic Wikipedias: Q199700, Q97393767, Q2374285 [11:31:58] These can already be documented as differing test cases on the float64 display function then. (re @Csisc1994: In Tunisia, Algeria, and Morocco, it is 3,14 in textbooks written in Arabic Script.) [11:40:27] On a technical note, we continue to assume that stylistic variation is a consequence of the selected language-variant. I think that’s generally workable, but it may be that some stylistic variation is better specified differently (without leaving it to be specified by individual contributors in individual function calls, as a general rule). [11:41:10] ^^ [replying] (re @u99of9: Most functions will still be shared in common. But already we have slight branches in how we are displaying times in en and en-a...) [11:42:35] Also wondering if we can have language that do not have an ISO language code [11:46:00] In principle, yes. But see *T420823.* (re @OverflowCat: Also wondering if we can have language that do not have an ISO language code) [11:57:14] I remember we talked earlier about readers having their own customisation options. Is that the configuration you're hoping for? (re @Al: On a technical note, we continue to assume that stylistic variation is a consequence of the selected language-variant. I think t...) [12:10:05] I don’t know about “hoping”; it’s all extra work! But when we define a global function, we may have an additional argument to pass through (assuming it’s a list of style-parameters or a reference to one). Or we may not 🤷‍♂️ (re @u99of9: I remember we talked earlier about readers having their own customisation options. Is that the configuration you're hoping for?) [12:14:24] I added examples to the preposition function. [12:14:40] I think that my work is finished here. [12:15:48] 1. I structured all the Structured Wikipedia Page. [12:15:50] 2. I defined missing functions and added examples of how they should properly work on Wikifunctions. [12:16:50] Well done. Looking forward to seeing you again in July. Best of luck! (re @Csisc1994: 1. I structured all the Structured Wikipedia Page. [12:16:51] 2. I defined missing functions and added examples of how they should properly...) [12:17:16] Now, I think that the Community can play around the Page and the functions through adjusting calls and examples, adding implementations, and creating other functions if absolutely needed. I will go back again in July. [12:17:22] Thank you. (re @Al: Well done. Looking forward to seeing you again in July. Best of luck!) [12:18:06] See you in July. [13:12:14] Personally, I'm not a fan of removing the full stops, because now it will not even produce sentences, and we will need to wrap it every time. As it was, it would already need to be configured by language, so choosing the right full stop would be trivial. Connecting with other clauses however, is way outside the scope of the (already hard) function. (re @Csisc1994: A [13:12:14] note concerni [13:12:15] ng Z26955: I removed the full stop at the end, as it is different in several languages. As well, this allows to a...) [13:14:03] And if you really want to shove a conjunction on the end, it won't be hard to shave off the period first (re @u99of9: Personally, I'm not a fan of removing the full stops, because now it will not even produce sentences, and we will need to wrap i...) [13:49:23] Division into paragraphs and sentences is a matter of style and linguistic convention. It is easier to apply sentence formatting to text than to reverse the process, when you have to work out whether the initial capital letter needs to remain. [13:49:24] I don’t have a particular solution to this in mind, but I thought you agreed with me. (https://www.wikifunctions.org/wiki/Talk:Z26095#Fragment_or_sentence?) One is free to change one’s mind, of course. 😎 (re @u99of9: Personally, I'm not a fan of removing the full stops, because now it will not even produce sentences, and we will need to wrap i...) [14:31:22] P17, P30, P1376, P206… [18:17:21] I tentatively agree with you. I think each function should generate a fragment and a function should be created to join them all into a paragraph with the proper formatting by language (re @Al: Division into paragraphs and sentences is a matter of style and linguistic convention. It is easier to apply sentence formatting...) [18:17:34] /delete@wikilinksbot (re @wikilinksbot: P17 – country [18:17:35] P30 – continent [18:17:36] P1376 – capital of [18:17:38] P206 – located in or next to body of water) [18:25:59] What happened to RecentChanges on Abstract Wikipedia? [18:26:09] https://tools-static.wmflabs.org/bridgebot/4caeb0d9/file_79432.jpg [18:26:59] weird, it doesn't load to me too [18:27:09] I'll notice the team [18:27:36] Ameisenigel: I saw that too, but it's working in an incognito tab where I'm not logged in [18:28:00] No problems here 🤷‍♂️ (re @Sannita: I'll notice the team) [18:28:23] doubly weird (re @Al: No problems here 🤷‍♂️) [18:28:36] classic RecentChanges being overwhelmed... [18:28:38] it happens often to me on Wikidata if I add too many filters, never saw it without filter tho (re @Ameisenigel: What happened to RecentChanges on Abstract Wikipedia?) [18:29:02] (and yes, I saw it too with the error number being [e9ab9074-205d-4558-a3c8-81842830c48c] if it helps) [18:29:10] [cbc6fddc-4dfa-43d5-8359-2d4be7d5b439] 2026-04-15 18:26:43: Fatal exception of type "OutOfBoundsException" [18:29:25] it gives a different number each time it seems [18:30:15] No activity in the last 14 minutes. [19:02:57] is it working now @Ameisenigel ? [19:03:15] works for me [19:09:49] Yes, thanks! [19:16:19] I think T423329 would be very helpful for composition editing and I hope the team decides to implement it! [19:16:50] Especially the drag and drop and duplicate [21:51:26] Ha! Consistency would be nice. I think the drift is because of the way the code window on AW shows up. I'm now conscious that regular editors will not want to explicitly call wrappers around everything. They will want a top level function that does everything, including the punctuation and conversion to HTML. But I guess we can hide the wrapping on WF for commonly [21:51:26] used functions. [21:51:27] So put me down as neutral for now. (re @Al: Division into paragraphs and sentences is a matter of style and linguistic convention. It is easier to apply sentence formatting...) [22:07:15] You’re probably right, but maybe the “top” is an intermediate something between a paragraph and a phrase, in prose terms. It should be a moving window, but that sits uneasily within a purely functional framework. (re @u99of9: Ha! Consistency would be nice. I think the drift is because of the way the code window on AW shows up. I'm now conscious that re...)