On Tue, Jan 15, 2013 at 12:05 PM, Johnny Billquist <bqt at softjar.se> wrote:
Right. I'm sure that with enough work, you can always do it, but I'm curious on how much work. I have a feeling that compilers written in high level languages rapidly expand their requirements...
Its not that actually - IMHO. You can always use overlays and thunks to write code that works on a small address machines, like the PDP-11. I think the problem is that people that used / wanted the language did not need all of the features and frankly time moved on. The languages themselves were just too heavy not the compiler per say - the compilers became heavy to support the language features people wanted.
If PL/M or PL/360 had not lost to C (BCPL et al), it might have been different in the case of PL/1. If you note sub-set C compilers for the 8 and 16 bit machines exist or often exist as cross compilers from larger systems.
The issue is that 16-bits of data space is >>very<< limiting for a programmer, the code space can be swapped in and out with automatic or managed overlays - but data space is much harder to do.
Clem
On Mon, 14 Jan 2013 21:17:28 -0500
Cory Smelosky <b4 at gewt.net> wrote:
If there's a PDP-11 PL/I compiler, join me in benchmarking using some
PL/I examples I found on kednos.com ;)
Glad to see someone is having some joy with them. I wrote/modified
those to do performance testing of the PL/I support that I added to
the AEST binary translator. The Fibonacci one was my favourite. It
thoroughly worked out a branch look up cache I implemented.
Sadly, those figures only really indicated that you were better off
running your code on a VAX or Alpha if you didn't have the original
source. Gives more of an indication that it might be time to move
to a new platform :-(
Regards, Tim.
On 1/15/2013 12:21 PM, G. wrote:
On Tue, 15 Jan 2013 12:06:29 -0500, you wrote:
SYS$STARTUP:SYLOGIN.COM? I thought it was in SYS$MANAGER?
If it's in the right place, both logicals will work :)
try sho log sys$startup and sho log sys$manager :)
$ sho log sys$startup
"SYS$STARTUP" = "SYS$SYSROOT:[SYS$STARTUP]" (LNM$SYSTEM_TABLE)
= "SYS$MANAGER"
1 "SYS$MANAGER" = "SYS$SYSROOT:[SYSMGR]" (LNM$SYSTEM_TABLE)
$ sho log sys$manager
"SYS$MANAGER" = "SYS$SYSROOT:[SYSMGR]" (LNM$SYSTEM_TABLE)
$
On 15 Jan 2013, at 12:21, G. <gerry77 at mail.com> wrote:
On Tue, 15 Jan 2013 12:06:29 -0500, you wrote:
SYS$STARTUP:SYLOGIN.COM? I thought it was in SYS$MANAGER?
If it's in the right place, both logicals will work :)
try sho log sys$startup and sho log sys$manager :)
Ahhhh. Didn't know that logical pointed to the same place.
G.
--
Cory Smelosky
http://gewt.net/ Personal stuff!
http://gimme-sympathy.org/ My permanently-a-work-in-progress pet project.
On 15/01/2013 17:03, Brian Hechinger wrote:
On 1/15/2013 11:56 AM, G. wrote:
On Tue, 15 Jan 2013 11:46:34 -0500, you wrote:
How do I do multiple search paths?
-brian
On 1/15/2013 11:35 AM, hvlems at zonnet.nl wrote:
def/use dcl$path dka0::[bin]
Never tried, but I suppose that something like the following would work:
$ DEFINE "DKA0:[first],DKA0:[second],DKA0:[third]"
Please note that if you define your logical as /USER it will disappear as soon
as you return to DCL after running whatsoever .EXE program!
That explains that then. :)
So, I've got vim installed and working, however I'm having some trouble getting this to work they way I think it should.
I'm following the directions at:
http://www.polarhome.com/vim/manual/v73/os_vms.html
I've done this:
System administrators might want to set up a system wide Vim installation,
then add to the SYS$STARTUP:SYLOGICALS.COM
$ define/nolog/sys VIM device:<path>
$ define/nolog/sys TMP SYS$SCRATCH
And to the SYS$STARTUP:SYLOGIN.COM
$ vi*m :== mcr VIM:VIM.EXE
$ gv*im:== spawn/nowait/input=NLA0 mcr VIM:VIM.EXE -g -GEOMETRY 80x40
But it isn't working.
$ vim
%DCL-W-IVVERB, unrecognized command verb - check validity and spelling
\VIM\
$ vi
%DCL-W-IVVERB, unrecognized command verb - check validity and spelling
\VI\
$
Any ideas?
-brian
Brian:
VIM should be defined:
$ vi*m :== "$vim:vim.exe"
Once again I would advocate a dollar at the end of the logical name 'vim' so it doesn't get replaced accidently doing something else, for example, suppose you were compiling a program:
$ CC VIM
Guess what, that'll be replaced by your logical name definition, so it'll try and do something like:
$ CC DKA0:[VIM]
or the like.
Depends whether other stuff depends on the logical 'VIM', if it doesnt then:
$ define/nolog/sys VIM$ device:<path>
is a better bet
On Wed, 16 Jan 2013 01:10:12 +0800, you wrote:
$ DEFINE "DKA0:[first],DKA0:[second],DKA0:[third]"
You also need to drop the quotes, otherwise it won't be recognised as a
search list. So, more like:
$ DEFINE DCL$PATH DKA0:[first],DKA0:[second],DKA0:[third]
Oh, thanks. I didn't know/remember that detail... And I also forgot to type
the DCL$PATH part! :PPP
G.
On Tue, 15 Jan 2013 12:03:49 -0500, you wrote:
System administrators might want to set up a system wide Vim installation,
then add to the SYS$STARTUP:SYLOGICALS.COM
$ define/nolog/sys VIM device:<path>*
$ define/nolog/sys TMP SYS$SCRATCH*
And to the SYS$STARTUP:SYLOGIN.COM
$ vi*m :== mcr VIM:VIM.EXE*
$ gv*im:== spawn/nowait/input=NLA0 mcr VIM:VIM.EXE -g -GEOMETRY 80x40*
Never been a := or :== fan, I've always used = or == with double quotes, but
it should work the same both ways.
e.g. FOO == "BAR" instead of FOO :== BAR (that extends to end of line).
But it isn't working.
First of all I would check that everything is in place:
$ SHO LOG VIM
$ SHO LOG TMP
$ SHO SYM VIM (with and without /GLOBAL)
$ SHO SYM GVIM (ditto)
G. :)
On Tue, 15 Jan 2013 12:06:29 -0500, you wrote:
SYS$STARTUP:SYLOGIN.COM? I thought it was in SYS$MANAGER?
If it's in the right place, both logicals will work :)
try sho log sys$startup and sho log sys$manager :)
G.
On Tue, Jan 15, 2013 at 12:05 PM, Johnny Billquist <bqt at softjar.se> wrote:
I don't think it was, but It's hard to say, as it's just one big binary blob to me. However, would the GEM even fit on a PDP-11?
It would not easily self host, but few of the PDP-11 compilers were asked to self host. They started cross compiling from the 10's then from the Vaxen. By the time PDP-11 went EOL, the cross compilers were running on Alpha (and maybe PMAX - again too man beers ago).
On Tue, 15 Jan 2013 11:57:45 -0500
Clem Cole <clemc at ccc.com> wrote:
On Tue, Jan 15, 2013 at 11:50 AM, Johnny Billquist <bqt at softjar.se>
wrote:
The PDP-11 C compiler is a much later product than any of the stuff
you talk about here. It's something DEC did in the 90s.
Fair enough - long after I was paying much attention. Do you know if
it was part of GEM? The GEM suite allowed N front ends, and Y
back-ends.
GEM never generated code for the PDP-11. It did do IA-32, IA-64, Alpha,
MIPS. I supports a range of operating systems including Windows,
OpenVMS, Tru64, Linux and NonStop (although that never made it to
production).
To get an idea, check out my BLISS family-tree at:
http://tim.sneddon.id.au/blog/Posts/A_BLISS-ful_family_tree
As for PL/1 on 16 bit machines - it was done, particularly with subset
compilers. Again, I lost interest in it in the early 1980s. PL/C
was Cornell's version and a number of things like Intel's PL/M for
the 8080 appeared, Stanfords PL/360 etc, all show it possible,
PL/M was more of a language of it's own, based on PL/I. The others
I can't really speak for.
Regards, Tim.