From Esolang
Jump to navigation Jump to search

The author of the language originally requested within the article that anyone with feedback emailed him; his email address is embedded inside the URL of the External Resource. His website implies that there is an implementation, but the only way to get it is by emailing him (I am not too certain about this). --ais523 08:14, 5 Jun 2006 (UTC)

Thanks for the wonderful cleanup ais523!

Currently the source for fltiny is misplaced - if anyone has one I sent them or they downloaded please contact me.

It is a single c source file I would be happy to mail to anyone who wants it. Email me at mailto:// to get your copy of the source. If anyone would care to host the source and a small collection of Tiny programs please let me know. Tiny is released under GPL. --User:Ron.hudson 16:38, 5 June 2006 (PST)

This server hosts implementations, documentation, and examples of esoteric programming languages; see Esolang:The Esoteric File Archive for details. --ais523 07:51, 6 Jun 2006 (UTC)

I have removed some parenthetical comments from the cleanup, and replaced them with confirmations of the assumptions given, I'll go back and look at my specification document to make it more clear as well.

Just a point of discussion on the Computational Class, Would Tiny not still be limited by available memory if it were not for the limits I put on the arrays and program steps.. I suppose the other languages are likewise limited though. If anyone wants to re-write tiny to malloc stack levels, program lines and array elements as needed I would be all for it. I just could not get the hang of pointers myself.. I need more practice I suppose. This is the first time I am using structures in a C file too.

--User:Ron.hudson 16:41, 5 June 2006 (PST)

All actual implementations are bounded in practice. However, when speaking of the computational class we think about an mathematical interpretation of the language, where everything that the language specification doesn't explicitly bound is unbounded. You seem to have included in the specification some bounds that, in my judgement, I would consider to be just accidents of the C implementation, such as the specific bit sizes of variables.
Indeed allowing line numbers, variables and expressions to have unbounded values would be enough to make Tiny Turing-complete (you don't even need the arrays). It is also possible to add some other kind of unbounded structure, such as the queue that was recently added to Omgrofl to make it Turing-complete, you may wish to look at the Talk:Omgrofl discussion. A single unbounded stack is not usually enough (although two are, since they can implement a Turing tape).
Although an actual implementation cannot really be unlimited, I would suggest a possible rule of thumb for how close you can get: Have the only implementation bound be the total amount of memory used, not the size of any single parts (unless you really want them to be limited). Although it can be a pain to actually get things like unlimited numbers in a language like C which doesn't include them as a standard. --Ørjan 15:54, 6 Jun 2006 (UTC)

Dynamic Version of Tiny on it's way

Due to some cleanup and edits donated by User:ais523 There may be a dynamic Tiny soon. The current version has limits on both stacks, The Array, and the number of statements (30,30,999 elements,999 statements respectively)

--User:Ron.hudson 7-june-2006 10:39 PDT

Dynamic Tiny ready at Reference website

The Tiny Interpreter link in the article now downloads the Dynamic Tiny Source Code. I have someone working on line number sorting in interactive mode. There are now links on the Specifacations site for some small programs written in Tiny (as well as a makefile).

User:Ron.hudson 8-june-2006 21:06 PDT @216

New Updates Comming

Somthing I did made the dynamic version begin to have problems, I found that under some circumstances the interpreter would just hang. (Lines with no line numbers in exectuive mode) and other strange things. So before making the following changes we went back to the static version.

New Changes: Tiny now sorts it's line numbers - in both executive mode and interactive mode, line numbers are sorted into the program as they are added.

The Array is more calculable.. allowing stufff like '[(a 3+) 1 +] (a 3 +)' to increment the a+3th item in the array. Before this change you had to: '[a 3 +] x [(x) 1 +] (x)' calculate the array index separatly.

Debugging Facility: the #k command sets and removes tracepoints and break points. At input the debugger can be entered by entering a "!" instead of a number.

The new version is 0.0.023 and wil be available soon on the source webpage. 0.0.023 is available (and has been for a while, Sorry this page was not updated)

Discard entry from stack

I think you can discard entry from computation stack by typing


You can duplicate one by typing (well, actually you can't...)


--Zzo38 14:57, 6 May 2007 (UTC)


I understand the first one, but not the second. What do you intend to do with the ]$[$ code? The '[' clears the computational stack..? --rhudson

With the clearing you could do this: ]$$[$$ but that leaves only the top duplicated not the rest of the stack. --rhudson 7:58am 9/14/2007

O, I looked at the source code and realized that is does. But maybe it shouldn't clear the computation stack. What use is there for it to do so? Instead, it should just clear the computation stack after each line of code is executed, it would make more sense, wouldn't it? There are other things I don't like about Tiny as well, that isn't the only one. --Zzo38 18:02, 8 May 2007 (UTC)

I am open to suggestions, but a design goal was to have a stateless langage '[' should always do the same thing no matter when/where it is used. I clear the stack to prevent stack overflow. What else did you not like? --rhudson 7:58am 9/14/2007

[Floating Point Tiny]

Comments ??

'Line numbers must floating point numnbers and may have up to 3 digits to the right of the decimal point' & 'Line numbers are floating point and are displayed to 4 decimal places' seem to contradictSerprex (talk) 22:57, 28 December 2016 (UTC)