<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
Re: Floating point is unnecessary for operating systems: Yes, that's
a big relief for early, small computers without hardware floating
point! But floating point is important for runtime libraries which
need to implement math functions or reading & writing floating
point numbers. IMHO that's work for a system implementation
language too, YMMV.<br>
<br>
Re: BLISS:<br>
I found it sad, but the newest versions of the BLISS compilers do
not support using it as an expression language. The section
bridging pp 978-979 (as published) of Brender's history is:<br>
<blockquote>"The expression language characteristic was often highly
touted in the early years of BLISS. While there
is a certain conceptual elegance that results, in practice this
characteristic is not exploited much.<br>
The most common applications use the if-then-else expression,
for example, in something
like the maximum calculation illustrated in Figure 5. Very
occasionally there is some analogous use
of a case expression. Examples using loops (taking advantage of
the value of leave), however,
tend not to work well on human factors grounds: the value computed
tends to be visually lost in the
surrounding control constructs and too far removed from where it
will be used; an explicit assignment
to a temporary variable often seems to work better.<br>
On balance, the expression characteristic of BLISS was not
terribly important."<br>
</blockquote>
Another thing that I always liked (but is still there) is the ease
of accessing bit fields with V<FOO_OFFSET, FOO_SIZE> which was
descended from BLISS-10's use of the PDP-10 byte pointers. [Add a
dot before V to get an rvalue.] (Well, there was this logic
simulator which really packed data into bit fields of blocks
representing gates, events, etc....)<br>
<br>
Yes, there is now a BLISS-64 compiler and a MACRO-64 compiler which
generate x86_64 code.<br>
<br>
- Aron<br>
<br>
Ref: <a class="moz-txt-link-freetext"
href="https://www.cs.tufts.edu/~nr/cs257/archive/ronald-brender/bliss.pdf">https://www.cs.tufts.edu/~nr/cs257/archive/ronald-brender/bliss.pdf</a><br>
<br>
<br>
<div class="moz-cite-prefix">On 7/8/24 18:14, Paul Winalski wrote:<br>
</div>
<blockquote type="cite"
cite="mid:CABH=_VQABpXciOhd=OYGjGWeQAnBo3hMFeKm+bEzK9J1_bzfig@mail.gmail.com">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<div dir="ltr">...
<div class="gmail_quote">
<div>BLISS is also a true, full-blown expression language.
Statement constructs such as if/then/else have a value and
can be used in expressions. In C terminology, everything in
BLISS is a lvalue. A semicolon terminates an expression and
throws its value away.</div>
...
<div>DEC used four dialects of BLISS as their primary software
development language: BLISS-16, BLISS-32, BLISS-36, and
BLISS-64 the numbers indicating the BLISS word size in
bits. BLISS-16 targeted the PDP-11 and BLISS-36 the
PDP-10. DEC did implementations of BLISS-32 for VAX, MIPS,
and x86. BLISS-64 was targeted to both Alpha and Itanium.
VSI may have a version of BLISS-64 that generates x86-64
code.<br>
</div>
<div><br>
</div>
<div>-Paul W.<br>
</div>
</div>
</div>
</blockquote>
<br>
</body>
</html>