Advertisement · 728 × 90

Posts by Rob Stewart

Mailmerge with Microsoft OAuth authentication You will need to complete two steps first:

mailmerge is a command line mail merge emailing tool that supports the jinja2 template engine.

If your organisation uses Microsoft email but has disabled password-based authentication, I've written a post about using mailmerge with OAuth authentication instead.

www.macs.hw.ac.uk/~rs46/posts/...

2 months ago 0 0 0 0

Holy shit.

3 months ago 155 32 15 8
Preview
Domain Specific Languages - my lecture slides from SPLV 2019 I gave a lecture series about Domain Specific Languages at the Scottish Programming Languages and Verification Summer School (SPLV) in 2019. Slides below 👇I covered.

In 2019 I gave a lecture series about DSLs to PhD students at SPLV'19. I covered 1970s DSL examples, advantages and disadvantages of DSLs, internal vs external DSLs and a discussion about defining DSLs. I've written a LinkedIn article, which links to the slides.

www.linkedin.com/pulse/domain...

4 months ago 1 0 0 0
HAFLANG - Hardware Acceleration of Functional Languages

Supported by our EPSRC HAFLANG project.

haflang.github.io

9 months ago 1 0 0 0
Architectures for accelerating functional languages.

Architectures for accelerating functional languages.

We recently gave a seminar at IOG (IOHK).

We presented our 3 functional programming language processors: Heron, KappaMutor and Siege. We discussed the historical computer architectures that influences our work (see slide) and also our desire to lower the barrier for industry adoption of our tech.

9 months ago 3 0 1 0
Preview
Backslide999's comment on "To verify an account..." Explore this conversation and more from the therewasanattempt community

Credit www.reddit.com/r/therewasan...

9 months ago 0 0 0 0
Post image

We have just sent the code 435841 to a phone number.

Please enter the phone number this was sent to:

9 months ago 1 0 1 0

#Emacs

"If you are a professional writer [...] emacs outshines all other editing software in approximately the same way that the noonday sun does the stars. It is not just bigger and brighter; it simply makes everything else vanish."

From "In the Beginning was the Command Line" by Neal Stephenson.

10 months ago 5 1 0 0
HAFLANG - Hardware Acceleration of Functional Languages

The final post-reviewed paper will be published by Springer in a few months.

The work is supported by the EPSRC HAFLANG project.

haflang.github.io

11 months ago 2 0 0 0
Advertisement

Structured combinators are hardware-friendly encodings that more directly represent user functions compared to fine-grained SKI combinators, meaning generated programs are shorter. Our compiler supports Haskell 2010, and employs code-gen strategies to support full laziness and minimise program size.

11 months ago 1 0 1 0
Preview
From Haskell to a New Structured Combinator Processor

Our paper "From Haskell to a New Structured Combinator Processor", accepted to TFP 2025 after post-symposium review, presents our new compact FPGA-based processor. Based on structured combinators, it exploits parallel memories for single-cycle reductions.

researchportal.hw.ac.uk/en/publicati...

11 months ago 4 1 1 1

A list of more architectures would be great, I would happily add them to the timeline. Thanks for your interest.

1 year ago 0 0 0 0
Command Line One Time Passwords for Microsoft Multi-Factor Authentication This post explains how to generate verification codes via the command line in Linux and MacOS to log into websites that use Microsoft mutli-factor authentication (MFA).

MFA fatigue: when your phone is not nearby to type in a one-time password, so you don't bother doing 2 minute micro tasks. Linux and MacOS users can use the command line to generate verification codes instead, for websites that authenticate with Microsoft accounts.

www.macs.hw.ac.uk/~rs46/posts/...

1 year ago 1 0 0 0

If you provide me with a list of related computer architectures that I've missed entirely from this timeline, I would be very grateful to receive this to update the timeline.

1 year ago 1 0 1 0
HAFLANG - A History of Functional Hardware

And Gyula Magó's cellular's processor architecture here:

haflang.github.io/history#even...

1 year ago 0 0 1 0
HAFLANG - A History of Functional Hardware

I mention Keller's (Utah) LISP machine here:

haflang.github.io/history#even...

1 year ago 0 0 1 0
Advertisement
HAFLANG - A History of Functional Hardware

As for a Japanese machine, I very briefly mention the Evlis machine here, though you may have a different machine in mind:

haflang.github.io/history#even...

1 year ago 1 0 1 0
HAFLANG - A History of Functional Hardware

And the Knight Machine at MIT machine that supported LISP in 1973, but perhaps that's a different MIT machine to the one you had in mind?

haflang.github.io/history#even...

1 year ago 0 0 1 0
HAFLANG - A History of Functional Hardware

I completely agree about how important dataflow architectures were in the 1980s. I (briefly) mention the Manchester dataflow machine in the timeline:

haflang.github.io/history#even...

1 year ago 0 0 1 0
Post image

Tiny suggestion - I'm unsure whether the 1st edition included an example of recursive Eval monad parallelism. Performance-wise, `runEval` is free, recursive calls to it doesn't have overhead. See the attached example. Apologies if recursive `runEval` calls is discussed, I must've missed it.

1 year ago 1 0 0 0

Which is to ask: could a 2nd edition of the book be as clear as saying: if you're not in the habit of representing your computations as lazy data structures and you don't wish to familiarise yourself with evaluation strategies, then use the simpler Par monad API?

1 year ago 0 0 0 0

When I advocate for the Eval monad in lectures, my analogy is it's parallel *breadth-first* search. E.g. the sudoku solver in your book, you want to eat away at lots of possible solutions rather than going down the rabbit hole of one: if you can fully embrace laziness, the Eval monad is for you.

1 year ago 0 0 1 0
Preview
Parallel and Concurrent Programming in Haskell Chapter 4. Dataflow Parallelism: The Par Monad In the previous two chapters, we looked at the Eval monad and Strategies, which work in conjunction with lazy evaluation to express parallelism. … - Sel...

Any more reflections you have about Eval vs Par monads would be great. I still teach rpar/rseq, but I understand that @nishiorain.bsky.social taught using the Par monad. Could like-for-like code examples and their performance be given to demonstrate these pros/cons:

www.oreilly.com/library/view...

1 year ago 1 0 1 0
Cloud Haskell, closures, and statics

Perhaps expanding on your December 2018 views about distributed-process on the parallel-haskell mailing list would be offer a retrospective insight about that library.

groups.google.com/g/parallel-h...

1 year ago 1 0 1 0
HAFLANG - A History of Functional Hardware

Today I added a slide about the collapse of the LISP machine market around 1987.

haflang.github.io/history.html...

1 year ago 3 0 0 0
HAFLANG - A History of Functional Hardware

In 2023 I curated a 100 year timeline about hardware implementations of functional programming languages. Best viewed on a desktop or laptop screen. I occasionally add to it.

haflang.github.io/history.html

1 year ago 21 4 2 0
Advertisement
Post image

I often point students to The Elements of Style by Strunk & White for dissertation or paper writing. I've come across researcher Laura Lisabeth, who "combines historiography and cultural studies to critically examine" this guide, touching on racial identity, social power and marginalised identities.

1 year ago 2 1 1 0
Laura Lisabeth

Laura's website:

lauralisabeth.academia.edu

1 year ago 0 0 0 0
Post image

I often point students to The Elements of Style by Strunk & White for dissertation or paper writing. I've come across researcher Laura Lisabeth, who "combines historiography and cultural studies to critically examine" this guide, touching on racial identity, social power and marginalised identities.

1 year ago 2 1 1 0
Post image Post image

The comments section in a Telegraph review of a new EV car is entirely predictable. #EV

1 year ago 0 0 0 0