9 ms·
Lisp Interpreter in Tandy TRS-80/100 Basic
- RodgerTheGreat 7y agoFacebook has to be the least convenient way this could be hosted. Here's a mirror: https://pastebin.com/raw/Yq5khyQL https://pastebin.com/raw/Yq5khyQL
- macjohnmcc 7y agoPrinted in the magazine and having to type it in was significantly less convenient than Facebook.
- Zenst 7y agoDepends upon perspective. Can walk into shop and purchase magazine and the magazine owner wouldn't know what you read, when you read it.... Equally the outlay would be just for the magazine compared to internet connection, computer capable of browsing the internet and then still have to transfer it to the TRS-80/100. Then there was the important aspect many miss-out upon today, when you typed something in from a magazine, you got to know the code over just running a program. You made mistakes, and often the magazines would have erata sections to cover typo's from the last edition and with those mistakes - you learned even more than just hitting run.
- macjohnmcc 7y agoYeah I'm not supporting Facebook just stating that the physical act of typing it all in vs copying from a Facebook post is not as easy. I have no Facebook account. I typed many programs in from Compute and other magazines back in the day. I miss Byte magazine most of all. I may even try to this this on my Model 100 at some point. Just for kicks.
- Zenst 7y agoThe TRS-80 model 100 has a RS232, so a null-modem cable should be the only hardware needed to transfer.
- reaperducer 7y agoAnd for convenience, a terminal program. It makes debugging the connection to the Model 100 a lot easier. I use Serial on macOS. I don't remember what it costs, but it couldn't have been much. The Model 100 supports RS232 connections up to (IIRC) 115k baud, but mine gets flaky at that speed, so I keep it at 9600. That's more than fast enough for the tiny files the 100 uses. It's the next door neighbor to instant.
- reaperducer 7y agoPrinted in the magazine and having to type it in was significantly less convenient than Facebook. But, apparently, infinitely more resilient!
- dukoid 7y agoLooks more or less like "standard" MS-Basic... Shouldn't be too hard to get it running with vintage-basic.net ?
- daveloyall 7y ago> `PRINT#-1` ... on line 4500 looks to be some kind of idiom.. I don't see a corresponding `OPEN` statement?
- spc476 7y agoThat might send output to the printer. I know on the TRS-80 Color Computer, the printer was #-2.
- ficklepickle 7y agoI have one of these, with printer. I should really dig it out one of these days. It's from before my time but something about cassettes and thermal printers piques my interest.
- dukoid 7y agoSeems to be the tape channel: http://www.colorcomputerarchive.com/coco/Documents/Manuals/Hardware/Getting%20Started%20With%20Extended%20Color%20Basic%20%28Tandy%29.pdf http://www.colorcomputerarchive.com/coco/Documents/Manuals/H...
- reaperducer 7y agoFacebook has to be the least convenient way this could be hosted Compared to the rest of the internet, yes. But for the Model 100 people, this is actually the cream of the crop. Sadly, information in the Model 100 community is notoriously difficult to get to. Well, not fully "difficult." More like "obnoxious." Most of the good stuff is on old web sites with many broken links, little documentation, and abysmal navigation. I think the main repository is actually the web site of a guy who died years ago and is kept online, but unmaintained and suffering from severe bitrot, by people about to go the same way. For interactive discussion, the primary source is a mailing list where people ask the same questions over and over and nobody trims their replies, so you might get a message reply that just says "yep" followed by 150 lines of nested quotes. In digest form, it's simply unusable. So, amazingly, a Facebook post is a thoroughly modern and convenient way for Model 100 enthusiasts to pass information around, compared to all of the other methods they employ.
- zozbot234 7y ago> Most of the good stuff is on old web sites with many broken links, little documentation, and abysmal navigation. I think the main repository is actually the web site of a guy who died years ago and is kept online, but unmaintained and suffering from severe bitrot, by people about to go the same way. As long as the site(s) have been grabbed by Internet Archive, I'm not sure that this has to be an issue. (I've noticed that the archive.org 'Wayback machine' will even archive some downloads, albeit it's not something that should be counted on.)
- reaperducer 7y agoI'm not sure that this has to be an issue It doesn't "have to," but sadly it is. The internet, like the rest of the world, is not a perfect place. If IA doesn't find a web site before the bitrot sets in, then what? There are huge swaths of the web that are not in IA, and from what I read on HN, IA doesn't have the capacity to archive.
- kjs3 7y agoI don't want to speak ill of them because they're doing an amazing job, but the Internet Archive doesn't have everything (especially old, long gone and/or obscure sites), isn't always complete, and often doesn't have things that back in the day that were on FTP sites. Sometimes you get lucky, but I've not had great luck there. If you're maintaining some repository of information others find useful, please-please-please have a plan to pass it on to a successor caretaker and a notation in your will about your wishes.
- zozbot234 7y agoBlogpost reposting content from 80 Micro Magazine (published sometime in 1982). I assume that the original issue is somewhere in the archive.org collection.
- RodgerTheGreat 7y agoGood thinking. Looks like it might be this: https://archive.org/details/80-microcomputing-magazine-1983-03/page/n175 https://archive.org/details/80-microcomputing-magazine-1983-...
- zozbot234 7y agoFrom looking at the contents listing of this issue (400+ pages!) this looks like it might be Part 1 of a LISP tutorial that perhaps was extended in subsequent issues? I wonder if archive.org has got it all.
- haunter 7y agoYes, in the next issues Part 2 https://archive.org/details/80-microcomputing-magazine-1983-04/page/n253 https://archive.org/details/80-microcomputing-magazine-1983-... Part 3 https://archive.org/details/80-microcomputing-magazine-1983-05/page/n305 https://archive.org/details/80-microcomputing-magazine-1983-...
- velcrovan 7y agoFunny, my current job involves a lot of coding in BASIC (BASIS and ProvideX commercial flavors) and I'm trying to wedge in some Racket where I can. I got my start typing in listings from Rainbow magazine at age 10. (I never thought I'd be writing BASIC for a living though, life took a turn at 35)
- byron_fast 7y agoPretty sure my life would have turned out differently if I'd seen some Lisp listings in Rainbow. I do recall William Barden Jr. making fun of parentheses once.
- zozbot234 7y ago> BASIS and ProvideX commercial flavors Looks like these are both "business" BASIC variants. Wiki has some information about ProvideX, nothing about BASIS (either the company or the BASIC product). What's the point of coding in these sorts of languages at the dawn of the 2020s? Do you still have a lot of legacy code around that can't be forward-ported for some reason? Do you have non-technical folks surveying the code, or even contributing to it?
- deleted 7y ago[deleted]
- velcrovan 7y agoYou said it, legacy. Our ERP is essentially a folder of three hundred or so programs that all `RUN` each other and operate on flat files. The coding is mostly maintenance, but we sometimes need to add new programs/modules/menus due to changes in the business. We will be replacing it at some point, hard to say when. I won't miss trying to understand a 30-year old program with line numbers and two-letter variables, but I will bet money that whatever the new system is will be slower and more cumbersome for users.
- zozbot234 7y agoDoes 'RUN'ning a program keep global variables and the like around (like CHAIN)? If not, then those pieces of code are self-contained and could be replaced gradually by something saner.
- venatiodecorus 7y agoBroken link, can't access without an account.
- andrewshadura 7y agoI can’t access it even with an account.
- deleted 7y ago[deleted]
- Sam_Harris 7y agoshit link
- haunter 7y agoFrom the author: >This one is just for fun. When I first learned Lisp in 1981, I did so by reading Winston and Horn's book and writing my own Lisp interpreter. The interpreter was written in Basic on the only system I had access to at the time: a TRS-80 Model I. This interpreter eventually ended up as part of a series of three articles on Lisp that I wrote for 80 Micro, a TRS-80 hobbyist magazine. The first part of the series, which contains the source code for the interpreter itself, is included here. Note that the listing has all optional spaces removed so that I could fit both the interpreter and 1100 (!) cons cells into 16K (!!) of memory http://mypage.iu.edu/~rdbeer/ http://mypage.iu.edu/~rdbeer/
- neonate 7y agoHis pdf of the original article is there too: http://mypage.iu.edu/~rdbeer/Software/BasicLisp/BasicLisp1.pdf http://mypage.iu.edu/~rdbeer/Software/BasicLisp/BasicLisp1.p...
- imglorp 7y agoOh hah, I know this guy from Case Western CS dept. Around 1990 he was writing some Lisp on a TI Explorer lisp machine to simulate cockroach neurons for an AI project.
- leoc 7y agoIf we're willing to extend the discussion to microcomputer Lisps targeting machine language, I'll repost an old comment https://news.ycombinator.com/item?id=20019592 https://news.ycombinator.com/item?id=20019592 : > There were various Z80 and MOS 6502 microcomputer Lisp implementations written back in the '80s, some commercially released at the time, some readily accessible nowadays. https://www.wisdomandwonder.com/link/3787/how-small-can-a-sc.. https://www.wisdomandwonder.com/link/3787/how-small-can-a-sc.... https://groups.google.com/forum/#!topic/comp.lang.scheme/Z_2.. https://groups.google.com/forum/#!topic/comp.lang.scheme/Z_2.... > (There's one that I'm horribly, horribly overdue to get back to the authors about archiving on the Internet, actually. Anyone who's based in North America and happens to have the hardware and the expertise to recover data from both 5.25" and 8" floppies in some CP/M format?)
- kjs3 7y agoYou might check out the ClassicCmp (http://www.classiccmp.org/ http://www.classiccmp.org/) or Vintage Computer Foundation (http://vcfed.org/wp/ http://vcfed.org/wp/) mailing lists. There are folks on there with extensive expertise and equipment for recovering and archiving data.
- leoc 7y agoThanks!
- Lord_Nightmare 7y agoI've got access to an 8" drive as well as plenty of 5.25" drives, and the hardware to do flux images. There are others with access to similar hardware. As kjs3 suggested, contacting people via the classiccmp and vcfed lists is a good idea.
- LeServal 7y agoHi... I'm the guy who ported this, which was actually not too difficult, as the original gentleman, to whom all honour belongs, left good hints. Most "issues" where really just IFs without THENs. There were only two errors I saw in Ira Goldking's source, a wrong line number and a THRN instead of THEN. This is a link for those not on Facebook: https://pastebin.com/2Mih71eF https://pastebin.com/2Mih71eF
- LeServal 7y agoHi everybody, I put it also here as per eschaton's request: https://github.com/KedalionDaimon/LispForTandy https://github.com/KedalionDaimon/LispForTandy
- leoc 7y agoYou know what else was written in BASIC? The original Smalltalk interpreter https://youtu.be/pACoq7r6KVI?t=1189 https://youtu.be/pACoq7r6KVI?t=1189 . ("I'm not ashamed, I got it going quickly" - Dan Ingalls.) Obviously this was just a scratch implementation of what became Smalltalk-72, rather than a Smalltalk-80.
- perl4ever 7y agoThere was a TRS-80 with a 68000... Also, I know that ELIZA was available for TRS-DOS (which I think ran on the Z80) and wasn't that based on Lisp?
- simplify3 7y agoI'd wondered if there was a Color Computer variant and indeed there was/is: From Hot Coco, April 1984 http://www.colorcomputerarchive.com/coco/Documents/Magazines/Hot%20CoCo%20(Searchable%20image)/ http://www.colorcomputerarchive.com/coco/Documents/Magazines... Now to test it out.