MAPABLEXPR(3)

πŸ“¦ version 5.1.1, in fedora 43, fedora 44

✨ MAPABLEXPR ✨

okay bestie, welcome to mapablexpr β€” a lil function from the ABL FUNCTIONS manual (section 3, the library one, iykyk) and honestly? she's giving "glow-up for your expression tree." πŸ’…


🌸 NAME 🌸

mapablexpr β€” applies a function to all operands. yes literally that's the whole vibe: you bring the function, she brings the operands, everyone eats. πŸ“


πŸŽ€ ORIGIN πŸŽ€

This software belongs to the ALLIANCE CAD SYSTEM developed by the ASIM team at the LIP6 laboratory of UniversitΓ© Pierre et Marie CURIE, in Paris, France. πŸ‡«πŸ‡·βœ¨ iconic institution behavior, no cap.


πŸ¦‹ SYNOPSIS πŸ¦‹

#include "abl101.h"
void mapablexpr( Function, Expr )
  void      (βˆ—Function)();
  chain_list βˆ—Expr;

πŸ’œ PARAMETERS πŸ’œ

  • Function β€” the function name you wanna apply to all the operands. she's the main character here, fr fr.
  • Expr β€” the expression you're scanning. the little world she's about to visit. 🌈

🌟 DESCRIPTION 🌟

mapablexpr applies Function to all operands of Expr.

that's it. that's the whole thing. she takes your function and she walks the whole expression, hitting every operand on the way. lowkey elegant, highkey useful. πŸ‘‘


✨ RETURN VALUE ✨

mapablexpr returns nothing. not a value, not a vibe check, not even a lil wave. void. periodt. πŸ’€


πŸ’– EXAMPLE πŸ’–

ok so here's the whole thing, copied exactly, don't come for me:

#include "abl101.h"
   void MapFunction( MapExpr )
     chain_list βˆ—MapExpr;
   {
     if ( ABL_ATOM( MapExpr ) )
     {
       printf( stdout, "%s", ABL_ATOM_VALUE( MapExpr ) );
     }
     else
     {
       mapablexpr( MapFunction, MapExpr );
     }
   }
   ...
   chain_list βˆ—Expr;
   ...
   mapablexpr( MapFunction, Expr );
   ...

see how MapFunction checks if it's an atom with ABL_ATOM, prints ABL_ATOM_VALUE when it is, and otherwise calls mapablexpr( MapFunction, MapExpr ) right back on itself? recursive queen. she ate and left no crumbs. πŸ”₯


🧚 SEE ALSO 🧚


πŸ™ˆ BUG REPORT πŸ™ˆ

This tool is under development at the ASIM department of the LIP6 laboratory.

We need your feedback to improve documentation and tools. 🫢 so like, pls tell them if something's weird, they're literally asking. bestie to bestie.


πŸ’‘ tiny reminder: this whole thing belongs to the ABL FUNCTIONS manual, section 3 β€” so if you're lost in the docs, that's your map. πŸ—ΊοΈ

ASIM/LIP6 β€” October 1, 1997 β€” MAPABLEXPR(3) πŸŽ€

and that's the page, bestie! written by ASIM/LIP6 back on October 1, 1997, filed under MAPABLEXPR(3). mwah, go map some expressions. πŸ’‹βœ¨πŸ¦‹