Just completed my first EVE Online bot... In Erlang. I have to say it's the perfect language for it, match clauses...

Just completed my first EVE Online bot... In Erlang. I have to say it's the perfect language for it, match clauses, update code live and supervise away unforeseen messages until your client is perfect.

So Jow Forums do you like Erlang?

Attached: Erlang_logo.svg.png (1200x1052, 41K)

Other urls found in this thread:

erlang.org/download/armstrong_thesis_2003.pdf
twitter.com/NSFWRedditImage

But do you make a profit?
How many paid accounts?

P.s. I prefer elixir

Yes, but I have no use-case for it.

I don't it's just a personal project for fun, it focuses on analyzing and exploiting the the market, doing the things I don't want to do:
>Finalize construction jobs
>Check the market and see what's popular
>Start new jobs depending on results
>Transport goods to various stations based
>Sell them at a competitive rate

Todo: some basic suicide ganking logic for Jita

ooooor you could have just used lua...
dont feel bad u didnt know.

>Mutability

Attached: disgusting.jpg (600x450, 71K)

but thats a good thing
local a = function()end
a = 1
whats wrong with that?
also its as fast as optimized c

I might be biased because of work - but having mutable variable is fuck when you're working with a complex multithreaded application. Erlang shares nothing and sends messages between processes so knowing your variable is safe and exactly where it is set makes for good software.

Guessing it is a pre-req to updating code on the fly too.

>play game
>use bot

Attached: oX4OKXbpBlHTrrimuHrRt4_GnH97i1xA6-j4nZM4QXU.jpg (617x729, 41K)

Read This
erlang.org/download/armstrong_thesis_2003.pdf

Elixir was an improvement except in syntax

If a game is bottable, it's not a game.

But the only thing elixir changes is syntax...

what the fucks the point of elixir? Just learn erlang. Do real programming and make cool AI not just webdev shit

>eve
>game

devastating slam on diablo 2 outta nowhere

>But the only thing elixir changes is syntax...
pipeline operator - ok you can count this as syntax but my point was the ruby-ish look
utf-8 strings and sigils as syntactic sugar for strings, some Jow Forumstar recently changed my mind on utf-8 being the ultimate encoding in favor of utf-32 but still think it's good to have support for various encodings, just not sure which is better for internal use
protocols (interfaces if OO or traits in Rust), I really like this one in any type system
macros and metaprogramming

Fuck are you saying? I was just saying that if you like elixir but don't like it's syntax you have a language, it's called erlang

>update code live
serious question, what's the use of that when we have docker

>Bot has bug
>Bot is probably doing something important
>Compile and run module.
And that's literally it. Why introduce another layer?

I think that it's a very interesting language I've been looking into it on the side. Any good resources for Learning Erlang?

lean you some erlang
erlang for a concurrent world
And finally erlang in anger

Varg.png
>stop wasting your life on a sunk-cost simulator

Erlang is pretty great. And with Elixir and LFE, there's few reasons not to use it. THERE ARE STILL PLACES WHERE ITS NOT GOOD AT THINGS BUT FUCK OFF WE'RE NOT CONCERNED WITH THOSE

any special use cases except embedded and systems programming where Erlang isn't a good option? I am asking sincerely since those are the only two times I could come up with

String processing, anywhere raw performance matters and gui shit

Any BEAM language will be shitty for any place you need raw, single-thread performance. Its not very good at that.
It is very good at parallel.

Think of Java or C as having one guy who'se pretty fast at doing things. He can get a lot done, but can only work on one thing at once.
BEAM languages, on the other hand, are like a whole flock of moderately trained highschool kids. Individually they arent that fast or great, but when you have 300 of them working on tasks, they can get a hell of a lot more done than the one guy.

>Not using golang

are you retarded?

Which BEAM will get me employed ?

Attached: 6JIEvif.png (1920x1080, 677K)

Why would I use golang? Sees less use than beam

Bean counter

Jow Forums doesn't program, it's full of larping NEETs.

Never expected to see such thread here. How do you do it. I know shit about erlang but do you just point and click based on coordinates of the HUD on a certain resolution using timers or do you read actual memory values to adjust? Also if you read actual memory values for results did you used one of those cheat engines or something to see the locations? Im genuinely ignorant about this.

>no matter how hard you cheat
>no matter how much time you waste
>you will always be living in the goon world
>as just another faggot waiting to be griefed

Bump. I'm curious about that too.

Where are you, based bot coder

Attached: 9ba36908b61adcc504c2ff9a633655b6--dark-fantasy-art-dark-art.jpg (700x1089, 99K)

I'd guess he is clicking at certain points of the screen. reading memory is a fast way to get your bot detected

also interested, answer OP

no not really.

hot code loading is a meme when you understand what it implies. most erlang features are literally inferior the myraid of solutions in a JVM product, but god forbid you use a language that's not only faster, because its concurrency model is threads and not weird virtual process abstractions, and you look like a pajeet code monkey.

Can erlang execute shell commands?

Freighter pilot spotted.

>update code live

that is neat

what tool allows you to do that?

sorry I'm a complete noob, all I can do is edit code during debugging, but that seems amazing

also: how did you interface with the client?

>ruining ice mining for everyone

Sorry guys, I had to sleep - I simply fired up wireshark and broke down the protocol bit by bit. Used a simple debugger on a vm through a vpn to break down some client challenges CCP has. It's slow as fuck to develop but every screen reader is detected instantly now. So well worth the effort.

Erlang is pretty cool in that it lets you jump into the vm live so you can see and set variables live as the program runs. To update you simply recompile the code that's all
-module(hitler).
bullshit()->
receive
{msg, Data, From} ->
From ! "ur a faget",
?MODULE:bullshit()
end.


Then when you've updated it you just run c(hitler). and you're good to go.