koushikuk

koushikuk

Why elixir is a procedural language when almost every programming language is adopting object oriented programming design pattern? Even Drupal 7 was a procedural language before. But now drupal 8 is full object oriented programming framework.

Showing Posts 1 to 6

NobbZ

NobbZ

Elixir is “functional”, not “procedural”. So I do not get your question…

kokolegorille

kokolegorille

I am not sure of this, and it looks like a joke on a functional language forum :slight_smile:

Also Elixir is a language, not a framework.

rvirding

rvirding

Creator of Erlang

Just because they made a bad choice doesn’t mean we have to. :wink:

27
Post #3
acrolink

acrolink

The fact is OOP made Drupal 8 3x times slower than procedural Drupal 7. So OOP when used in wrong places can be bad.

peerreynders

peerreynders

Related:

  • OCaml (Objective Caml - 1996) is a functional language that included OO features. This recent discussion demonstrates that to this day those features haven’t “taken over”.

  • Elixir does support Protocols for cases where polymorphism is needed.

  • Because of the naming people often get hung up on functions with functional programming. However another important aspect is immutable by default. Even in Effective Java, 2e (2008) there is Item 15: Minimize Mutability (p. 73). In general, most OO practice doesn’t constrain mutability enough - in fact it is often seen as unnecessary due to encapsulation - however encapsulation doesn’t protect you from unexpected change. This requires the deliberate application of defensive copying - failing to make defensive copies when necessary can have devastating consequences. But in mutable by default environments copying can be expensive while in immutable by default “copying” is optimized through effective use of persistent data structures.


It’s no joke - it’s the typical confusion between what is popular and what is good (generally without taking the context into account).

Why Are So Many Developers Hating on Object-Oriented Programming?

To some degree I think even NoSQL played into this - Document-based storage looked like Object storage and at least temporarily made SQL less relevant.

For the longest time SQL was one of the best opportunities to realize that imperative programming may not always be the best way to do things. At the same time there always have been lots of efforts to dispense with SQL and let everybody live comfortably with their imperative ways (one of the reasons why I like Ecto.Query is because it embraces the way SQL works).

koushikuk

koushikuk OP

I’m new in elixir. I got my answer. Thanks for guiding me. Will be with this forum for long.
Love learning Elixir.

— All posts loaded —

Where Next? Top

Trending in Questions Top

stjefim
Hello! Suppose you are building workflow (order / task / payment) processing system with the following requirements: Each workflow con...
New
Blokh
Hey guys, I’ve got a huge CSV ( around 10 GB ) that needs to be processed hourly Do you guys have any suggestions what is the best prac...
New
kszambelanczyk
Hello! Could someone please give me a help/sample code, how to delete a file from s3 using waffle/waffle_ecto from Phoenix app. I creat...
New
Onor.io
I have what I’ve heard referred to as a “lookup table” in my database. This is a way of assigning codes to common values. One common lo...
New
jaybe78
Hello, I’m developing a online persistent chat system (what’s app) like using elixir/dynamodb/aws for a mobile app(flutter). The diffic...
New
Trolleger
What approach to take when sending live updates to “random” users Hi! I have a question, I have a little chat app, and when I create a DM...
New
widianto
I think I’ve found a small improvement I could contribute to <%= web_namespace %>.CoreComponents (installer/templates/phx_web/compo...
New

Other Trending Topics Top

garrison
Hobbes is a low-level distributed database for the Elixir programming language. Hobbes provides a simple, safe, and scalable storage lay...
New
mcass19
ExRatatui lets you cook up rich terminal UIs in Elixir, powered by Rust’s ratatui via Rustler NIFs. Build interactive terminal applicatio...
New
Damirados
Hello everyone. After busy few months I am happy to announce v0.1.0 of Emerge & Solve. They are GUI (Emerge) and State management (S...
New
netoum
Corex is an accessible, unstyled UI component library for Phoenix that integrates Zag.js state machines using Vanilla JavaScript and Live...
New
wintermeyer
There are three potential reasons for members of this forum to have a look at https://vutuv.de You are tired or annoyed of LinkedIn. Yo...
New
aseigo
ICal is a library for interacting with iCalendar data. It parses iCalendars into typed Elixir structs via ICal.from_ics, and can prepare ...
New

We're in Beta

About us Mission Statement

Options

Thread Display Mode




Thread Preview

Skip Thread Previews