[erlang-questions] How to make this work
Fred Hebert
mononcqc@REDACTED
Wed Aug 12 19:20:55 CEST 2015
On 08/12, Roelof Wobben wrote:
>Hello,
>
>Im trying this exercise from the programming erlang book.
>
>Roelof
>
Hi Roelof.
Honest advice here is that you really, really need to sit down and read
more carefully through the documentation you have at hand, and to try
experimenting with your programs a bit. We've been through this months
ago already.
Here's a quick list:
Feb 2015:
- http://erlang.org/pipermail/erlang-questions/2015-February/083087.html
Valid question from the exercise book, because too simple of a solution
was indeed too simple.
- http://erlang.org/pipermail/erlang-questions/2015-February/083162.html
correct implementations, but you confused strings and atoms. Those were
exercises from 'Erlang Programming' book. Atoms are introduced on p.19,
the exercises on p.44.
- http://erlang.org/pipermail/erlang-questions/2015-February/083197.html
This is a function again from Erlang Programming. The precise
implementation you are looking for for sum_acc/3 is on page 68, and is
not actually an exercise as mentioned
- http://erlang.org/pipermail/erlang-questions/2015-February/083217.html
You found a compile error for mismatching heads. I'm not sure when in
the book it is, but I'd like to show you the link
http://learnyousomeerlang.com/errors-and-exceptions#a-compilation-of-errors
where I compiled the common compile errors, with their explanation and
how to fix them.
- http://erlang.org/pipermail/erlang-questions/2015-February/083233.html
Valid enough question about list building, I have little to say here
- http://erlang.org/pipermail/erlang-questions/2015-February/083240.html
Error on the syntax of atoms, again introduced on p.19. The error *is*
a bit cryptic though
- http://erlang.org/pipermail/erlang-questions/2015-February/083301.html
Exercise from the Erlang programming book. Trying the guards you had
set in the shell with numbers would have revealed the problem directly
(as pointed out in the first response)
Fast forward to this month:
- http://erlang.org/pipermail/erlang-questions/2015-August/085382.html
I'll point you for some like this to the same learnyousomeerlang link
in the future, it's also there!
- http://erlang.org/pipermail/erlang-questions/2015-August/085410.html
The problem there was an unexported function. The error you saw was
probably something like 'undef'. In this case, and for other errors
happening at runtime, I'd like to redirect you to
http://learnyousomeerlang.com/errors-and-exceptions#run-time-errors
which includes descriptions for such errors and ways to fix them in
general. Note that the error is also described on page 70 of Erlang
Programming.
- http://erlang.org/pipermail/erlang-questions/2015-August/085419.html
Dialyzer errors are legitimately confusing for a newcomer!
- http://erlang.org/pipermail/erlang-questions/2015-August/085438.html
Valid question from 'make it work -> make it beautiful' as a progress
- http://erlang.org/pipermail/erlang-questions/2015-August/085496.html
This very thread. The content there is from Programming Erlang
(Armstrong). If it's the second edition, I don't have it, but in the
first edition, the syntax to functions is explained on page 42. In
Erlang programming (which you also have), it's on page 190, and in
Etudes for Erlang, which you have also looked at, they're explained in
chapter 7
(http://chimera.labs.oreilly.com/books/1234000000726/ch07.html)
Don't get me wrong, I appreciate people posting to the mailing list. The
thing is, I feel that it would be helpful for *your* learning as a whole
to make use of the resources you have rather than coming to the list as
often as you do. For one, the feedback loop and your progress will be
much faster!
Out of the 12 email threads I have linked here, at least 6 of them could
have been solved by re-reading the learning material you have in your
hands (because that's where you take exercises and examples from), or by
experimenting rapidly with the shell.
The other half were good questions to ask, so by all means, don't stop
asking questions. Just make sure that you're not using us as your own
private debugger!
Old timers from the industry will tell you stories of when they had to
take punched cards or hand-written programs, had to go to their
university department to make them run, wait hours or days before
finding if things were alright, and then repeating this over again for
every bug.
When you ask us to solve such problems for you while you have all the
information required, you might just be throwing yourself back 30-40
years in the past in terms of feedback loops!
You've got the material, the tools, and visibly the drive to do that
stuff. It's likely going to be simpler in the long run to make a few
experiments, run them, and see if you can figure it out (or go back and
re-read significant chapters in one of the many books you have on the
topic) than the time it takes for you to write an email and wait for a
response.
Regards,
Fred.
More information about the erlang-questions
mailing list