![]() ![]() Cryptography tools, web servers, web clients, all kinds of protocol implementations, and so on. ![]() There are plenty of nice libraries coming by default with Erlang not mentioned here. I'm terrible at GUI stuff, so it's probably better for everyone I actually didn't cover that one. The Wx application is the new standard for multiplatform GUI writing with Erlang. It's similar to Javadoc, if you've heard of it. It supports annotations and ways to declare specific pages that allow you to build small websites to document your code. DocumentationĮDoc is a tool that lets you turn your Erlang modules into HTML documentation. To explore entire supervision trees for your nodes, appmon is your app. You can also use the Erlang debugger, but I do recommend DBG instead of that one. Top-like tools exist for Erlang, such as pman and etop. Most of them are built using the tracing BIFs of the language, funnily enough. ![]() The fprof and eprof tools can be used for time profiling, cprof for function calls, lcnt for locks, percept for concurrency, and cover for code coverage. ProfilingĮrlang comes with a good bunch of different profiling tools to analyze your programs and find all kinds of bottlenecks. They work only on OTP behaviourised processes, but they're often good enough to get going. The best about it? It's traceable within Erlang, so you can make Erlang programs that trace themselves! If you look into them and find them a bit hard to digest, you might be okay staying with the sys module's tracing functions. It also tends to work much better than any debugger for a concurrent language like Erlang. Messages, function calls, function returns, garbage collections, process spawning and dying, etc. DBG takes these BIFs and builds an app on top of them. Got a bug or some stack trace you can't make sense of? Turn on a few trace flags and the VM opens up to you. The Erlang VM is traceable inside and out. Here's a quick list: Tracing BIFs and DBG It's taken three years to bring it there, and I'm tired and glad it's over (what am I gonna do with all that free time, now?), but there are still plenty of topics I would have loved to cover. This site, if it were to be turned in dead tree form, would probably yield around 600 pages now. There's only so many topics I could cover without going over the top. Without the concerted efforts of everyone around Erlang, this site would probably have died after four or five chapters, left to be yet another useless website clogging the Internet's tubes. The Erlang community as a whole has been very welcoming to the work I've been doing with LYSE, helped make it known to readers (it's even on the official Erlang documentation and website!). If you've ever written me an e-mail telling me you'd buy me a beer, buy it to one of these guys instead they deserve it as their participation was way more thankless than mine. The biggest contributors in terms of time, advice, and general resources are all in this site's FAQ. There's been dozen of people helping in many ways. They helped me learn stuff, reviewed pages and pages of material for free, fixed my typoes, helped me get better at writing English and writing in General. ![]() I have to give a lot of thanks to the Erlang community in general. It drained a lot of energy, cost me a decent chunk of money and time to run, but it paid back tenfold in most ways imaginable. It allowed me to travel around the world and meet a crapload of interesting people. This site, coupled with some luck and some more work, allowed me to get jobs, both as an Erlang trainer, course material writer, and developer. It took me three years of hard work while studying and working full time, and juggling every day's life needs (if I had children, they'd have died of neglect a while ago now). Before I get to point you to a bunch of interesting topics that you could explore, were you to pick Erlang as a development language you want to learn more about, I'd like to take a few lines to say writing Learn You Some Erlang has been one hell of a ride. I see you chose to read the conclusion after all. However, you might prefer reading it with syntax highlighting, which requires Javascript! Conclusion A Few Words Hey there, it appears your Javascript is disabled. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |