Talk:FOCAL (programming language)

Latest comment: 2 months ago by ReadOnlyAccount in topic "nary a pause" - Great line!

Gosh, that takes me back! I first used FOCAL on a PDP8-L in 1969 mumble mumble ... Anyway, the TYPE command always preceded numeric output with = on that implementation. Richard Pinch 06:57, 26 August 2006 (UTC)Reply

It's probably worth mentioning FOCAL's slightly odd subroutine mechanism. DO xx.yy executed line xx.yy and DO xx executed all lines in block xx. The return was simply to finish the line or block, and there was no parameter passing mechanism. Richard Pinch 06:57, 26 August 2006 (UTC)Reply

FOCAL comes from JOSS, both of which bear resemblance to the POSIX/UNIX BC language. C-BC, which you can find on GitHub, is a large superset of BC language made like C, that also supersets most of GNU BC, and happens to also be a near-superset of FOCAL - enough so, for instance, to be able to almost verbatim port the FOCAL implementation of the Lunar Lander TTY-based game, which is included in the C-BC repository. An implementation of FOCAL, itself, may go up alongside it, soon. — Preceding unsigned comment added by 65.29.226.169 (talk) 09:09, 13 December 2022 (UTC)Reply

Acronym?

edit

The article has FOCAL as a short name for FOrmula CALculator, but the book archived at http://www.bitsavers.org/pdf/dec/pdp8/handbooks/programmingLanguages_May70.pdf as well as an archive copy of DEC-08-AJAB-D PDP-8-I FOCAL Programming has it listed as

   Formulating On-Line Calculations in Algebraic Language

BTiffin (talk) 17:41, 3 May 2015 (UTC)Reply

Dynamically typed ?

edit

IINM, It's not statically nor dynamically typed. Focal has no data types at all (more precisely, has only one type - real). 89.208.93.254 18:16, 6 March 2007 (UTC)Reply

Lexicographical Website

edit

Please do not remove the link to the focal.ie article. It is not "extraneous", as both articles have very similar names. Stephen Shaw 21:25, 27 September 2007 (UTC)Reply

edit

I removed the following link. Google turns up no such implementation anywhere, much less at code.google.com. --Vrmlguy (talk) 10:18, 13 September 2008 (UTC)Reply

Conversion of error address to floating point number

edit

the division by zero error was detected by code at address 4333 so the error message was: ?28.73 @ 01.10

So how does ?28.73 @ 01.10 represent the address 4333? That's not obvious to me, and I think would benefit from a brief explanation. Royhills (talk) 18:51, 11 November 2009 (UTC)Reply

Yes, that's puzzling me too. I'll try to find out more, and will rewrite/amplify if I can. --Kay Dekker (talk) 20:15, 21 September 2010 (UTC)Reply
It's bizarre, or my brain is fried without my noticing it. I can't make the maths add up straight. if you look at the UW-FOCAL manual (http://www.cs.uiowa.edu/~jones/pdp8/focal/UWFocal.pdf), the User Functions section says:
The ERROR2 instruction above calls FOCAL's error routine which stops the program and prints out an error code equal to the page number and relative location on the page where the error occurred. For example, if ERROR2 is located at location 3246(oct) the error code would be 13.38.
Memory pages on the PDP-8 were 128 words. 13*128+38 = 1702 decimal, 3246 octal. All sensible so far. However, the example on this page won't work out that way. Worse still, the UW-FOCAL manual has Appendix II, tabulating all its error codes, where you can see lines such as 19.:4 LOGARITHM OF ZERO REQUESTED. From that it looks as though the offset field actually contains two SIXBIT characters, not decimal digits. My head is melting. Can anyone smart see what's going on there? --Kay Dekker (talk) 01:25, 22 September 2010 (UTC)Reply

"nary a pause" - Great line!

edit

Well, there are some old hackers here! I remember those 4 Teletypes (ASR-33s) clacking away, and watching the front panel of the PDP-8/L blinkenlights was a sign of how heavily loaded the CPU was. Having the extra 4K of memory was a big deal back then. The OS was called the Quad operating system, IIRC. Of course, 4 Teletypes would load the CPU with just 40 interrupts per second when printing. I appreciate the humor within the phrase, and hope we can keep that language in the article. Kd4ttc (talk) 22:31, 17 April 2016 (UTC)Reply

I share your appreciation, but sadly the fun police killed it. —ReadOnlyAccount (talk) 15:23, 15 April 2024 (UTC)Reply

Anecdote from MS Focal

edit

I am not sure if something like [1] is worth being mentioned? 2003:DB:7F29:9500:1260:4BFF:FE75:564D (talk) 16:59, 4 August 2020 (UTC)Reply

No. It's a trivial anecdote and there's no WP:RS.
In any case, as far as I can tell, there never was such a thing as Microsoft FOCAL. If there are any reliable sources showing that there was, that might be worth mentioning in the article. --Macrakis (talk) 17:25, 4 August 2020 (UTC)Reply

Testing strings

edit

I added a paragraph about coercing strings to numeric by prepending a zero, and testing string entries. It might also be useful to add something about exactly what 'E' means when numerically evaluating a string; as I recall it actually meant "times ten to the power of" so pretty much any string with more than one 'E' would overflow. 108.237.205.1 (talk) 21:14, 27 March 2023 (UTC)Reply

FOCARL

edit

It appears that Carleton College used to have its own FOCAL dialect called FOCARL [sic]. I have however not been able to find better quality sources for article inclusion. —ReadOnlyAccount (talk) 15:17, 15 April 2024 (UTC)Reply