sodapopcan
I apologize if this has been discussed before, and I’m sure it probably has been, but it’s very hard to search for. I’ve been putting off asking about it for a while now, though, so I’m curious about this pattern:
_ = SomeMod.some_func("some_arg")
I’ve seen this in the docs before but the most prominent example I know of is the first two lines of the first function definition in Phoenix, here. If you aren’t a fan of clicking it looks like this:
# Warm up caches
_ = Phoenix.Template.engines()
_ = Phoenix.Template.format_encoder("index.html")
The best explanation I can come up with is that it’s signalling a side-effect. Is that it?? If it is, I find that kind of really nice, although perhaps at the same time it’s warmed me up a bit to typing (in Elixir) as it took me way to long to figure that out, lol.
But really, it is that it? If not, what’s up with this?
Trending in Discussions
Hey folks,
I wanted to share with you a project I’ve been working on for a while: It’s an Open Source (AGPLv3) newsletter tool. Think Ma...
New
There has been a thread to discuss the Stack Overflow Developer Survey on this forum every year since 2018, so here’s yet another one for...
New
Hi there! :wave:
@frigidcode and I (but mostly him) have been running an Elixir Book club, we’re almost done with Designing Elixir Syste...
New
I love Elixir. It’s one of 2 programming languages I’ve ever fallen in love with.
But I don’t use it anymore.
Serverless was the promis...
New
Fly’s CEO posted this recently - Turn And Face The Strange · The Fly Blog
It says that Fly is going all-in on sprites, which is a worry ...
New
This was an interesting post by Jose. Curious to hear what others think. Evolving programming languages in the AI era - Dashbit Blog
Gen...
New
In my third year of college, around 2010, I found Erlang. A few years later, I found Elixir. I liked the ideas at once: many small proces...
New
Other Trending Topics
I fully migrated to my own harness from Anthropic/Gemini and I think it’s time to share it. Welcome DSH, the DeepSeek Harness, fully writ...
New
Hey. Is there anyone here who creates agents in their apps? Not talking about using agents, but creating them. I’m finding it pretty diff...
New
Beam Bots (or just BB for short) is a framework for building fault-tolerant robotics applications in Elixir using familiar OTP patterns. ...
New
With AI doing more of the implementation work, I’ve been wondering how much coding I should deliberately keep doing myself.
My main conc...
New
Emily is an Elixir library that runs Nx computations on Apple’s MLX. Install it as the default Nx backend and Nx, defn, Axon, Nx.Serving,...
New
(I just needed to vent somewhere and LinkedIn is full of hope, or hype, I’m not sure which exactly)
AI dream has many faces, but general...
New
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #library
- #deployment
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #elixirconf
- #channels
- #exunit
- #discussion
- #code-sync
- #podcasts
- #javascript
- #onsite
- #dialyzer
- #docker
- #authentication
- #ai
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #ecto-query
- #blog-post
- #elixirconf-us
- #elixir-ls
- #phoenix_html
- #iex
- #graphql
- #genstage
- #websockets
- #supervisor
- #advent-of-code
- #distillery
- #processes
- #elixirconf-eu
- #api
- #forms
- #security
- #hex










Showing Posts 1 to 4- Show Best Posts
- Show All (oldest first)
- Show All (newest first)
eksperimental
It was probably to avoid so kind of generated warning. If i see function that is not assigned or matched to anything I would assume it has a side effect, so I would not see the need for
_ =.dimitarvp
If you ignore a return value you get a warning, so people just assign to
_when they are really not interested in what’s returned. And since a number of CI/CD pipelines includewarnings_as_errors: true, you know.LostKobrakai
To focus the discussion. The warnings come from an (optional) dialyzer setting. That‘s why this approach is not present in all codebases, but just some.
hauleth
Yeah, I often use such pattern to mark that I run that piece of code for sole purpose of side effects and I do not care about return value. So it will not be perceived as unintentional omission, but deliberate choice of ignoring returned values.