Fl4m3Ph03n1x
Background
I am reading “Functional Web Development with Elixir, OTP and Phoenix” and in the book the author makes a surprising statement:
(…) In order to shorten that runtime check on an %Island{} struct, let’s add an alias at the top of the module file:
alias IslandsEngine.Island
(…)
WHat?
Perhaps I am miss interpreting this, but what I understand is that by adding the alias of a struct to a module, we actually improve runtime speed on checks that use that struct.
I find this makes no sense at all. Using an alias only affects how the file is compiled, not how fast it runs on my machine.
Can someone explain this to me?
Trending in Questions
Hello!
Suppose you are building workflow (order / task / payment) processing system with the following requirements:
Each workflow con...
New
I’m aware of 2 such projects, are there others?
git: GitHub - team-alembic/realworld: A fullstack Phoenix LiveView application with back...
New
Hi all,
I’m working on a Phoenix project where I need to make external HTTP requests and I’m trying to choose between Req and HTTPoison....
New
How do I tell Hologram not to escape HTML when substituting into templates?
{Textile.render(@product.long_description)}
escapes the HTM...
New
I’d like to create a file with 600 permissions (rw-------), but there’s a race condition if I create it and then change the permissions. ...
New
Hi,
we run different LLM models across a cluster, with each node loading a configurable subset. Model-specific queues let nodes consume ...
New
When I use Mix.install with a git dependency, using git@github.com:... how do I change the SSH identity used?
I’ve got two Github accoun...
New
Other Trending Topics
Hey there,
I haven’t seen a list of useful Elixir specific skills for the popular AI tools yet so I’m starting one here with my first.
...
New
Hi everyone :waving_hand:
I wanted to share something I’ve been building — NowBlind, a random chat app designed to help people discover ...
New
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
(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
Localize is the next generation localisation library for Elixir. Think of it as ex_cldr version 3.0. The first version will be released ...
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
- #code-sync
- #discussion
- #podcasts
- #javascript
- #onsite
- #dialyzer
- #docker
- #authentication
- #ai
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #blog-post
- #elixirconf-us
- #ecto-query
- #elixir-ls
- #phoenix_html
- #iex
- #graphql
- #genstage
- #websockets
- #supervisor
- #advent-of-code
- #distillery
- #elixirconf-eu
- #processes
- #security
- #api
- #forms
- #performance










Showing Posts 1 to 9- Show Best Posts
- Show All (oldest first)
- Show All (newest first)
NobbZ
We need to ask the author what they actually meant…
An
aliasdoes nothing but “renaming” an atom during compile time:LostKobrakai
I’d imagine by runtime check the author might have meant something like
def function(%Island{} = island), where the alias quite literally shortens what you have to write in the parameter of the function.Fl4m3Ph03n1x
Yes, it shortens what I have to write, but as far as I know that has no runtime performance implications whatsoever.
This is why this paragraph seemed so odd to me.
I may be wrong, but he is not active in this forum, at least I don’t remember ever seeing him.
NobbZ
I’m not actually sure who the author is, therefore I used neutral “they”…
easco
The author is Lance Halvorsen @lance. He means that he is going to shorten the number of characters you have to type to write the code that happens to be a runtime check.
gregvaughn
He’s not particularly active here, but he’s replied to you personally before Jan 18
My interpretation of the quoted statement is “runtime check” means pattern matching and “shorten” means typing fewer characters.
lance
Hi Everybody,

Some of you have accurately interpreted the line already. To be extra clear, what I meant by “shorten” is “decrease the number of characters” and not “speed up”. Sorry for the confusion!
Fl4m3Ph03n1x
Thanks for the help!
I will remember that you are more active than I thought
lance
I probably should actually be more active here. I need more hours in the day, I guess.