Wikifunções:FAQ

From Wikifunctions
This page is a translated version of the page Wikifunctions:FAQ and the translation is 84% complete.
Outdated translations are marked like this.
Atalho :
WF:FAQ

Esta é uma página dedicada às perguntas frequentes sobre a Wikifunções. Por favor, sinta-se à vontade para fazer sua própria pergunta na página de discussão, se ela não estiver listada aqui!

Além disso, considere nosso FAQ no Meta sobre questões mais gerais sobre Wikifunções e/ou Wikipédia abstrata.

Introdução

Do que se trata este projeto?

Wikifunções é um novo projeto da Wikimedia que fornece um catálogo de todos os tipos de funções que qualquer pessoa pode chamar, escrever, manter e usar. Ele também fornece a tecnologia subjacente que eventualmente permitirá a tradução de artigos de diferentes idiomas na Wikipédia abstrata. Isso permitirá que todos contribuam e leiam artigos em seus idiomas preferidos.

O que é uma função?

Funções são uma forma de conhecimento que pode responder questões como quantos dias se passaram entre duas datas ou a distância entre duas cidades. Funções mais complexas podem responder a questões mais complicadas, como o volume de uma forma tridimensional, a distância entre Marte e Vênus numa determinada data ou se duas espécies viviam ao mesmo tempo.

Já usamos funções em muitos tipos de consultas, como fazer uma pergunta a um mecanismo de busca. As predefinições, como Predefinição:Converter e Predefinição:Idade na Wikipédia em inglês, também são exemplos de funcionalidades que já são utilizadas em muitas Wikipédias, escritas em wikitexto e Lua e copiadas manualmente para cada wiki onde for desejado.

O que é uma implementação?

Uma implementação é uma maneira particular de executar uma função. Uma implementação é uma receita que lista as etapas necessárias para executar a função. Pode ser um trecho de código em uma linguagem de programação ou uma combinação de chamadas para outras funções. Uma função pode ter muitas implementações, que devem ser todas equivalentes.

O que é um teste?

Um teste é uma forma de determinar se uma determinada função está fazendo a coisa certa. Uma função normalmente terá vários testadores, cada um especificando alguma entrada para a função e verificando se a saída cumpriu as condições determinadas.

Por exemplo, os testadores para uma função de “maiúsculas e minúsculas” podem incluir: “abc” deve se tornar “Abc”; “war and peace” deve se tornar “War and Peace”; “война и мир” deve se tornar “Война и мир”; e “123” deve permanecer “123”.

Quais recursos estão disponíveis agora, quais estarão disponíveis em breve e quais estão mais distantes?

  • Durante o lançamento:
    • Temos a capacidade de ter funções que funcionam com strings e booleanos.
    • Wikifunções será totalmente internacionalizado desde o início. Pode ser usado em qualquer idioma.
  • Desenvolvimento contínuo:
    • generic types and generic functions are not fully supported.
    • Adding types will, for now, be something that is limited to the development team. In the future, the community will be able to add more types themselves. There is a lot of work in the future to make types behave much smoother.
      • One particularly interesting type will be binary data, and particularly files.
    • Atualmente oferecemos suporte a duas linguagens de programação para implementações, JavaScript e Python. No futuro, queremos apoiar muitas mais.
    • Atualmente não é possível chamar outras funções a partir de implementações escritas em outra linguagem de programação.
  • No futuro:
    • Será possível chamar funções de outros projetos da Wikimedia e integrar seus resultados na página.
    • Será possível utilizar dados do Wikidata em funções.
    • It will be possible to call data sets from Commons Data namespace.

Como o Wikifunções é multilíngue?

Wikifunções e Wikipédia abstrata são multilíngues de várias maneiras diferentes que não impactam entre si:

  • Wikifunções é multilíngue em termos de conteúdo e interface de usuário. Os usuários podem ler e chamar funções em qualquer linguagem natural. Aqui está a função “juntar string” em inglês, polonês e hebraico, e está disponível em muitos outros idiomas.
  • Contributors can edit and improve Wikifunctions using their language. Even implementations can be edited in the natural language of the contributor. For example, the composition of the “and” function can be edited in German, English, or any other of about 300 languages.
  • Wikifunctions functions can be used to create results for any natural language. The community is creating a growing number of functions to support the generation of text in many natural languages. We have functions for Breton, Rohingya, English, and many other languages.
  • Functions in Wikifunctions can be implemented in various different programming languages. For example, the join function is implemented in both JavaScript and in Python.

Quais linguagens de programação o Wikifunctions suporta atualmente? Quais linguagens de programação serão suportadas no futuro?

Atualmente, o Wikifunctions oferece suporte a implementações escritas em JavaScript e Python. Planejamos adicionar suporte para mais linguagens de programação no futuro. Esperamos adicionar pelo menos mais uma linguagem de programação em 2024 (mas ainda não decidimos qual).

Como o Wikifunções será integrado a outros projetos?

Wikifunções é o primeiro passo para construir uma Wikipédia abstrata. Nosso foco no curto prazo será apoiar a comunidade e fazer melhorias com base no feedback. Simultaneamente, iniciaremos o processo de integração com a Wikipédia e o Wikidata, o que permitirá aplicações mais amplas na vida real e nos aproximará da visão da Wikipédia Abstrata.

Contributors will be able to call functions from Wikifunctions from within their wikis. For readers of the wiki, the result of the function call will be displayed. This can be used, for example, to calculate the age of a person, the population density based on population and area data from Wikidata, or to draw a graph and integrate it into a given article.

Outra opção para integrar a Wikifunções será integrar uma interface interativa de chamada de função em sua wiki. Isto poderia ser usado, por exemplo, em um artigo da Wikipédia para calcular dinamicamente o resultado de uma equação física com base em parâmetros fornecidos pelo leitor, desenhar e interagir com funções matemáticas, etc.

O que Wikifunctions não é?

Por favor, veja Wikifunções:O que Wikifunções não é para mais informações sobre isso.

Sob qual licença estarão as funções e o conteúdo derivado?

De acordo com a discussão que aconteceu no Meta entre novembro e dezembro de 2021, todas as contribuições para Wikifunções e os conteúdos mais amplos da Wikipédia abstrata serão publicados sob licenças livres. Em particular:

Ainda existem alguns pontos que precisarão ser abordados futuramente, como a licença do conteúdo gerado a partir da Wikipédia abstrata. Planejamos elaborar um documento mais abrangente com o Departamento Jurídico sobre como as pessoas podem reutilizar o código do Wikifunções da maneira mais simples possível, ao mesmo tempo em que aderem à licença.

Contribuindo

Sou novo aqui. O que posso fazer e como posso ajudar?

Bem-vindo! Estamos muito felizes em ter você aqui! Existem muitas oportunidades para contribuir com o Wikifunções, desde a criação de novas funções até a melhoria e tradução de documentação. Se você está procurando formas de se envolver, recomendamos que talvez, dependendo do seu nível de conforto, você sugira uma nova função sobre um tema de seu interesse. Forneça alguns testes. Experimente uma implementação. Ajuda com traduções. Leia e melhore nossa documentação. Ajude a organizar a comunidade.

Como faço para criar uma nova função, implementação ou teste?

Para ver como criar uma nova função, implementação ou teste, veja Wikifunções:Introdução.

Para ver com mais detalhes como criar uma implementação, veja Wikifunções:Como criar implementações.

O que devo editar primeiro?

Se você fala vários idiomas, encontre funções que ainda não possuem rótulos e descrições em seus idiomas e ajude a adicioná-las.

If you have some interest in a domain that could feature functions in Wikifunctions, but yet doesn't, or if you have more ideas for functions, go to the page for suggesting new functions, and present your ideas.

Se você é um programador em JavaScript ou Python, talvez queira verificar funções que ainda não possuem implementações nessas linguagens de programação e tentar escrevê-las.

Onde posso obter ajuda?

Sua primeira parada deve ser o portal de ajuda onde você encontrará toda a documentação relacionada ao uso e edição da Wikifunções. Se ainda tiver dúvidas, poste uma mensagem no chat do projeto, alguém responderá sua pergunta.

Como classificamos ou categorizamos funções?

Tracked in Phabricator:
Task T285424

Por enquanto, a melhor maneira de classificar ou categorizar funções é manualmente através de páginas no domínio Wikifunções. Outra opção seria através da página de discussão da função em questão. Monitoraremos esses esforços e discutiremos com a comunidade quais alterações no sistema seriam úteis para esta tarefa.