programming.dev
  • Communities
  • Create Post
  • Create Community
  • heart
    Support Lemmy
  • search
    Search
  • Login
  • Sign Up
AndyM to Concatenative Programming · 2 years ago

Advent of Code 2023

message-square
35
link
fedilink
7

Advent of Code 2023

AndyM to Concatenative Programming · 2 years ago
message-square
35
link
fedilink

It’s just about time! Huzzah!

I’ll collect links and resources here:

  • Advent of Code itself
  • Advent of Code community here on programming.dev
  • Factor solutions for years past, on the concatenative wiki

I’ll probably only last the first few days, optimistically a week, but plan on submitting my solutions in Factor to the AoC community, and I’ll link any of those here in the comments.

silly dino picture 1

silly dino picture 2

silly dino picture 3

silly dino picture 4

  • AndyOPM
    link
    fedilink
    arrow-up
    1
    ·
    2 years ago

    Day 01 (Forth), by reddit user alexw02

    • on reddit
    • on sourcehut

Concatenative Programming

concatenative

Subscribe from Remote Instance

Create a post
You are not logged in. However you can subscribe from another Fediverse account, for example Lemmy or Mastodon. To do this, paste the following into the search field of your instance: [email protected]

Hello!

This space is for sharing news, experiences, announcements, questions, showcases, etc. regarding concatenative programming concepts and tools.

We’ll also take any programming described as:

  • pipelined
  • stack-oriented
  • tacit
  • postfix / reverse Polish notation (RPN)
  • fluent
  • cascading
  • chained

From Wikipedia:

A concatenative programming language is a point-free computer programming language in which all expressions denote functions, and the juxtaposition of expressions denotes function composition. Concatenative programming replaces function application, which is common in other programming styles, with function composition as the default way to build subroutines.

For example, a sequence of operations in an applicative language like the following:

y = foo(x)
z = bar(y)
w = baz(z)

…is written in a concatenative language as a sequence of functions:

x foo bar baz


Active Languages

Let me know if I’ve got any of these misplaced!

Primarily Concatenative

  • Forth
  • Factor
  • Retro
  • min
  • Joy
  • Uiua
  • kcats
  • iNet
  • mlatu
  • Execline

Concatenative-ish, Chain-y, Pipe-y, Uniform Function Call Syntax, etc.

  • Nim
  • Roc
  • Unix Pipes
  • Cognate
  • D Programming Language
  • Koka

Cheat Sheets & Tutorials

  • Learn Factor in Y minutes
  • A panoramic tour of Factor
  • Factor Tutorial Video

Discord

  • Concatenative
  • Factor

IRC

  • #concatenative on irc.libera.chat

Wikis

  • concatenative wiki

Wikipedia Topics

  • Reverse Polish Notation
  • Uniform Function Call Syntax
  • Stack-Oriented Programming
  • Tacit Programming
  • Method Chaining
  • Method Cascading
  • Fluent Interface

Subreddits

  • r/concatenative
  • r/factor

GitHub Topics

  • Stack-Based Language
  • Concatenative
  • Concatenative Language
  • Concatenative Programming Language
  • Concatenative Interpreting Language
  • Fluent Interface
  • Method Chaining

Blogs

  • planet-factor

Practice

  • Codewars (Forth, Factor, Nim)
  • Advent of Code
  • Code Golf (Forth, Factor, Nim)
  • Project Euler
  • Exercism (Nim)
  • Perl Weekly Challenge
Visibility: Public
globe

This community can be federated to other instances and be posted/commented in by their users.

  • 1 user / day
  • 4 users / week
  • 10 users / month
  • 61 users / 6 months
  • 48 local subscribers
  • 190 subscribers
  • 165 Posts
  • 104 Comments
  • Modlog
  • mods:
  • Ategon
  • Andy
  • BE: 0.19.11
  • Modlog
  • Legal
  • Instances
  • Docs
  • Code
  • join-lemmy.org