Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Perl 6 to Wikipedia's multi-paradigm programming languages list #1744

Closed
Tyil opened this issue Jan 24, 2018 · 19 comments
Closed

Add Perl 6 to Wikipedia's multi-paradigm programming languages list #1744

Tyil opened this issue Jan 24, 2018 · 19 comments
Assignees

Comments

@Tyil
Copy link
Member

Tyil commented Jan 24, 2018

Wikipedia has a Comparison of multi-paradigm programming languages, which currently lacks a Perl 6. This should be rectified, but to do it properly I'll need to know which paradigms are supported and know which pages (preferably from the docs itself) to cite.

@AlexDaniel
Copy link
Member

What would be the best page to document this? https://docs.perl6.org/language/faq?

@AlexDaniel
Copy link
Member

Or a new page linked from https://docs.perl6.org/language.html?

@JJ
Copy link
Contributor

JJ commented Jan 24, 2018 via email

@JJ
Copy link
Contributor

JJ commented Jan 24, 2018

Let's try and add a reference here. Some of the things are not so easy.

  • Concurrent using channels.
  • Constraints through where and but keywords.
  • Dataflow Feed operator
  • Declarative
  • Distributed using the Cro module
  • Functional
  • Metaprogramming
  • Generic via parametrized Roles
  • Imperative
  • Logic
  • Reflection through the Mu object and methods such as .perl, .gist. (AlexDaniel: maybe actually through MOP?)
  • OO
  • Pipelines (AlexDaniel: maybe yes because everything gives a Seq? Also there are feed operators: ==>)
  • Visual
  • Rule-based
  • Other paradigms

@JJ
Copy link
Contributor

JJ commented Jan 24, 2018

I'm going at this from the bottom. Rule-based is not, visual is not. Pipelines... This is the document for C++. Seems to me it's something like the Feed operator?

@JJ
Copy link
Contributor

JJ commented Jan 24, 2018

I would say that's pretty much it.

@JJ
Copy link
Contributor

JJ commented Jan 25, 2018

Anyone else wanting to help here? Should I assign it to myself?

@AlexDaniel
Copy link
Member

Feel free to.

@JJ
Copy link
Contributor

JJ commented Jan 25, 2018

Done. https://en.wikipedia.org/wiki/Comparison_of_multi-paradigm_programming_languages#Language_overview
Thanks everyone!

@JJ JJ closed this as completed Jan 25, 2018
@AlexDaniel AlexDaniel reopened this Jan 25, 2018
@AlexDaniel
Copy link
Member

AlexDaniel commented Jan 25, 2018

  • If it is referencing Cro module, then it should be marked as “Library” (according to other entries in the table). That said, I don't understand that column altogether. It should be a No I think…
  • There's a column called other, and for Julia it mentions “Multiple dispatch”. Seems like something similar should be appropriate for Perl 6 also (also what about “reactive” and “native shaped arrays”?)

@AlexDaniel
Copy link
Member

But generally it's good I think!

@AlexDaniel
Copy link
Member

“Lazy lists”? :)

@AlexDaniel
Copy link
Member

Grammars, Junctions, Gradual Typing… none of these are paradigms, but why do others list “Array (multi-dimensional)” and “optionally lazy”?

@JJ
Copy link
Contributor

JJ commented Jan 25, 2018 via email

@AlexDaniel
Copy link
Member

To be completely honest, I think that the whole page should be nominated for deletion. Looking deeper at the content, it's very low-quality, cluttered and unsourced. Also, the page is completely useless because everyone is trying to stretch the definition of “paradigm”. But if we're adding perl 6, I think we should be very strict about our own contributions.

@JJ JJ self-assigned this Jan 27, 2018
@JJ
Copy link
Contributor

JJ commented Jan 27, 2018

Whoa, whoa, whoa! Having suffered deletionist librarians in the Spanish Wikipedia, I don't wish the deletion of even a single iota of knowledge in the Wikipedia. It's got its merit, but you are right about "stretching the definition of paradigm"... I would rather go for deleting that column, but anyway I would discuss it on the discussion page. It will enrich everyone involved.

@JJ
Copy link
Contributor

JJ commented Jan 27, 2018

OK, addressed @AlexDaniel 's concerns. And fixed Go row while I was at it, which had a format problem.
Closing at 1, closing at 2, closed :-)

@JJ JJ closed this as completed Jan 27, 2018
@wayland
Copy link
Contributor

wayland commented May 14, 2024

I couldn't find the "where" and "but" keywords, but type constraints are not constraint-based programming ( https://en.wikipedia.org/wiki/Constraint_programming ). I've linked a library instead.

@wayland
Copy link
Contributor

wayland commented May 14, 2024

When I was a student, there was a Distributed Computing research group in the computer science department. Their operating system didn't run on a single computer, it ran across multiple computers. It was effectively an operating system for clusters, as opposed to an operating system for a single computer. A key part of their setup was that if a node was heavily loaded, it could bundle up a whole process, ship it to a different node, and it would just continue running there as though nothing had happened.

Having said that, that was a distributed operating system, not a distributed programming paradigm. But I'm not sure there is a distributed programming paradigm (as opposed to distributed computing, which is a thing).

HTH,

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants