ramin_hal9001, to guix
@ramin_hal9001@emacs.ch avatar

Somebody uploaded video of the SICP lectures by Sussman and Steele recorded at MIT in 1986 to PeerTube!

Here ⮕ sicp_lectures@diode.zone

I don't know how long these videos have been on the Internet, but I am amazed that this is the first time I ever learned about their existence.

ramin_hal9001, to scheme
@ramin_hal9001@emacs.ch avatar

Why Program in C+Python when you can program in Zig+Scheme?

Another bit of gold from by Pjotr Prins of the University of Tennessee. The actual title of the talk is "Why code in Python+C if you can code in Lisp+Zig?" but the "Lisp" in this case is actually Guile Scheme. I didn't know this, but Zig uses the C ABI so it binds to any language that can do FFI bindings to C, including most Scheme and Common Lisp implementations. But why don't I just post the abstract here:

> "Most bioinformatics software today is written in Python and for performance C is used. Lisp has been around for over half a century and here I don’t have to tell how or why programming Lisp is great. I will talk about Zig as a minimalistic new language that is unapologetically focused on performance, tellingly with a blazingly fast compiler. It is advertised as a replacement for Thompson, Ritchie, and Kernighan’s C, but it may even replace C++ in places. Zig uses the C-ABI and does not do garbage collection, so it is ideal for binding against other languages. In this talk I will present combining GNU Guile Lisp with Zig. I’ll argue that everyone needs two languages: one for quick coding and one for performance. With Guile and Zig you get both at the same time and you won’t have to fight the Rust borrow checker either."

toxi, (edited ) to FunctionalProgramming
@toxi@mastodon.thi.ng avatar

— Shader meta-programming techniques (functional composition, higher-order functions, compile-time evaluation, dynamic code generation etc.) to generate animated plots/graphs of 16 functions (incl. dynamic grid layout generation) within a single WebGL fragment shader.

Today's key packages:

  • https://thi.ng/shader-ast: DSL to write (fully type-checked) shaders directly in TypeScript and later compile them to GLSL, JS (and other target languages, i.e. there's partial support for Houdini VEX and [very] early stage WGSL...)
  • https://thi.ng/shader-ast-stdlib: Collection of ~220 re-usable shader functions & configurable building blocks (incl. SDFs primitives/ops, raymarching, lighting, matrix ops, etc.)
  • https://thi.ng/webgl-shadertoy: Minimal scaffolding for experimenting with fragment shaders (supports both normal GLSL or shader-ast flavors/compilation)

If you're new to the Shader-AST approach (highly likely!), this example will again introduce a lot of new concepts, hopefully in digestible manner! Please also always consult the package readmes (and other linked examples) for more background info... There're numerous benefits to this approach (incl. targetting different target langs and compositional & optimization aspects which are impossible to achieve (at least not elegantly) via just string concatenation/interpolation of shader code, as is much more commonplace...)

This example comes fresh off the back of yesterday's new easing function additions (by @Yura), though we're only showing a subset here...

Demo:
https://demo.thi.ng/umbrella/shader-ast-easings/
(Check the console to view the generated GLSL shader)

Source code:
https://github.com/thi-ng/umbrella/tree/develop/examples/shader-ast-easings/src/index.ts

If you have any questions about this topic or the packages used here, please reply in thread or use the discussion forum (or issue tracker):

github.com/thi-ng/umbrella/discussions

toxi, to opensource
@toxi@mastodon.thi.ng avatar

‼️ Announcing the thi.ng user survey 2024 📋

https://forms.gle/XacbSDEmQMPZg8197

To achieve a better sample size, I'd highly appreciate if you could circulate the link to this survey in your own networks.

It's already been almost 9 years since the last user survey for these projects. Please help me/us to get more insights into your own experiences, your interests, hopes and pain points — allowing the projects and everyone involved to move forward more intentionally.

There're 15 questions here, with ~10 of them marked as mandatory. The main focal points are the matrices in the middle of the survey. Please also do use the final freeform comments box to share any further feedback you might have. Thank you very much for your interest, trust & taking the time to provide some much needed answers! 🙏

The survey is anonymous and will remain open until 23:59 (CET) on February 29, 2024. I will then share a public summary of the results on my Mastodon in the days following (do keep an eye on the hashtag)...

jbzfn, to haskell
@jbzfn@mastodon.social avatar

🧙‍♂️ Haskell in Production: Chordify
@serokell

「 Furthermore, the lightweight threading model of Haskell is great for web-server purposes: we handle thousands of requests per second on quite low-end hardware. Interestingly, our CI server that does compilation needs a lot more RAM than our production servers, which is the price you pay for having strong compile-time guarantees, and thereby the efficient runtime 」

https://serokell.io/blog/haskell-in-production-chordify

abcdw, to Lisp
@abcdw@fosstodon.org avatar

If you are into programming languages, learning Ocaml (or other ML dialect like StandardML) makes a lot of sense, it's helpful for reading papers, watching conference talks, understanding basics of type theory, going through PL courses and all other fancy stuff.

Here is a good introductionary course on OCaml and functional programming:

https://cs3110.github.io/textbook/cover.html

https://www.youtube.com/playlist?list=PLre5AT9JnKShBOPeuiD9b-I4XROIJhkIU

jbzfn, to elixir
@jbzfn@mastodon.social avatar

Elixir: The only Sane Choice in an Insane World • Brian Cardarella • GOTO 2017

https://youtube.com/watch?v=gom6nEvtl3U

angelmunoz, to programming
@angelmunoz@misskey.cloud avatar

For real, whoever is saying that F# or OCaml require a PhD in Math or are languages just for math, science, and academic stuff is completely lying to you, it is no harder than learning JavaScript/python or any other language out there.

pragmaticmarg, to haskell
Crell, to php
@Crell@phpc.social avatar

I've just tagged the 1.0.0 stable of Crell/fp, a well-tested library for doing common functional programming tasks in your favorite web language.

https://github.com/Crell/fp

leanpub, to php
@leanpub@mastodon.social avatar

Thinking Functionally in PHP by Larry Garfield is free with a Leanpub Reader membership! Or you can buy it for $25.00! http://leanpub.com/thinking-functionally-in-php

jbzfn, to Lisp
@jbzfn@mastodon.social avatar

λ The Rise & Fall of LISP - Too Good For The Rest Of the World
➥ Gavin Freeborn

https://youtube.com/watch?v=GVyoCh2chEs

simonmic, to haskell
@simonmic@fosstodon.org avatar

Delighted to announce hledger 1.32, with more precision control, beancount output, TSV output, --summary-only, strict/idempotent import, CSV rule enhancements, timedot letters, fixes - it's a lot !

is free, fast, reliable, multi-currency, double-entry, software for unix, mac, windows, and the web.
https://hledger.org

abuseofnotation, to haskell
@abuseofnotation@mathstodon.xyz avatar

I haven't written any in years, so I decided to do one little shell script, just to see if I remember.

Some random thoughts:

  • The tooling and documentation still leaves you feeling stupid (unlike, PureScript, for example)
  • I hate this packing and unpacking of strings.

Oh, and here is the script, feedback and questions are welcome:

https://github.com/abuseofnotation/abuseofnotation.github.io/blob/master/build-jekyll-tags.hs

Jose_A_Alonso, to haskell
@Jose_A_Alonso@mathstodon.xyz avatar

The Haskell Unfolder Episode 18: Computing constraints. ~ Edsko de Vries (@EdskoDeVries), Andres Löh (@kosmikus). https://www.youtube.com/live/JzymjoHC0ig

jesper, to FunctionalProgramming
@jesper@agda.club avatar

We are organizing the FP Dag aka Dutch Functional Programming Day on Friday the 5th of January in Delft. People from neighboring countries are also very welcome to join!

The (soft) registration deadline is on the 22th of December (next Friday), so get your tickets soon!

https://www.tudelft.nl/fpday-2024

Jose_A_Alonso, to haskell
@Jose_A_Alonso@mathstodon.xyz avatar

Abstracting denotational interpreters. ~ Sebastian Graf, Simon Peyton Jones, Sven Keidel. https://arxiv.org/abs/2403.02778

jbzfn, to haskell
@jbzfn@mastodon.social avatar

📚 Why Learn Haskell in 2023?
➥ Gavin Freeborn

https://youtube.com/watch?v=6qz9Ajun2nM

Jose_A_Alonso, to haskell
@Jose_A_Alonso@mathstodon.xyz avatar

The Haskell Unfolder Episode 21¡2: foldr-build fusion. ~ Edsko de Vries (@EdskoDeVries), Andres Löh (@kosmikus). https://www.youtube.com/live/C-GahictORU

jbzfn, to FunctionalProgramming
@jbzfn@mastodon.social avatar

🤝 Ending the war or continuing it? Let's bring functional programming to OOP codebases | Cherry Ramatis

https://dev.to/cherryramatis/ending-the-war-or-continuing-it-lets-bring-functional-programming-to-oop-codebases-3mhd

haskell_foundation, to FunctionalProgramming
@haskell_foundation@mastodon.social avatar

Graham Hutton, in collaboration with the University of Nottingham, brings you the Advanced in course. Dive into a treasure trove of freely available videos to elevate your Haskell skills. Enjoy the playlist here: https://www.youtube.com/playlist?list=PLF1Z-APd9zK5uFc8FKr_di9bfsYv8-lbc

bart, to FunctionalProgramming
@bart@floss.social avatar

fp-ts brought advanced #FunctionalProgramming to #TypeScript. Now a related project implementing an effect system for TypeScript (effect-ts) seems to have gotten a lot of VC money. Interesting... Docs look very polished, not sure how they will make money though.

https://effect.website/

haskman, to javascript
@haskman@functional.cafe avatar

Since the backend post (https://www.moonbitlang.com/blog/js-support) is trending, I thought I'd compare backend optimizer (https://github.com/aristanetworks/purescript-backend-optimizer) output to see how it fares. The results were pretty good!

With basically this PureScript code -

run = fromArray  
 >>> flatMapF (fromArray <<< _.members)  
 >>> filterF _.gender  
 >>> mapF (\x -> min 100 (x.score + 5))  
 >>> mapF grade  
 >>> filterF (_ == 'A')  
 >>> foldF (\_ x -> x+1) 0  

the benchmark results are as follows. PureScript is roughly 6x faster than plain JS, and 6x slower than Moonbit output ( -

┌─────────┬──────────────┬─────────────┬────────────────────┬──────────┬─────────┐  
│ (index) │ Task Name │ ops/sec │ Average Time (ns) │ Margin │ Samples │  
├─────────┼──────────────┼─────────────┼────────────────────┼──────────┼─────────┤  
│ 0 │ 'Moonbit' │ '34,67,542' │ 288.38869989829305 │ '±0.06%' │ 1733772 │  
│ 1 │ 'Plain Js' │ '74,816' │ 13365.983827421464 │ '±0.54%' │ 37409 │  
│ 2 │ 'Kotlin Js' │ '1,90,241' │ 5256.474017304151 │ '±0.38%' │ 95121 │  
│ 3 │ 'PureScript' │ '4,99,456' │ 2002.1768597161156 │ '±0.70%' │ 249729 │  
└─────────┴──────────────┴─────────────┴────────────────────┴──────────┴─────────┘  

haskell, to haskell
@haskell@fosstodon.org avatar

The GHC developers are very pleased to announce the release of GHC 9.10.1! 🎉

On the menu:
→ GHC2024 language edition
→ Linear let and where
bindings
→ Annotation of exceptions with backtraces
→ Required type arguments for functions
→ Javascript FFI support in the WebAssembly backend
… and many more!

https://discourse.haskell.org/t/ghc-9-10-1-is-now-available/9523

Jose_A_Alonso, to haskell
@Jose_A_Alonso@mathstodon.xyz avatar

The Haskell Unfolder Episode 25: from Java to Haskell. ~ Edsko de Vries (@EdskoDeVries), Andres Löh (@kosmikus). https://www.youtube.com/live/YwshlQXKO80 #Haskell #FunctionalProgramming

  • All
  • Subscribed
  • Moderated
  • Favorites
  • JUstTest
  • kavyap
  • DreamBathrooms
  • thenastyranch
  • magazineikmin
  • InstantRegret
  • GTA5RPClips
  • Youngstown
  • everett
  • slotface
  • rosin
  • osvaldo12
  • mdbf
  • ngwrru68w68
  • megavids
  • cubers
  • modclub
  • normalnudes
  • tester
  • khanakhh
  • Durango
  • ethstaker
  • tacticalgear
  • Leos
  • provamag3
  • anitta
  • cisconetworking
  • lostlight
  • All magazines