# bash and BSD date, 96 bytes

As an alternative to [Toby Speight's answer](https://codegolf.stackexchange.com/a/266286) but using BSD implementation instead of GNU one

```sh
s=(1 2)
m="-v$2y -v$1 -v+1m -v1d"
date $m -v-$((s[`date $m +%w`]+1))d +%A\ %eth|sed s/1th/1st/
```

It has the following limitations:
- months can be integers only, not strings (`October` or `sep` for example)
- separator is changed from `/` to blanks which is natural shell arguments separator

There's certainly room for tweaking.