shakedown.social is one of the many independent Mastodon servers you can use to participate in the fediverse.
A community for live music fans with roots in the jam scene. Shakedown Social is run by a team of volunteers (led by @clifff and @sethadam1) and funded by donations.

Administered by:

Server stats:

264
active users

#functionalprogramming

2 posts2 participants1 post today
Simon Brooke<p><span class="h-card" translate="no"><a href="https://babka.social/@serge" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>serge</span></a></span> Is Scratch not essentially based on <a href="https://mastodon.scot/tags/Smalltalk" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Smalltalk</span></a>? Not knocking it, Smalltalk is also an excellent language, but <a href="https://mastodon.scot/tags/FunctionalProgramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>FunctionalProgramming</span></a> is a different, and in my opinion more fundamental, paradigm than <a href="https://mastodon.scot/tags/OOP" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>OOP</span></a>, and one which I believe it benefits children to be introduced to first.</p>
HaskellOrg<p>Cabal 3.16 is released with numerous quality-of-life improvements! <a href="https://blog.haskell.org/cabal-3-16-0-0-release/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">blog.haskell.org/cabal-3-16-0-</span><span class="invisible">0-release/</span></a></p><p><a href="https://fosstodon.org/tags/Haskell" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Haskell</span></a> <a href="https://fosstodon.org/tags/FunctionalProgramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>FunctionalProgramming</span></a></p>
Hacker News<p>Hazel: A live functional programming environment with typed holes</p><p><a href="https://github.com/hazelgrove/hazel" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">github.com/hazelgrove/hazel</span><span class="invisible"></span></a></p><p><a href="https://mastodon.social/tags/HackerNews" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>HackerNews</span></a> <a href="https://mastodon.social/tags/Hazel" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Hazel</span></a> <a href="https://mastodon.social/tags/FunctionalProgramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>FunctionalProgramming</span></a> <a href="https://mastodon.social/tags/LiveCoding" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>LiveCoding</span></a> <a href="https://mastodon.social/tags/TypedHoles" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>TypedHoles</span></a> <a href="https://mastodon.social/tags/GitHub" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>GitHub</span></a></p>
Zelphir Kaltstahl<p>I also got experience with the following (5 = a lot, 1 = a little) :</p><p><a href="https://mastodon.social/tags/machinelearning" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>machinelearning</span></a> <a href="https://mastodon.social/tags/ml" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ml</span></a> (3) (I have implemented some ML models myself in the past, for learning purposes.) <br><a href="https://mastodon.social/tags/guix" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>guix</span></a> (3) (Using it for reproducible setups of projects.)<br><a href="https://mastodon.social/tags/functionalprogramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>functionalprogramming</span></a> <a href="https://mastodon.social/tags/fp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>fp</span></a> (5) (Doing it in my own projects.)<br><a href="https://mastodon.social/tags/objectorientedprogramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>objectorientedprogramming</span></a> <a href="https://mastodon.social/tags/oop" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>oop</span></a> (4) (last job and past xp in my own projects.)<br><a href="https://mastodon.social/tags/CI" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>CI</span></a> / <a href="https://mastodon.social/tags/CD" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>CD</span></a> (3) (Last job)<br><a href="https://mastodon.social/tags/make" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>make</span></a> (4) (using it for my own project setups and convenience)<br><a href="https://mastodon.social/tags/testing" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>testing</span></a> (4) (last job, own projects)</p>
Hacker News<p>Binding Application in Idris</p><p><a href="https://andrevidela.com/blog/2025/binding-application/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">andrevidela.com/blog/2025/bind</span><span class="invisible">ing-application/</span></a></p><p><a href="https://mastodon.social/tags/HackerNews" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>HackerNews</span></a> <a href="https://mastodon.social/tags/BindingApplication" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>BindingApplication</span></a> <a href="https://mastodon.social/tags/Idris" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Idris</span></a> <a href="https://mastodon.social/tags/FunctionalProgramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>FunctionalProgramming</span></a> <a href="https://mastodon.social/tags/Haskell" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Haskell</span></a> <a href="https://mastodon.social/tags/ProgrammingLanguages" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ProgrammingLanguages</span></a> <a href="https://mastodon.social/tags/TypeSystems" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>TypeSystems</span></a></p>
kupac^ESC:wq<p>The one where I am contemplating the scarcity of monads in R, and come to the conclusion that we already have plenty of monads in R. <a href="https://www.biobits.be/biofunctor/2025/07/10/monads-everywhr/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="ellipsis">biobits.be/biofunctor/2025/07/</span><span class="invisible">10/monads-everywhr/</span></a></p><p><a href="https://functional.cafe/tags/rstats" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>rstats</span></a> <a href="https://functional.cafe/tags/monad" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>monad</span></a> <a href="https://functional.cafe/tags/functionalprogramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>functionalprogramming</span></a></p>
Nebraska.Code<p>Matthew Watt, David Kerber, Lorenzo Gallegos, and Mitchel Sellers present on Software Craftsmanship at Nebraska.Code().</p><p> <a href="https://nebraskacode.amegala.com/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">nebraskacode.amegala.com/</span><span class="invisible"></span></a></p><p><a href="https://mastodon.social/tags/SoftwareCraftsmanship" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>SoftwareCraftsmanship</span></a> <a href="https://mastodon.social/tags/FunctionalProgramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>FunctionalProgramming</span></a> <a href="https://mastodon.social/tags/TechStack" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>TechStack</span></a> <a href="https://mastodon.social/tags/Secure" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Secure</span></a> <a href="https://mastodon.social/tags/Coding" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Coding</span></a> <a href="https://mastodon.social/tags/Code" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Code</span></a> <a href="https://mastodon.social/tags/TechConf" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>TechConf</span></a> <a href="https://mastodon.social/tags/Nebraska" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Nebraska</span></a> <a href="https://mastodon.social/tags/Software" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Software</span></a> <a href="https://mastodon.social/tags/Programming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Programming</span></a> <a href="https://mastodon.social/tags/Heartland" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Heartland</span></a> <a href="https://mastodon.social/tags/lincolnnebraska" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>lincolnnebraska</span></a> <a href="https://mastodon.social/tags/DeveloperConference" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>DeveloperConference</span></a> <a href="https://mastodon.social/tags/midwesttech" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>midwesttech</span></a> <a href="https://mastodon.social/tags/softwareengineering" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>softwareengineering</span></a> <a href="https://mastodon.social/tags/softwaredevelopment" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>softwaredevelopment</span></a></p>
screwlisp<p><a href="https://gamerplus.org/tags/programming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>programming</span></a> <a href="https://gamerplus.org/tags/softwareEngineering" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>softwareEngineering</span></a> article <a href="https://screwlisp.small-web.org/programming/tangle/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">screwlisp.small-web.org/progra</span><span class="invisible">mming/tangle/</span></a> <a href="https://gamerplus.org/tags/commonLisp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>commonLisp</span></a> <a href="https://gamerplus.org/tags/asdf" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>asdf</span></a> <a href="https://gamerplus.org/tags/systemsProgramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>systemsProgramming</span></a> <a href="https://gamerplus.org/tags/series" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>series</span></a> <a href="https://gamerplus.org/tags/pathnames" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>pathnames</span></a> <a href="https://gamerplus.org/tags/packaging" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>packaging</span></a> </p><p>Really simple... Sort of... But so intricate to write. I deal with (writing a smidge of <a href="https://gamerplus.org/tags/interactive" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>interactive</span></a> <a href="https://gamerplus.org/tags/lazyEvaluation" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>lazyEvaluation</span></a> <a href="https://gamerplus.org/tags/functionalProgramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>functionalProgramming</span></a> ) :</p><p>- Tangling markdown into an asdf :class :package-inferred-system lisp system<br>- Doing so with scan-file and collect-file from series<br>- Working with lisp’s make-pathname directories.</p><p><a href="https://gamerplus.org/tags/literateProgramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>literateProgramming</span></a></p>
☮ ♥ ♬ 🧑‍💻<p>“Hedge funds will go to great lengths in pursuit of <a href="https://ioc.exchange/tags/profits" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>profits</span></a>, whether it is by counting cars in satellite photos of parking lots or shipping gold across the Atlantic. Building a <a href="https://ioc.exchange/tags/compiler" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>compiler</span></a>—a piece of <a href="https://ioc.exchange/tags/software" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>software</span></a> that turns human-written code into programs a computer can execute—for your homegrown language? That still raises eyebrows.</p><p><a href="https://ioc.exchange/tags/JaneStreet" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>JaneStreet</span></a> is the quant shops’ quant shop, and it does just that, with great success. Last year its trading revenue almost doubled, to $21bn, putting it on a par with giants such as <a href="https://ioc.exchange/tags/Citigroup" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Citigroup</span></a> and <a href="https://ioc.exchange/tags/MorganStanley" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>MorganStanley</span></a>. And the goose that lays the golden egg is its <a href="https://ioc.exchange/tags/tech" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>tech</span></a> system.</p><p>But it is what this system is built from that is really unusual. Other firms employ a hotchpotch of <a href="https://ioc.exchange/tags/ProgrammingLanguages" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ProgrammingLanguages</span></a>, allowing staff to choose the right one for the job. At Jane Street almost everyone works in an obscure tongue developed by French academics: <a href="https://ioc.exchange/tags/OCaml" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>OCaml</span></a>. </p><p>Ask a <a href="https://ioc.exchange/tags/trader" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>trader</span></a> at the firm for its benefits and they will reel off a string of features, such as its support for <a href="https://ioc.exchange/tags/StaticTyping" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>StaticTyping</span></a> and <a href="https://ioc.exchange/tags/FunctionalProgramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>FunctionalProgramming</span></a>, that make it hard to learn but powerful when applied to a problem. The company says the language helps “maximise the <a href="https://ioc.exchange/tags/productivity" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>productivity</span></a> of each person we hire”.”</p><p><a href="https://ioc.exchange/tags/HedgeFunds" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>HedgeFunds</span></a> / <a href="https://ioc.exchange/tags/finance" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>finance</span></a> &lt;<a href="https://www.economist.com/finance-and-economics/2025/06/26/jane-streets-sneaky-retention-tactic" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="ellipsis">economist.com/finance-and-econ</span><span class="invisible">omics/2025/06/26/jane-streets-sneaky-retention-tactic</span></a>&gt; (paywall) / &lt;<a href="https://archive.md/DQ0ku" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">archive.md/DQ0ku</span><span class="invisible"></span></a>&gt;</p>
Mike McCaffrey<p>Years before <a href="https://drupal.community/tags/VibeCoding" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>VibeCoding</span></a> became a thing, we had another way to tell computers to run code using simple words. It was called <a href="https://drupal.community/tags/FunctionalProgramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>FunctionalProgramming</span></a>.</p>
Vassil Nikolov<p>&gt; My date for programmatic formal checking of programs in lisp is the early 70s.</p><p>(If not the late 60s.)</p><p>Just for the record,<br>programmatic formal checking of programs in general<br>and<br>applying type theory to programming<br>do have a big intersection,<br>but neither is a subset of the other, of course.</p><p>And then functional programming offers quite a bit more that is valuable than type checking and type inference (again of course).</p><p><a href="https://ieji.de/tags/FunctionalProgramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>FunctionalProgramming</span></a><br><a href="https://ieji.de/tags/Lisp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Lisp</span></a></p><p><span class="h-card" translate="no"><a href="https://gamerplus.org/@screwlisp" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>screwlisp</span></a></span> <span class="h-card" translate="no"><a href="https://fe.disroot.org/users/ramin_hal9001" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>ramin_hal9001</span></a></span> <span class="h-card" translate="no"><a href="https://appdot.net/@mdhughes" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>mdhughes</span></a></span></p>
Vassil Nikolov<p>[<a href="https://ieji.de/tags/Lisp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Lisp</span></a> and type theory]</p><p>&gt; type theory- it's not really different to what lisp was doing approximately a century ago</p><p>That is too imprecise.</p><p>Lisp started off _untyped_ lambda calculus less than 3/4 of a century ago.</p><p>Lisp did beget functional programming a little later, but the real application of type theory in computer programming started with the ML family of languages and Haskell.<br>(Maybe I missed one more language.)</p><p><a href="https://ieji.de/tags/FunctionalProgramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>FunctionalProgramming</span></a><br><a href="https://ieji.de/tags/TypeTheory" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>TypeTheory</span></a></p><p><span class="h-card" translate="no"><a href="https://gamerplus.org/@screwlisp" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>screwlisp</span></a></span> <span class="h-card" translate="no"><a href="https://fe.disroot.org/users/ramin_hal9001" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>ramin_hal9001</span></a></span> <span class="h-card" translate="no"><a href="https://appdot.net/@mdhughes" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>mdhughes</span></a></span></p>
xoron :verified:<p>React-like functional webcomponents, but with vanilla HTML, JS and CSS</p><p>Introducing Dim – a new <a href="https://infosec.exchange/tags/Framework" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Framework</span></a> that brings <a href="https://infosec.exchange/tags/ReactJS" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ReactJS</span></a>-like functional <a href="https://infosec.exchange/tags/JSX" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>JSX</span></a>-syntax with <a href="https://infosec.exchange/tags/VanillaJS" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>VanillaJS</span></a>. Check it out here:<br>🔗 Project: <a href="https://github.com/positive-intentions/dim" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">github.com/positive-intentions</span><span class="invisible">/dim</span></a><br>🔗 Website: <a href="https://dim.positive-intentions.com" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">dim.positive-intentions.com</span><span class="invisible"></span></a></p><p>My journey with <a href="https://infosec.exchange/tags/WebComponents" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>WebComponents</span></a> started with Lit, and while I appreciated its native browser support (less <a href="https://infosec.exchange/tags/Tooling" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Tooling</span></a>!), coming from <a href="https://infosec.exchange/tags/ReactJS" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ReactJS</span></a>, the class components felt like a step backward. The <a href="https://infosec.exchange/tags/FunctionalProgramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>FunctionalProgramming</span></a> approach in React significantly improved my <a href="https://infosec.exchange/tags/DeveloperExperience" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>DeveloperExperience</span></a> and debugging flow.</p><p>So, I set out to build a thin, functional wrapper around <a href="https://infosec.exchange/tags/Lit" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Lit</span></a>, and Dim is the result! It's a <a href="https://infosec.exchange/tags/ProofOfConcept" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ProofOfConcept</span></a> right now, with "main" <a href="https://infosec.exchange/tags/Hooks" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Hooks</span></a> similar to React, plus some custom ones like useStore for <a href="https://infosec.exchange/tags/EncryptionAtRest" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>EncryptionAtRest</span></a>. (Note: <a href="https://infosec.exchange/tags/StateManagement" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>StateManagement</span></a> for encryption-at-rest is still unstable and currently uses a hardcoded password while I explore <a href="https://infosec.exchange/tags/Passwordless" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Passwordless</span></a> options like <a href="https://infosec.exchange/tags/WebAuthn" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>WebAuthn</span></a>/#Passkeys).</p><p>You can dive deeper into the <a href="https://infosec.exchange/tags/Documentation" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Documentation</span></a> and see how it works here:<br>📚 Dim Docs: <a href="https://positive-intentions.com/docs/category/dim" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">positive-intentions.com/docs/c</span><span class="invisible">ategory/dim</span></a></p><p>This <a href="https://infosec.exchange/tags/OpenSource" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>OpenSource</span></a> project is still in its early stages and very <a href="https://infosec.exchange/tags/Unstable" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Unstable</span></a>, so expect <a href="https://infosec.exchange/tags/BreakingChanges" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>BreakingChanges</span></a>. I've already received valuable <a href="https://infosec.exchange/tags/Feedback" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Feedback</span></a> on some functions regarding <a href="https://infosec.exchange/tags/Security" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Security</span></a>, and I'm actively investigating those. I'm genuinely open to all feedback as I continue to develop it!</p><p><a href="https://infosec.exchange/tags/FrontendDev" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>FrontendDev</span></a> <a href="https://infosec.exchange/tags/JSFramework" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>JSFramework</span></a> <a href="https://infosec.exchange/tags/Innovation" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Innovation</span></a> <a href="https://infosec.exchange/tags/Coding" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Coding</span></a> <a href="https://infosec.exchange/tags/Programmer" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Programmer</span></a> <a href="https://infosec.exchange/tags/Tech" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Tech</span></a></p>
José A. Alonso<p>Learn physics with functional programming. ~ Esteban Marin. <a href="https://youtu.be/Zp5D_wMi97Q" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">youtu.be/Zp5D_wMi97Q</span><span class="invisible"></span></a> <a href="https://mathstodon.xyz/tags/Haskell" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Haskell</span></a> <a href="https://mathstodon.xyz/tags/FunctionalProgramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>FunctionalProgramming</span></a> <a href="https://mathstodon.xyz/tags/Physics" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Physics</span></a></p>
Karsten Schmidt<p><a href="https://mastodon.thi.ng/tags/ReleaseWednesday" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ReleaseWednesday</span></a> — Extracted &amp; extended the LISP-like DSL from an existing <a href="https://mastodon.thi.ng/tags/ThingUmbrella" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ThingUmbrella</span></a> example[1] as new small package for better/direct re-use in other projects:</p><p><a href="https://thi.ng/lispy" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">thi.ng/lispy</span><span class="invisible"></span></a></p><p>The core language is kept intentionally minimal, aimed at simple sandboxed data transformations/derivations, small code snippets/expressions in GUIs or config settings. However, the language is very easy to extend/customize with new functions or control flow constructs etc. Currently, the language is interpreted and has the following builtins (see screenshots). There's no macro support so far (and not sure if that's even desired here)...</p><p>[1] The original <a href="https://mastodon.thi.ng/tags/HowToThing" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>HowToThing</span></a> example browser REPL this was extracted from (and which has now been updated to use the new package):</p><p><a href="https://demo.thi.ng/umbrella/lispy-repl/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">demo.thi.ng/umbrella/lispy-rep</span><span class="invisible">l/</span></a><br> <br><a href="https://mastodon.thi.ng/tags/ThingUmbrella" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ThingUmbrella</span></a> <a href="https://mastodon.thi.ng/tags/Lisp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Lisp</span></a> <a href="https://mastodon.thi.ng/tags/DSL" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>DSL</span></a> <a href="https://mastodon.thi.ng/tags/FunctionalProgramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>FunctionalProgramming</span></a> <a href="https://mastodon.thi.ng/tags/REPL" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>REPL</span></a></p>
vintage screwlisp account<p><a href="https://mastodon.sdf.org/tags/programming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>programming</span></a> <a href="https://mastodon.sdf.org/tags/gamedev" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>gamedev</span></a> <a href="https://mastodon.sdf.org/tags/devlog" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>devlog</span></a> <a href="https://mastodon.sdf.org/tags/commonLisp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>commonLisp</span></a> <a href="https://mastodon.sdf.org/tags/series" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>series</span></a> <a href="https://mastodon.sdf.org/tags/lazyEvaluation" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>lazyEvaluation</span></a> <a href="https://mastodon.sdf.org/tags/functionalprogramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>functionalprogramming</span></a> <a href="https://screwlisp.small-web.org/lispgames/cl-series-for-game-logic/" rel="nofollow noopener" target="_blank"><span class="invisible">https://</span><span class="ellipsis">screwlisp.small-web.org/lispga</span><span class="invisible">mes/cl-series-for-game-logic/</span></a> <a href="https://mastodon.sdf.org/tags/lispgamejam" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>lispgamejam</span></a> <br>Since cl-series generates native common lisp code by working at macro expansion time, I consider it suitable for my software individuals (who want only clos-less common lisp and their own logic (which they have an introspective theory of).</p><p>In particular, I use series to cut out rectangular subsequence of sequences -s</p><p>SERIES DOC UPDATE FROM RTOY <a href="https://gitlab.common-lisp.net/rtoy/cl-series/-/wikis/Series-User's-Guide" rel="nofollow noopener" target="_blank"><span class="invisible">https://</span><span class="ellipsis">gitlab.common-lisp.net/rtoy/cl</span><span class="invisible">-series/-/wikis/Series-User's-Guide</span></a></p>
Ramin HonaryProgress on my clone of the Emacs Lisp interpreter <p>This took me three months (a month longer than I had hoped), but I finally <a href="https://codeberg.org/ramin_hal9001/schemacs/pulls/39" rel="nofollow noopener" target="_blank">have merged it</a> into the main branch!</p><p>This patch rewrites the Emacs Lisp lexer and parser in Scheme using Scheme code that is 100% compliant with the <a class="hashtag" href="https://fe.disroot.org/tag/r7rs" rel="nofollow noopener" target="_blank">#R7RS</a> standard, so it should now work across all compliant Scheme implementations. Previously the old parser relied on <a class="hashtag" href="https://fe.disroot.org/tag/guile" rel="nofollow noopener" target="_blank">#Guile</a> -specific regular expressions.</p><p>This patch also implements a new feature where a stack trace is printed when an error occurs. This of course makes debugging much, much easier. Previously the old parser did not keep track of where code evaluation was happening, it simply produced lists without source location information. The new parser constructs an abstract syntax tree (AST) and source locations are attached to the branches of the tree which can be used in error reporting and stack traces.</p><p>Next I will make whatever minor tweaks might be necessary to get my Emacs Lisp interpreter run on other Scheme implementations, in particular MIT Scheme, Gambit, Stklos, and Gauche. I would also like to try to get it running on Chicken and Chez, although these are going to be a bit more tricky.</p><p>Then I will continue with the task of implementing a new declarative GUI library.</p><p><a class="hashtag" href="https://fe.disroot.org/tag/tech" rel="nofollow noopener" target="_blank">#tech</a> <a class="hashtag" href="https://fe.disroot.org/tag/software" rel="nofollow noopener" target="_blank">#software</a> <a class="hashtag" href="https://fe.disroot.org/tag/foss" rel="nofollow noopener" target="_blank">#FOSS</a> <a class="hashtag" href="https://fe.disroot.org/tag/functionalprogramming" rel="nofollow noopener" target="_blank">#FunctionalProgramming</a> <a class="hashtag" href="https://fe.disroot.org/tag/lisp" rel="nofollow noopener" target="_blank">#Lisp</a> <a class="hashtag" href="https://fe.disroot.org/tag/scheme" rel="nofollow noopener" target="_blank">#Scheme</a> <a class="hashtag" href="https://fe.disroot.org/tag/schemelang" rel="nofollow noopener" target="_blank">#SchemeLang</a> <a class="hashtag" href="https://fe.disroot.org/tag/emacslisp" rel="nofollow noopener" target="_blank">#EmacsLisp</a> <a class="hashtag" href="https://fe.disroot.org/tag/emacs" rel="nofollow noopener" target="_blank">#Emacs</a> <a class="hashtag" href="https://fe.disroot.org/tag/schemacs" rel="nofollow noopener" target="_blank">#Schemacs</a> <a class="hashtag" href="https://fe.disroot.org/tag/guilescheme" rel="nofollow noopener" target="_blank">#GuileScheme</a></p>