The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
From: Bakul Shah <bakul@iitbombay.org>
To: Sebastien F4GRX <f4grx@f4grx.net>
Cc: tuhs@tuhs.org
Subject: [TUHS] Re: Software written in B
Date: Wed, 7 Jun 2023 10:26:10 -0700	[thread overview]
Message-ID: <798AFBDA-375B-4038-9587-1BA38309E8E7@iitbombay.org> (raw)
In-Reply-To: <1e651370-3ada-e211-c277-409d6563500d@f4grx.net>

Then there is Arthur Whitney's B language. This is a *completely*
different beast from Ken Thompson's B.

https://web.archive.org/web/20160505183405/http://kparc.com/b/

Here's binary search in it:
  b[Ii]{h:#x;l:0;while(h>l)$[y>x[i:/l+h];l:i+1;h:i];l}
for comparison here it is in C:
  I b(I*x,I y){I h=x[-1],i,l=0;while(h>l)if(y>x[i=l+h>>1])l=i+1;else h=i;R l;}

[B is modeled after his K language, hence the extreme terseness]

Perhaps not most people's cup of tea but certainly interesting. Too bad
no one else has dared to pick it up! :)/2

> On Jun 7, 2023, at 3:14 AM, Sebastien F4GRX <f4grx@f4grx.net> wrote:
> 
> So for fun and self-education, I am now writing a (or yet another) B compiler, in C, after reading Jack Crenshaw's "Let's build a compiler" documentation ( https://compilers.iecc.com/crenshaw/ )
> 
> Here it is: https://git.sr.ht/~f4grx/bpars


  parent reply	other threads:[~2023-06-07 17:26 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-06-07 10:14 [TUHS] " Sebastien F4GRX
2023-06-07 10:38 ` [TUHS] " Lars Brinkhoff
2023-06-07 15:05 ` Angelo Papenhoff
2023-06-07 15:57 ` Clem Cole
2023-06-07 16:21   ` Lars Brinkhoff
2023-06-07 17:26 ` Bakul Shah [this message]
2023-06-07 18:16 ` Phil Budne
2023-06-07 23:49 ` Andrew Hume
2023-06-08  2:10   ` segaloco via TUHS
2023-06-08  3:31     ` Phil Budne
2023-06-08 15:05       ` segaloco via TUHS
2023-06-14 11:51         ` Angelo Papenhoff
2023-06-14 20:03           ` Angelo Papenhoff
2023-06-14 21:53             ` segaloco via TUHS
2023-06-14 22:05               ` Angelo Papenhoff
2023-06-15  8:00             ` Sebastien F4GRX
2023-06-15  8:21               ` Angelo Papenhoff
2023-06-15  8:33                 ` Sebastien F4GRX
2023-06-17  8:19             ` Angelo Papenhoff
2023-06-19  9:52               ` Sebastien F4GRX
2023-06-19 10:18                 ` Sebastien F4GRX
2023-06-19 10:48                   ` Lars Brinkhoff
2023-06-19 10:55                     ` G. Branden Robinson
2023-06-19 11:07                       ` Sebastien F4GRX
2023-06-19 18:44                         ` segaloco via TUHS
2023-06-23 10:59               ` Angelo Papenhoff
2023-06-23 13:32                 ` Sebastien F4GRX
2023-06-23 14:01                   ` Angelo Papenhoff
2023-06-23 14:14                     ` Sebastien F4GRX
2023-06-23 14:39                       ` Angelo Papenhoff
2023-06-23 14:10                 ` Sebastien F4GRX
2023-06-23 14:49                   ` Angelo Papenhoff
2023-06-23 15:31                     ` Sebastien F4GRX
2023-06-23 15:36                       ` Angelo Papenhoff
2023-06-23 15:53                         ` Sebastien F4GRX
2023-06-08 14:41   ` arnold
2023-06-09  8:56 ` Sebastien F4GRX
2023-06-09  9:57   ` Lars Brinkhoff

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=798AFBDA-375B-4038-9587-1BA38309E8E7@iitbombay.org \
    --to=bakul@iitbombay.org \
    --cc=coff@tuhs.org \
    --cc=f4grx@f4grx.net \
    --cc=tuhs@tuhs.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).