Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 171041
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 11, 20262026-05-11T12:55:01+00:00 2026-05-11T12:55:01+00:00

Would any experienced Erlang programmers out there ever recommend association lists over records? One

  • 0

Would any experienced Erlang programmers out there ever recommend association lists over records?

One case might be where two (or more) nodes on different machines are exchanging messages. We want to be able to upgrade the software on each machine independently. Some upgrades may involve adding a field to one (or more) of the messages being sent. It seems like using a record as the message would mean you’d always have to do the upgrade on both machines in lock step so that the extra field didn’t cause the receiver to ignore the record. Whereas if you used something like an association list (which still has a ‘record-like’ API), the not-yet-upgraded receiver would still receive the message successfully and just ignore the new field. I realize this isn’t always the desired behavior, but often it is. Also, assume the messages are fairly small so the lookup time doesn’t matter.

Assuming the above makes some sense, I have the following additional questions:

  • Is there a standard (or widely used) library for alists? Some trivial googling didn’t turn up anything.
  • Are there other cases where you would use an association list (or something like it)?
  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. 2026-05-11T12:55:02+00:00Added an answer on May 11, 2026 at 12:55 pm

    You have basically three choices:

    1. Use Records
    2. Use Association Lists (proplists)
    3. Use Combination

    I use records where the likelihood of changing it is very low. That way I get the pattern matching and speed up that I want.

    I use proplists where I need hashtable like functionality. I get flexibility at the expense of pattern matching and speed.

    And sometimes I use both. A record with one field that is a proplist. That way I can pattern match on a portion of it and yet have flexibility where I need it.

    All three choices have different trade-offs so you basically just have to evaluate your particular needs and make a choice. It may take some prototyping and playing around to figure out which trade-offs make sense and which features you absolutely must have.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Ask A Question

Stats

  • Questions 132k
  • Answers 132k
  • Best Answers 0
  • User 1
  • Popular
  • Answers
  • Editorial Team

    How to approach applying for a job at a company ...

    • 7 Answers
  • Editorial Team

    How to handle personal stress caused by utterly incompetent and ...

    • 5 Answers
  • Editorial Team

    What is a programmer’s life like?

    • 5 Answers
  • Editorial Team
    Editorial Team added an answer You can use ProcessExplorer to see who is currently using… May 12, 2026 at 6:27 am
  • Editorial Team
    Editorial Team added an answer Could you use onLoad? Are there images [set without explict… May 12, 2026 at 6:27 am
  • Editorial Team
    Editorial Team added an answer $('*[id*=mytext]:visible').each(function() { $(this).doStuff(); }); Note the asterisk '*' at the… May 12, 2026 at 6:27 am

Related Questions

I am hoping that an architecture question is reasonable on Stackoverflow, so I am
I have recently programmed a console application and I've experienced a lot of pain
I'm almost there understanding simple reference counting / memory management in Objective-C, however I'm
I'm writing a simple accounting program consists of several C# winform clients and a

Trending Tags

analytics british company computer developers django employee employer english facebook french google interview javascript language life php programmer programs salary

Top Members

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.