Jump to content

Wikifunctions:Community portal

From Wikifunctions

Welcome to the community portal for Wikifunctions!

This is the central place to document Wikifunctions's to-do lists and ongoing project work. [To-do!]

The catalogue of functions is a good place to start.

For discussions, see Wikifunctions:Project chat.

Noticeboards

Task centre

Perennial tasks

Tasks listed by users

Example:
Done. Thanks for pointing that out! Example (talk · contribs)

[signing to enable reply link:--GrounderUK (talk) 11:27, 6 May 2024 (UTC)[reply]

Hi, Dolphyb. Even simple joins can produce that error now, so I don’t think anyone can fix the implementation itself for the time being (but I could be wrong). We could try an implementation in Python or JavaScript. I’ve created Igbo: has light vowel (ụdamfe), Python (Z15921) and Igbo: has heavy vowel (udaarọ), Python (Z15922) in Python, based on your JavaScript implementations. If these are correct, I can use the logic of your composition to create a Python implementation. (I get confused when I use JavaScript!)--GrounderUK (talk) 09:34, 3 May 2024 (UTC)[reply]
Thank you GrounderUK. I have seen your implementation in python they're correct. It is possible to call an implementation from another implementation? Dolphyb (talk · contribs)
Not really. I have created something like that but the inner functions are physical copies rather than being imported. It is not good practice but at least it works. I don’t know what the current plans are for enabling what you suggest, but it is something that we expect to be able to do (@DVrandecic (WMF):?). Hopefully, compositions like yours will start working again before then anyway!
(Please sign your comments (--~~~~) to enable the reply link, thank you.
(it also means notifications will be sent. @DVrandecic (WMF): forgot to sign, sorry --GrounderUK (talk) 11:20, 6 May 2024 (UTC)[reply]
GrounderUK i went thru your python implementation even the fact that am not that good at python but i can understand one or two in it. Your implementation seem perfect and it reflects the intent of composition Thank you for helping out. --Dolphyb (talk) 19:12, 6 May 2024 (UTC)[reply]
You’re very welcome. I managed to create a new form of join function that is currently a bit quicker for short strings: code point prefix (Z15991). With that, I created a new composition for your function: Igbo infinitive (code point prefix) (Z15994). I had to move to lowercase (Z10047) to get all the tests to pass, but they did. I hope you can translate my new function. It was hard to name in English, but it’s just Code point (Z86) + String (Z6). GrounderUK (talk) 07:58, 7 May 2024 (UTC)[reply]
@GrounderUK Sorry for replying late I haven't checked the community portal in a while now. Yea, no hard worries I will translate the implementation later. The way you used Code point (Z86) to create another composition implementation i didn't think in that direction it's cool. Recently I had to use it when I created Suffix a verb to get it negative imperative form (Igbo) (Z16524) Dolphyb (talk) 01:46, 29 May 2024 (UTC)[reply]
I’m glad it has been useful. I have disconnected the Python implementations now so that (currently) all your tests pass (using your JavaScript implementations, which are not so slow now). GrounderUK (talk) 04:04, 29 May 2024 (UTC)[reply]
why do you have disconnect the python implementation ? does having two or more implementations in a function affect a composition that is using same function in another implementation in term of it's execution time that causes the 'Reached time limit in orchestrator' ? Dolphyb (talk) 13:24, 29 May 2024 (UTC)[reply]
It should be fine, but there’s a bug phab:T363908 GrounderUK (talk) 18:01, 29 May 2024 (UTC)[reply]
When preparing to evaluate a function, the orchestrator selects an implementation for each required function. In theory, it selects the fastest but in practice it just uses the first in the list. This should be the fastest, but that depends on the list being in the correct order. The order in the list is maintained by @WikiLambda system but for reasons yet to be explained, this sometimes favours Python implementations even when they consistently take longer than JavaScript ones. When this happens, all we can do is disconnect the slower implementation so that it will not appear in the list and the orchestrator will choose the faster implementation, which can mean there is enough time for the composition to complete successfully. GrounderUK (talk) 18:18, 29 May 2024 (UTC)[reply]
  翻译: