kunsix Posted October 22, 2012 at 05:36 PM Report #480015 Posted October 22, 2012 at 05:36 PM Olá Sou novo e estou muito verde em programação em haskell não percebo como tenho de fazer as coisas no meu computador e fazer exercicios que são básicos. Eu gosto muito de computadores e da programação é uma coisa que sempre gostei mas começei agora e instalei o GHCi e com ele vem o WinGhci, no Ghci ainda vou fazendo umas coisas no WinGhci dá sempre erros ao definir funções, o meu professor usa mac e tem o acmas eu uso windows, que programa me ajudam. Eu tenho muitas duvidas se alguem me puder ajudar agadecia. Obrigado
mundo Posted October 22, 2012 at 07:23 PM Report #480028 Posted October 22, 2012 at 07:23 PM Não sou fã nem uso muito windows para programar, mas experimenta o notepad++ é capaz de dar
AJBM Posted October 22, 2012 at 07:42 PM Report #480032 Posted October 22, 2012 at 07:42 PM Boas! Tu programas directamente no Ghci ou utilizas o bloco de notas, e dava jeito também saber o erros que te da faz um print
pwseo Posted October 22, 2012 at 10:08 PM Report #480046 Posted October 22, 2012 at 10:08 PM acmas? Não será 'emacs'? De qualquer das formas, é como disse o AJBM: convém que digas que erros estás a obter. Além disso, o ghci não foi feito para programar directamente lá, embora seja possível definir funções e variáveis com facilidade; o ghci é um ambiente de teste para o qual carregas o código escrito num editor decente (emacs, vim, notepad++, entre outros), pronto a ser utilizado.
kunsix Posted October 23, 2012 at 02:50 PM Author Report #480092 Posted October 23, 2012 at 02:50 PM (edited) <interactive>:8:1: Not in scope: `funcao'Olá É o seguinte: Eu estou no WinGhci o que quero fazer é colocar lá isto, funcao :: Int -> Int funcao x = x^2 Quando coloco isto : funcao :: Int -> Int , aparece isto, <interactive>:8:1: Not in scope: `funcao' Não consiguo defenir nada. Edited October 23, 2012 at 02:50 PM by kunsix
AJBM Posted October 23, 2012 at 03:23 PM Report #480094 Posted October 23, 2012 at 03:23 PM (edited) Tens de gravar a funcao, faz isto let funcao x= x^2,e depois define a funcao Edited October 23, 2012 at 03:25 PM by AJBM
kunsix Posted October 23, 2012 at 03:31 PM Author Report #480097 Posted October 23, 2012 at 03:31 PM faço isso no GHci?
kunsix Posted October 23, 2012 at 03:58 PM Author Report #480108 Posted October 23, 2012 at 03:58 PM mas eu queria fazer isso no WINGHCI baixei o notepadd a ver se funciona
pwseo Posted October 23, 2012 at 04:00 PM Report #480109 Posted October 23, 2012 at 04:00 PM (edited) AJBM, Disseste-lhe para definir a função (com let) e depois definir a função novamente? kunsix, Como te disse acima, o ghci não é o local para escreveres esse código que mostraste. Existe forma de o fazer, mas não é o que tu queres. O que tu queres fazer e deves fazer é escrever esse código num ficheiro, guardá-lo nalgum sítio com a extensão .hs e carregá-lo no ghci com um comando do género: :load ficheiro.hs (com o caminho correcto para o teu ficheiro). Volto a dizer: o (win)ghci é um ambiente interactivo feito principalmente para testar código, não para o escrever. Como tal, existem diversas limitações quando se tenta definir símbolos no ghci (e é por isso que normalmente isso não se faz no ghci). Edited October 23, 2012 at 04:01 PM by pwseo
kunsix Posted October 23, 2012 at 06:22 PM Author Report #480132 Posted October 23, 2012 at 06:22 PM ok Alguem daqui me pode uma ajudinha, como por exepmlo começo a estudar e por onde devo praticar.
pwseo Posted October 23, 2012 at 06:57 PM Report #480134 Posted October 23, 2012 at 06:57 PM kunsix, Como já te disse, o código é escrito num editor de texto (exemplo: Notepad++) e guardado num ficheiro com extensão .hs. Depois carregas esse ficheiro com o comando :load do ghci. Percebeste esta parte? Agora o resto é estares atento nas aulas. Existem tutoriais bastante bons de Haskell por aí fora também (Learn You a Haskell For Great Good, por exemplo).
AJBM Posted October 23, 2012 at 07:02 PM Report #480135 Posted October 23, 2012 at 07:02 PM (edited) não era bem isso que eu queria dizer, ele usa o let funcao x=x^2 e depois consegue ver o tipo da função se ele fizer :t funcao da-lhe o funcao :: Num a => a -> a, ve este tutorial http://learnyouahaskell.com Edited October 23, 2012 at 07:03 PM by AJBM
pwseo Posted October 23, 2012 at 07:24 PM Report #480137 Posted October 23, 2012 at 07:24 PM (edited) Pois, mas ele não queria saber o tipo da função mas sim definir o tipo da função (e definir a função de seguida). Além disso, nunca se tinha falado no :t sequer. O problema do kunsix para já é saber como carregar código para o ghci. Edited October 23, 2012 at 07:25 PM by pwseo
kunsix Posted October 23, 2012 at 07:49 PM Author Report #480144 Posted October 23, 2012 at 07:49 PM ja arranjei esse o Leran You a Haskell For Great Good, o mal é o meu ingles que esta um pouco fraco. ja consegui fazer como diseram, guardei a função doubleMe x = x + x no notepad++ depois guardei o ficheiro em .hs e depois abri esse ficheiro com o ghci e fiz :l baby e ele abriu. Obrigado
pwseo Posted October 23, 2012 at 08:30 PM Report #480151 Posted October 23, 2012 at 08:30 PM Pronto, agora é estares atento às aulas então. E aprender inglês também é boa ideia, uma vez que a maior parte do conteúdo decente presente na web está em inglês, no que diz respeito a Haskell (e em geral quase todos os temas) 🙂
kunsix Posted October 23, 2012 at 08:57 PM Author Report #480157 Posted October 23, 2012 at 08:57 PM tenho aula teorica sexta, o fim de semana vai ser so estudar isto, eu gosto da materia. Qual a linguagem que se aprende mais de programação
pwseo Posted October 23, 2012 at 09:58 PM Report #480173 Posted October 23, 2012 at 09:58 PM Depende muito do que queres fazer no futuro, mas Haskell e C são as linguagens que se aprendem na Universidade do Minho no 1º ano (se andares lá). Outras linguagens conhecidas são C++, Java e Python. Uma particularmente boa para quem quer começar devagar e com calma é Pascal (embora muita gente não partilhe desta opinião). 1 Report
kunsix Posted October 24, 2012 at 05:07 PM Author Report #480281 Posted October 24, 2012 at 05:07 PM ok obrigado pela ajuda
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now