Python em português. Sugestões de palavras-chave?

506 views
Skip to first unread message

Pedro Werneck

unread,
Mar 25, 2013, 11:42:03 PM3/25/13
to python...@googlegroups.com
Pessoal,


Ano passado comecei uma brincadeira de implementar um compilador de byte-code Python em português. A idéia é não só exercitar um pouco o desenvolvimento de um compilador, mas de também criar um interpretador que crianças possam usar para programar em português.

Hoje me lembraram desse projeto e coloquei disponível no github em https://github.com/pjwerneck/ptpy.

O maior abacaxi para resolver é chegar a uma boa versão das palavras-chave em português, e acho que a melhor maneira de fazer isso é pedindo sugestões da comunidade. Lembrando que o mais importante é que o código escrito com as palavras fique claro para uma criança.

Algumas traduções são óbvias, outras nem tanto. Segue uma lista daquelas que estão implementadas hoje, apenas para ilustrar a idéias.

       and - e
    assert - garantir
     break - interromper
     class - classe
  continue - continuar
       def - define
       del - apagar
      elif - senao
      else - else
    except - exceto
      exec - executar
   finally - finalmente
       for - para
      from - de
    global - global
        if - se
    import - importar
        in - em
        is - is
    lambda - lambda
       not - nao
        or - ou
      pass - passar
     print - exibir
     raise - raise
    return - retornar
       try - tentar
     while - enquanto


Duas que são particularmente complicadas são os grupos if/elif/else e try/except/finally/else. Se alguém tiver alguma sugestão boa para essas, já seria um excelente ponto de partida.

Ainda não consegui fazer o ply entender unicode, mas a princípio isso não deve limitar as opções. Considerem a possibilidade de usar acentos e caracteres especiais em tudo.


--
Pedro Werneck

--
---
Pedro Werneck

Laerte M. Rodrigues

unread,
Mar 25, 2013, 11:52:01 PM3/25/13
to python...@googlegroups.com
if/elif/else => se/senaose/senao (acho q fica mais didadico) 
uma outra forma que já vi em portugol é

se (condicao)
 // codigo
senao
  se //codigo
  senao

acho que da forma else if aninhada do portugol pode substituir de forma satisfatória (uma vez que isto é apenas didatico)

O try/except/finally já vi uma vez em um artigo que li em espanhol (vou tentar acha-lo) mas a ideia era

tente/erro/finalize


--
--
------------------------------------
Grupo Python-Brasil
http://www.python.org.br/wiki/AntesDePerguntar
 
<*> Para visitar o site do grupo na web, acesse:
http://groups.google.com/group/python-brasil
 
<*> Para sair deste grupo, envie um e-mail para:
python-brasi...@googlegroups.com
 
---
Você está recebendo esta mensagem porque se inscreveu no grupo "python-brasil" dos Grupos do Google.
Para cancelar a inscrição neste grupo e parar de receber seus e-mails, envie um e-mail para python-brasi...@googlegroups.com.
Para obter mais opções, acesse https://groups.google.com/groups/opt_out.
 
 



--
Grato,

Laerte Mateus Rodrigues
Mestre em Informática -- PUC Minas
Doutorando em Bioinformática -- UFMG

Juan Lopes

unread,
Mar 26, 2013, 12:06:41 AM3/26/13
to python...@googlegroups.com
2013/3/26 Pedro Werneck <pjwe...@gmail.com>:
> Ano passado comecei uma brincadeira de implementar um compilador de
> byte-code Python em português. A idéia é não só exercitar um pouco o
> desenvolvimento de um compilador, mas de também criar um interpretador que
> crianças possam usar para programar em português.

Estive fazendo uma brincadeira parecida recentemente, mas era pra uma
linguagem própria e eu estava tentando implementar tudo vanilla (só
usei regexes para o scanner).

Parei na hora que percebi que o formato do lnotab é uma cama de gato,
e isso me desanimou bastante.

https://github.com/juanplopes/dojo-lang

--
https://github.com/juanplopes

frederico Batista

unread,
Mar 26, 2013, 1:35:16 AM3/26/13
to python...@googlegroups.com
elif pode ser 'ese'
except pode ser 'a menos que' - amq
del pode ficar 'del' como em 'deletar'
def pode ficar 'def' como 'definir'
break como 'quebra'? interromper é melhor, mas quebra é menor e é usando em outras coisas, como quebra de página.
finally pode ser 'logo'
from - 'de' é bom, mas talvez 'a partir' possa ser considerado também. gera menos ambiguidade 
is pode ser 'é'?


       and - e
    assert - garantir
     break - interromper
     class - classe
  continue - continuar
       def - define
       del - apagar
      elif - senao / 

--

Luiz Armesto

unread,
Mar 26, 2013, 10:05:41 AM3/26/13
to python...@googlegroups.com
Tenho 3 sugestões:

* Como todos os verbos estão no infinitivo, acho que o "def" deveria ser "definir", também no infinitivo.
* Acho que "senao" deveria ser a tradução do "else" e não do "elif", o "elif" poderia ser "senaose", como o Laerte comentou.
* Não me agrada "return" como "retornar", prefiro "devolver", afinal a função não regressa a lugar algum, mas sim devolve algum objeto. (return pode ter o sentido de responder, mas em português retornar não tem esse sentido).

[]'s


2013/3/26 Pedro Werneck <pjwe...@gmail.com>
--
--
------------------------------------
Grupo Python-Brasil
http://www.python.org.br/wiki/AntesDePerguntar
 
<*> Para visitar o site do grupo na web, acesse:
http://groups.google.com/group/python-brasil
 
<*> Para sair deste grupo, envie um e-mail para:
python-brasi...@googlegroups.com
 
---
Você está recebendo esta mensagem porque se inscreveu no grupo "python-brasil" dos Grupos do Google.
Para cancelar a inscrição neste grupo e parar de receber seus e-mails, envie um e-mail para python-brasi...@googlegroups.com.
Para obter mais opções, acesse https://groups.google.com/groups/opt_out.
 
 



--
Luiz Armesto

http://stoa.usp.br/luizarmesto/
luiz.a...@gmail.com (email, gtalk, msn)

OpenPGP key: 76420481

Bruno Rocha

unread,
Mar 26, 2013, 10:12:48 AM3/26/13
to python...@googlegroups.com

Veja como foi feito na linguagem coral:  https://github.com/nsigustavo/coral

Allan Douglas R. de Oliveira

unread,
Mar 26, 2013, 10:53:02 AM3/26/13
to python...@googlegroups.com
Não era melhor tudo no imperativo? execute, garanta, exiba, tente, importe...
Desta forma fica mais claro para a criança (mesmo que inconscientemente) que estamos usando uma linguagem imperativa, isto é, que estamos dizendo passo a passo para o computador o que ele deve fazer.

2013/3/26 Pedro Werneck <pjwe...@gmail.com>

Alysson Gonçalves de Azevedo

unread,
Mar 26, 2013, 11:08:20 AM3/26/13
to python...@googlegroups.com
Talvez...

        if - se
      elif - ouse
      else - senao
        is - eh
     raise - causar (no sentido de causar erro)




Alysson Gonçalves de Azevedo - (11) 984 917 730

"É curioso como as pessoas ficam confusas quando a frase não terminam do jeito que elas periquito."


Em 26 de março de 2013 00:42, Pedro Werneck <pjwe...@gmail.com> escreveu:
--

Leonardo Santagada

unread,
Mar 26, 2013, 11:11:08 AM3/26/13
to python...@googlegroups.com

2013/3/26 Bruno Rocha <rocha...@gmail.com>

Veja como foi feito na linguagem coral:  https://github.com/nsigustavo/coral

Essa coral parece bastante interessante, mas será que funciona? Uma outra ideia é fazer um pypy em português que ai podemos traduzir tudo inclusive mensagens de erro (se bem que é fácil fazer um wrapper pro binário do python que traduz as mensagens).


--

Leonardo Santagada

Felipe Mobus

unread,
Mar 26, 2013, 11:13:06 AM3/26/13
to python...@googlegroups.com
pergunta boba: seria muito difícil colocar acentos e afins nessas palavras reservadas?


2013/3/26 Leonardo Santagada <sant...@gmail.com>

--
--
------------------------------------
Grupo Python-Brasil
http://www.python.org.br/wiki/AntesDePerguntar
 
<*> Para visitar o site do grupo na web, acesse:
http://groups.google.com/group/python-brasil
 
<*> Para sair deste grupo, envie um e-mail para:
python-brasi...@googlegroups.com
 
---
Você está recebendo esta mensagem porque se inscreveu no grupo "python-brasil" dos Grupos do Google.
Para cancelar a inscrição neste grupo e parar de receber seus e-mails, envie um e-mail para python-brasi...@googlegroups.com.
Para obter mais opções, acesse https://groups.google.com/groups/opt_out.
 
 



--
Felipe Mobus
http://fmobus.wait4.org

Alysson Bruno

unread,
Mar 26, 2013, 11:14:17 AM3/26/13
to python-brasil
pypy em português-BR seria show!

paz e amor (love and peace),

Alysson Bruno
===============================================
Palmas(TO)
Brasil

Blog: http://abruno.com


=================================================================
Meu alterego Escritor:

Leia alguns contos que escrevo, não esqueça de me dar sua opinião: http://goo.gl/Wjn4p

=================================================================


2013/3/26 Leonardo Santagada <sant...@gmail.com>

--

Leonardo Santagada

unread,
Mar 26, 2013, 11:15:13 AM3/26/13
to python...@googlegroups.com

2013/3/26 Felipe Mobus <fmo...@gmail.com>

pergunta boba: seria muito difícil colocar acentos e afins nessas palavras reservadas?

no python padrão sim, mas se a gramatica com ply supor utf-8 fica fácil


--

Leonardo Santagada

Renato Pereira

unread,
Mar 26, 2013, 11:19:25 AM3/26/13
to python...@googlegroups.com
Allan, por outro lado, estamos escrevendo instruções, como uma receita: "1º passo: importar math; 2º passo: definir tal coisa, ..."

Eu gosto do estilo proposto na Coral, que o Bruno lembrou, acho interessante ter mais de uma forma de executar um comando. Mas se a linguagem vai pra esse sentido, acredito que uma linguagem de chatterbots possa ser mais efetiva.

Weneck, também tem o ``else`` do ``for``. 

O "tente/a menos que" fica interessante sem nada além disso, mas e no caso como "A menos que Exception como e"? Talvez um simples "tente/exceção/finalize" resolva (já é auto-explicativo o uso de Exceções).



2013/3/26 Allan Douglas R. de Oliveira <alland...@gmail.com>
--
--
------------------------------------
Grupo Python-Brasil
http://www.python.org.br/wiki/AntesDePerguntar
 
<*> Para visitar o site do grupo na web, acesse:
http://groups.google.com/group/python-brasil
 
<*> Para sair deste grupo, envie um e-mail para:
python-brasi...@googlegroups.com
 
---
Você está recebendo esta mensagem porque se inscreveu no grupo "python-brasil" dos Grupos do Google.
Para cancelar a inscrição neste grupo e parar de receber seus e-mails, envie um e-mail para python-brasi...@googlegroups.com.
Para obter mais opções, acesse https://groups.google.com/groups/opt_out.
 
 



--
==============================================

Renato de Pontes Pereira (renatopp)
- Mestrando em Ciência da Computação - UFRGS
- http://inf.ufrgs.br/~rppereira
- renato.ppontes at gmail.com
- rppereira at inf.ufrgs.br

Pedro Werneck

unread,
Mar 26, 2013, 11:31:01 AM3/26/13
to python...@googlegroups.com
Frederico,

Eu preferia evitar abreviações e usar apenas uma palavra para cada keyword, porque usar várias palavras pode levar a erros muito crípticos caso apenas uma delas esteja errada. Pode gerar uma expressão errada, mas que ainda seja sintaxe válida e dar um NameError ou algo inesperado.


Luiz,

Não sei o quanto a consistência é importante nisso, mas concordo que "definir" fica melhor. Concordo também com "devolver", seu argumento faz sentido.

A tradução do if/elif/else é com certeza o maior abacaxi a descascar nisso. A melhor opção parece ser a do se/ouse/senão mesmo, mas esse "ouse" não me agrada.










2013/3/26 Bruno Rocha <rocha...@gmail.com>

Veja como foi feito na linguagem coral:  https://github.com/nsigustavo/coral

--
--
------------------------------------
Grupo Python-Brasil
http://www.python.org.br/wiki/AntesDePerguntar
 
<*> Para visitar o site do grupo na web, acesse:
http://groups.google.com/group/python-brasil
 
<*> Para sair deste grupo, envie um e-mail para:
python-brasi...@googlegroups.com
 
---
Você está recebendo esta mensagem porque se inscreveu no grupo "python-brasil" dos Grupos do Google.
Para cancelar a inscrição neste grupo e parar de receber seus e-mails, envie um e-mail para python-brasi...@googlegroups.com.
Para obter mais opções, acesse https://groups.google.com/groups/opt_out.
 
 



--
---
Pedro Werneck

Pedro Werneck

unread,
Mar 26, 2013, 11:32:15 AM3/26/13
to python...@googlegroups.com
Exato. O ply usa o módulo re, então teoricamente não deveria haver problemas, mas ainda não experimentei. Eu também prefiro poder usar "é" e "não", e em hipótese alguma "eh".


2013/3/26 Leonardo Santagada <sant...@gmail.com>

--
--
------------------------------------
Grupo Python-Brasil
http://www.python.org.br/wiki/AntesDePerguntar
 
<*> Para visitar o site do grupo na web, acesse:
http://groups.google.com/group/python-brasil
 
<*> Para sair deste grupo, envie um e-mail para:
python-brasi...@googlegroups.com
 
---
Você está recebendo esta mensagem porque se inscreveu no grupo "python-brasil" dos Grupos do Google.
Para cancelar a inscrição neste grupo e parar de receber seus e-mails, envie um e-mail para python-brasi...@googlegroups.com.
Para obter mais opções, acesse https://groups.google.com/groups/opt_out.
 
 



--
---
Pedro Werneck

Pedro Werneck

unread,
Mar 26, 2013, 11:55:13 AM3/26/13
to python...@googlegroups.com
Bem lembrado... o else do for e do except são outro abacaxi, porque duvido que teremos uma palavra em português que resolva para os trẽs casos, if/else, for/else e except/else, então vai ter que ser implementado como um símbolo diferente no lexer e diferenciar no parser ou mesmo no compilador.





2013/3/26 Renato Pereira <renato....@gmail.com>



--
---
Pedro Werneck

Pedro Werneck

unread,
Mar 26, 2013, 12:13:35 PM3/26/13
to python...@googlegroups.com

Seguindo as sugestões dadas até agora...


As que parecem ponto pacífico (considerando a idéia do Luiz de manter os verbos no infinitivo):

    assert - garantir
       and - e
  continue - continuar
     class - classe
    import - importar
      exec - executar
    global - global
        or - ou
     while - enquanto
       try - tentar
        in - em
       for - para
      from - de


As que têm várias opções boas:

     break - sair, interromper, quebrar
       def - definir, funcao, metodo (me agrada usar a idéia do Coral, funcao, metodo, mas ainda prefiro que a criança veja a função como apenas um bloco de código reaproveitável com nome, não como algo especial)
       del - apagar, deletar (prefiro apagar. deletar é um neologismo que eu mesmo prefiro evitar)
   finally - finalizar
     print - exibir, mostrar (não acho imprimir adequado para crianças, que pode achar ter algo a ver com a impressora... aliás, por que ainda usamos isso e temos uma tecla print screen no teclado? :p )
    return - devolver, retornar, responder
   pass - ignorar, passar


As que ainda não tem nenhuma opção boa:

  except
  lambda
  raise


As que têm uma opção boa, se não houver problemas com caracteres acentuados:

 is - é
 not - não
 

Os problemáticos:

if/elif/else - se/ou se/senão (parece a melhor opção, mas preferia evitar usar duas palavras)

try/except/finally/else - tentar/?/finalizar/?






2013/3/26 Pedro Werneck <pjwe...@gmail.com>



--
---
Pedro Werneck

Renato Pereira

unread,
Mar 26, 2013, 12:19:01 PM3/26/13
to python...@googlegroups.com
Outra opção para o except é "conter" no sentido de não deixar uma exceção escapar (como um "catch").

Raise: 



2013/3/26 Pedro Werneck <pjwe...@gmail.com>

Matheus Lima

unread,
Mar 26, 2013, 1:51:02 PM3/26/13
to python...@googlegroups.com
Pedro Werneck,

Tem alguma referencia das APIS que voce ta usando pra fazer o compilador? Ou alguma referência explicando o design do projeto?

Já fiz um compilador pra uma linguagem minha, mas usei outras ferramentas de outra linguagem, acabei me perdendo um pouco nesse código.
Att,

Matheus dos Santos Lima     

Pedro Werneck

unread,
Mar 26, 2013, 2:07:44 PM3/26/13
to python...@googlegroups.com
Matheus,

Tem a documentação do Ply. http://www.dabeaz.com/ply/ply.html 

O design é bem feijão-com-arroz, não tem muito mistério. O módulo p_lexer gera os tokens, o p_parser gera a ast a partir dos tokens e o p_compiler gera byte-code python a partir da ast.


2013/3/26 Matheus Lima <mathe...@gmail.com>



--
---
Pedro Werneck

Álvaro Justen [Turicas]

unread,
Mar 26, 2013, 2:08:36 PM3/26/13
to python...@googlegroups.com
Legal o trabalho, Werneck! :)
Uma coisa que pensei foi em trocar verbos no infinitivo: "exiba" em
vez de "exibir", "retorne" em vez de "retornar"... para mim fica mais
"legível" ("se x é maior que 3, exiba 'maior', senão, exiba 'menor ou
igual'").
Uma coisa interessante também seria brincar de mudar os operadores
para palavras ("é maior que", "é menor que", "não é menor que" etc.).

[]s

2013/3/26 Pedro Werneck <pjwe...@gmail.com>:
> --
> --
> ------------------------------------
> Grupo Python-Brasil
> http://www.python.org.br/wiki/AntesDePerguntar
>
> <*> Para visitar o site do grupo na web, acesse:
> http://groups.google.com/group/python-brasil
>
> <*> Para sair deste grupo, envie um e-mail para:
> python-brasi...@googlegroups.com
>
> ---
> Você está recebendo esta mensagem porque se inscreveu no grupo
> "python-brasil" dos Grupos do Google.
> Para cancelar a inscrição neste grupo e parar de receber seus e-mails, envie
> um e-mail para python-brasi...@googlegroups.com.
> Para obter mais opções, acesse https://groups.google.com/groups/opt_out.
>
>



--
Álvaro Justen "Turicas"
http://blog.justen.eng.br http://twitter.com/turicas
http://CursoDeArduino.com.br http://github.com/turicas
+55 21 9898-0141

Adorilson Bezerra de Araujo

unread,
Apr 3, 2013, 8:07:54 AM4/3/13
to python...@googlegroups.com
Olá Werneck,

já dei essa sugestão na outra thread, mas vi agora que tem essa, então vou reproduzir para ficar no contexto e fazer algum complemento.

Quanto às instruções verbais. Prefiro o modo imperativo ao infinitivo. Gosto da ideia de mandar o computador fazer as coisas para mim. :D
Acho que isso tem um efeito psicológico positivo em quem está aprendendo.

Se o foco é crianças (e talvez mesmo que não fosse), então acho que poderia-se evitar abreviações.
def -> defin[ir|a]
if/elif/else -> se/senao se/senao

O "senao se" seria apenas uma flexibilização para permitir o "se" na mesma linha do "senão", e não duas palavras.
Para casos em que forem necessários duas palavras, pode-se fazer como o G-Portugol[0], que usa um hifen entre elas (fim-enquanto, fim-se).

E talvez você consiga um resultado melhor se pensar em uma linguagem em pt_br com a sintaxe do Python no lugar
de um Python em pt_br (onde seria mais fiel a uma tradução das keywords uma-a-uma), isso lhe daria mais liberdade para adaptações como acima.


Em 26 de março de 2013 00:42, Pedro Werneck <pjwe...@gmail.com> escreveu:
--
--
------------------------------------
Grupo Python-Brasil
http://www.python.org.br/wiki/AntesDePerguntar
 
<*> Para visitar o site do grupo na web, acesse:
http://groups.google.com/group/python-brasil
 
<*> Para sair deste grupo, envie um e-mail para:
python-brasi...@googlegroups.com
 
---
Você está recebendo esta mensagem porque se inscreveu no grupo "python-brasil" dos Grupos do Google.
Para cancelar a inscrição neste grupo e parar de receber seus e-mails, envie um e-mail para python-brasi...@googlegroups.com.
Para obter mais opções, acesse https://groups.google.com/groups/opt_out.
 
 



--
Adorilson Bezerra

Atenção: Este e-mail pode conter anexos no formato ODF (Open Document Format)/ABNT (extensões odt, ods, odp, odb, odg). Antes de pedir os anexos em outro formato, você pode instalar gratuita e livremente o BrOffice (http://www.broffice.org) ou o seguinte Plugin para Microsoft Office (http://www.sun.com/software/star/odf_plugin/get.jsp).

Alysson Gonçalves de Azevedo

unread,
Apr 3, 2013, 8:17:29 AM4/3/13
to python...@googlegroups.com
Falando nisso...
Acredito que seria considerar não apenas português brasileiro, mas considerar também o pt_pt, entre outros, assim ficaria um negócio pra qualquer português.
Mas como eu não sei nada de pt_pt, não sei dizer se há alguma das palavras listadas acima que seja apenas falada no Brasil. Provavelmente não, mas se aparecer alguma, acho que seria bom evitá-la.



Alysson Gonçalves de Azevedo - (11) 984 917 730

"Anarcho-syndicalism is a way of preserving freedom." - Monty Python

Mateus Caruccio

unread,
Apr 3, 2013, 10:08:38 AM4/3/13
to python...@googlegroups.com
My 2 cents:

tente:
   falhar Exception()
falha: Exception:
   imprime('erro')
sucesso:
   imprime('ok')

Mateus Caruccio

unread,
Apr 3, 2013, 7:56:27 PM4/3/13
to python...@googlegroups.com
Aproveitando a onda, que tal implementar ER embutida na sintaxe da linguagem?

Algo estilo perl/awk:

if /^GET (.*)/:
   print 'arquivo solicitado:', $1
elif /^POST ([^?]+)?*(.*)/:
   print 'arquivo enviado:', $1, ', query-string:', $2

Pedro Werneck

unread,
Apr 3, 2013, 11:31:32 PM4/3/13
to python...@googlegroups.com
1º de abril?


2013/4/3 Mateus Caruccio <mat...@caruccio.com>
--
--
------------------------------------
Grupo Python-Brasil
http://www.python.org.br/wiki/AntesDePerguntar
 
<*> Para visitar o site do grupo na web, acesse:
http://groups.google.com/group/python-brasil
 
<*> Para sair deste grupo, envie um e-mail para:
python-brasi...@googlegroups.com
 
---
Você está recebendo esta mensagem porque se inscreveu no grupo "python-brasil" dos Grupos do Google.
Para cancelar a inscrição neste grupo e parar de receber seus e-mails, envie um e-mail para python-brasi...@googlegroups.com.
Para obter mais opções, acesse https://groups.google.com/groups/opt_out.
 
 



--
---
Pedro Werneck

Filipe Cifali

unread,
Apr 3, 2013, 11:55:09 PM4/3/13
to python...@googlegroups.com
Sugestões para as que faltam:  

  except - A não ser que / o mais próximo que pensei
  lambda - nada... qual seria o conceito mais simples para explicar lambda em uma palavra? "gerador anonimo de funções"? Apesar de ser um termo complicado, não seria mais interessante deixar desde modo esse termo?
  raise - criar / gerar 
[ ]'s

Filipe Cifali Stangler

Douglas Camata

unread,
Apr 4, 2013, 2:37:27 AM4/4/13
to python...@googlegroups.com
Para Python em português, tem o Coral[0] também.



2013/4/4 Filipe Cifali <cifali...@gmail.com>



--
Douglas Camata
Graduando em Ciência da Computação (UENF)

Skype: douglas_camata
-----------------------------------
Linux User #509211

Moises Trovó

unread,
Apr 8, 2013, 1:47:30 PM4/8/13
to python...@googlegroups.com
Achei muito legal esse esquema da linguagem Coral, só nao entendi muito bem como ela foi implementada, é do mesmo jeito que você está tentando fazer essa sua Pedro?

Pedro Werneck

unread,
Apr 8, 2013, 1:57:00 PM4/8/13
to python...@googlegroups.com
Moises,


Não. A Coral traduz as palavras-chave e executa o código Python resultante. O meu projeto é um compilador que gera byte-code Python a partir da linguagem definida em português.


2013/4/8 Moises Trovó <moises...@gmail.com>



--
---
Pedro Werneck

Jociel Andrade

unread,
Apr 8, 2013, 6:40:56 PM4/8/13
to python...@googlegroups.com
Werneck,

Parabéns pela iniciativa.

No caso do try, sugiro a estrutura abaixo:

tente:
   lance Erro()
caso: Erro:
   exiba('erro')
finalmente:
   exiba('ok')


O "lance" tem sentido de lançar, assim como "throw" em Java.
No caso do "return" não gostei do "devolver"... com esse termo parece que se está devolvendo algo que obteve antes... gostei mais do "retornar" mesmo... ou melhor "retorne".
Também gosto das palavras no imperativo e além disso escreve-se menos. :)


--

Adorilson Bezerra de Araujo

unread,
Apr 13, 2013, 3:10:44 PM4/13/13
to python...@googlegroups.com
Em 4 de abril de 2013 00:55, Filipe Cifali <cifali...@gmail.com> escreveu:
Sugestões para as que faltam:  

  except - A não ser que / o mais próximo que pensei
  lambda - nada... qual seria o conceito mais simples para explicar lambda em uma palavra? "gerador anonimo de funções"? Apesar de ser um termo complicado, não seria mais interessante deixar desde modo esse termo?

Mas não se trata exatamente de explicar um termo. Mas definirmos um outro termo que um nativo de português entenda a mesma coisa que um nativo de inglês entende quando escuta "lambda".

Certamente que quando um nativo de ingles escuta "lambda" pela primeira vez, ele solta um "WTF?". Assim, acho que poderia ficar lambda mesmo, já que lamda é a tradução de lambda. ;)



--

Adorilson Bezerra de Araujo

unread,
Apr 13, 2013, 3:21:15 PM4/13/13
to python...@googlegroups.com
Em 8 de abril de 2013 19:40, Jociel Andrade <jca...@gmail.com> escreveu:
Werneck,

Parabéns pela iniciativa.

No caso do try, sugiro a estrutura abaixo:

tente:
   lance Erro()
caso: Erro:
   exiba('erro')
finalmente:
   exiba('ok')


O "lance" tem sentido de lançar, assim como "throw" em Java.

Quando estávamos atualizando o tutorial do Python, esse tinha sido a minha proposta, para explicar o raise, usando essa mesma justificativa. Mas o Ramalho disse que o Guido definiu o raise pensando em um bandeira de futebol, que *levanta* a bandeira indicando que algo aconteceu. Então, no tutorial Python traduzimos raise como levantar.
 
No caso do "return" não gostei do "devolver"... com esse termo parece que se está devolvendo algo que obteve antes... gostei mais do "retornar" mesmo... ou melhor "retorne".

Também tem uma predileção pelo "retorne", mas no tutorial do Python, o return é explicado (não traduzido) com "devolvendo". Acho que isso poderia ser levado em consideração, facilitaria na transição o Python.


d4n1

unread,
Jun 5, 2013, 9:13:17 AM6/5/13
to python...@googlegroups.com
Cara já olhou o projeto coral? É o Python "traduzido" para o portugues, bem interessante.



Em 5 de junho de 2013 07:18, Renato Inhaca <rein...@gmail.com> escreveu:
Uma opção interessante de palavras pode ser visualizada no projeto Blockly do Google (ou no Scratch do MIT) que tem a opção de tradução.
Aliás, o Blockly e o Scratch são ótimas opções para o ensino de programação para crianças! Programar pequenos códigos torna-se uma brincadeira com eles.
Abraço!



--
Daniel Melo <d4n1 :>

Renata Carreira

unread,
Jun 5, 2013, 9:13:52 AM6/5/13
to python...@googlegroups.com
Alguém já fez algo do tipo, o Coral[1]. De qualquer forma, é uma iniciativa bem legal. Dá uma olhada lá.

[1]https://github.com/nsigustavo/coral

Renata.

Filipe Cifali

unread,
Jun 5, 2013, 9:43:03 AM6/5/13
to python...@googlegroups.com
Gente, seria interessante ler a thread toda antes de responder. Com todo o respeito. 


[ ]'s

Filipe Cifali Stangler

Vinicius Assef

unread,
Jun 5, 2013, 9:51:40 AM6/5/13
to python...@googlegroups.com
Coral está parada há um tempo.

Estou em contato com o Gustavo Rezende (autor do projeto), pois
pretendo usá-la em uma iniciativa de ensino. Mas, por enquanto, não
está usável.

Ela se baseia no IPython, que sofreu mudanças e o projeto quebrou. Tá
me faltando tempo pra botar a mão nele.



2013/6/5 Renata Carreira <re.ca...@gmail.com>:

Bruno Rocha

unread,
Jun 5, 2013, 2:26:09 PM6/5/13
to python...@googlegroups.com
não seria possivel utilizar "se-nao", "para-cada" pois o "-" seria interpretado como o sinal de menos. "se - nao".


2013/6/5 William Barbosa <wbs.de...@gmail.com>
O máximo de sugestão que conseguir chegar (parte baseado no que já falaram), segue abaixo (código só exemplificando):

tente:
    para-cada A na lista:
        se A > 0:
            devolva 1
        ou-se A < 0:
            devolva -1
        se-nao
            interrompa
    se-nao:
        lancar Erro()
devolva A
caso (Erro em err):
exiba(err.descricao)
se-nao:
exiba('Ok')
no-final:
exiba('Até mais')

William Barbosa

unread,
Jun 5, 2013, 2:39:18 PM6/5/13
to python...@googlegroups.com
Eu teria que analisar o código direito pra ver, mas acho que depende da ordem a qual ele trata isso.
Porque me parece que o tratamento dos sinais é parecido com o das palavras reservadas, e é substituído por um tolkien/símbolo ou algo do tipo. Pela ordem que vi rapidamente no github a prioridade é das palavras em cima dos operadores.
Como disse, não vi o código direito, posso estar falando groselha.

William Barbosa

unread,
Jun 5, 2013, 2:47:45 PM6/5/13
to python...@googlegroups.com
*substituído por um token/símbolo

J.R.R. não tem nada ver com isso, erro meu :)


Você recebeu esta mensagem porque está inscrito em um tópico do grupo "python-brasil" dos Grupos do Google.
Para cancelar a inscrição neste tópico, acesse https://groups.google.com/d/topic/python-brasil/wt-kSVsvlkM/unsubscribe?hl=pt-BR.
Para cancelar a inscrição neste grupo e todos os seus tópicos, envie um e-mail para python-brasi...@googlegroups.com.

Ovidio Marinho

unread,
Jun 5, 2013, 3:10:01 PM6/5/13
to python...@googlegroups.com
Vinicius tem uma intalação para windows do Coral?


      


         Ovidio Marinho Falcao Neto
                  ITJP.NET.BR
             ovid...@gmail.com 
               83   8826 9088 - Oi
               83   9336 3782 - Claro
                        Brasil
              

Ovidio Marinho

unread,
Jun 5, 2013, 3:45:06 PM6/5/13
to python...@googlegroups.com
Me deu um ero aqui de IPython.iplib ????

Alex

unread,
Jun 5, 2013, 4:17:58 PM6/5/13
to python...@googlegroups.com
A primeira coisa que veio a minha mente foi: Se é possível traduzir para português, porque não dar suporte a vários idiomas ?

A idéia é boa. A primeira linguagem de programação que tive contato, foi bem simples.
não existia simbolos como: >, <, ==
eram apenas palavras, mas em inglês,

Vinicius Assef

unread,
Jun 5, 2013, 6:42:11 PM6/5/13
to python...@googlegroups.com
Pois é, Ovidio.

Tem que mexer no bichinho pra consertar.

2013/6/5 Ovidio Marinho <ovid...@gmail.com>:

Ovidio Marinho

unread,
Jun 5, 2013, 10:22:49 PM6/5/13
to python...@googlegroups.com
Cara to mexendo mas tacomplicado: ta dando erro nisto from IPython import InteractiveShell mas quando rodo no meu python ta funcionando.


veja ai :

Type "help", "copyright", "credits" or "license" for more information.
>>> from IPython import InteractiveShell
>>> exit
Use exit() or Ctrl-D (i.e. EOF) to exit
>>> exit
Use exit() or Ctrl-D (i.e. EOF) to exit
>>> exit()
ovidio@ubuntu:~/Downloads$ icoral
Traceback (most recent call last):
  File "/usr/local/bin/icoral", line 9, in <module>
    load_entry_point('coral==0.1.1dev', 'console_scripts', 'icoral')()
  File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 337, in load_entry_point
    return get_distribution(dist).load_entry_point(group, name)
  File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 2279, in load_entry_point
    return ep.load()
  File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 1989, in load
    entry = __import__(self.module_name, globals(),globals(), ['__name__'])
  File "/usr/local/lib/python2.7/dist-packages/coral-0.1.1dev-py2.7.egg/coral/icoral.py", line 8, in <module>
    from IPython.iplib import InteractiveShell, ini_spaces_re
ImportError: No module named iplib

Reply all
Reply to author
Forward
0 new messages