TinyBASIC for Raspberry Pi

A large number of engineering professionals are using the Raspberry Pi to explain to their kids what it is they do at work. When we’ve met these families, the enthusiasm positively dripping off everybody has been extraordinary. But we’ve also had a really surprising number of emails from parents who haven’t done any programming since school, but who still have books on BASIC from when they were kids, remember enjoying computing lessons, and want to share some of what they used to do with their kids. It’s actually a great way to get kids started, especially if you have some enthusiasm of your own to share: enthusiasm’s contagious.

The good news for those people, and for anyone else who wants to learn BASIC from scratch or revisit an old friend, is that TinyBASIC is now available for the Raspberry Pi. Andrew Lack has ported this very lightweight editor, interpreter and graphics package to the Pi, and we think it’s great.

Before I go any further, I want to pre-empt any “But BASIC is not an object oriented language and will therefore ruin the tiny, plastic minds of our children, who will be forever unable to understand structured programming. And GOTO is for clowns,” comments here by saying that learning BASIC as kids doesn’t seem to have held any of our developers back; and that if you really hate GOTO you can actually disable it in TinyBASIC. As Andrew says:

One of its unique features is the provision of flavours which allows the beginner to taste programming with vanilla which has the simple—but unsatisfactory—GOTO statement, then make the switch to sweeter raspberry and learn the joys of structured programming where GOTO is banned!

A download, sample code and documentation are all available here. There are a few very cute samples available: we thought drawing a Union Flag and calculating Pi seemed curiously apposite.

Flag, code

Flag output, and the BASIC you need to draw it. Click to visit example code page.

We’re considering bundling TinyBASIC as part of the standard Raspbian image once we’ve done some work on how popular it turns out to be (after all, it’s not as if it’s going to be taking up scads of space on your SD card; the .deb distribution file is only 66k): let us know what you think in the comments.


NickMon68 avatar

Yes please include it in the standard package !

Aaron avatar

This is very cool. I first used Tom Pittman’s Tiny Basic is 1978 on a Netronics Elf II computer, which was an amazing device for the day. And now, 34 years later, another Tiny Basic on another amazing device! Very cool!

Jonathan Allen avatar

I vote for including it. I learned BASIC in the ’80s on my Amstrad and now work in IT, albeit using SQL but dont doubt that BASIC fired my enthusiasm to work with computers

swirlythingy avatar

Alternate suggestion: install RISC OS on your Pi and get actual, proper BASIC built in.

grant avatar

This is fantastic, l was an avid Basic user in 1983 with my BBC Micro. This will help our kids get started, then they can move onto other more complex languages. Well Done!!

David Bley avatar

This is GREAT. My first programming was in tinyBasic on TimexSinclair. It is so easy to get a program running that does something. I am excited by the Pi. Question: What video output does Pi support? NTSC? PAL?

mahjongg avatar

Both, and various variants for places like Japan and Brazil.

The one missing standard is SECAM.

Ben Smith avatar

Definitely needs to go in the standard distribution.

mccp avatar

+1 for this: “learning BASIC as kids doesn’t seem to have held any of our developers back”.

In fact, I’d go so far as to say that you’ve probably missed the point if you think that any one language is better than another.

Oh, and +1 to bundle TinyBASIC!

liz avatar

I would emphatically agree – but I am reminded of a thread from our forums last year, in which many people displayed a really surprising LOATHING of BASIC as a teaching language.

Robert avatar

Whew… I remember that thread… :-(

gregd99 avatar

In my opinion BASIC existed as a way to learn some simple programming skills in highly resource constrained machines.

Despite a background in Pascal (!) and C and even assembler I have learned to programme in Jython and C++ and I even use VBA for office applciatons (it is surprisingly powerful with simple class support included).

what about…. some sort of resource to help parents learn to programme in python? At its simplest the syntax is pretty much like BASIC. However the opportunity to expand your skills in Python is enormous!!

Even if parents can’t keep up if they can help their kids get started then if they have an interest they will find ways to learn about python.

What do you think?


Piers avatar

I totally agree with Greg, more resources associated with python would only help people who are new to python like myself.

Coming from a VB background i have found the language very user friendly and agree with the similarities..

I would urge anyone interested in python to actively get involved in the python section in the forum as there is a great community and some great resources which are invaluable for beginners..

liz avatar

Oh, I don’t think there’s any question that Greg is right; but it’s not an either/or thing.

Tassilo Rau avatar

A BASIC interpreter would be excellent – please add it!

Giles avatar

At last – a REAL programming language that will turn my Raspberry Pi from an expensive paperweight into something that I can actually use! Hurrah!

Please can we have BBC Basic one day, too…?

Steve Drain avatar

BBC BASIC is integral to RISC OS. You can program fast multi-tasking desktop programs with it, as well as those simple, instant “Hello world!” loops. It has a built-in assembler if you want to try that or to make things even faster. With the User Interface Toolbox you can even get a taste of OOP if you need that.

Roger avatar

There is nothing whatsoever wrong with programming in BASIC. In fact, I would say that it is a beneficial foundation for programming knowledge insofar as it provides an experiential grounding for structured / object oriented development paradigms.

It is, in many respects, an early “scripting language” for microcomputers (microprocessor hardware) and their operating systems.

Kathryn Peake avatar

+1 to add Basic to package
I’m about to start a Raspberry Pi learning community at the Sixth Form College where I’m a maths teacher – and I’d at least be off the starting blocks if I can use Basic! Plus, it would support teaching Decision Maths pseudo-code. (And, in this case, it would also be the ex-engineer grandmother encouraging her grandson!)

Jongoleur avatar

Bundle it.

It can’t be considered harmful….. ;-)

Nerd Uno avatar

A thousand times YES.

PalleA avatar

It’s a GREAT idea..I started learning Basic myself on the good old ZX 81 back in the 80’ties – Without Basic I am not sure that I ever would have taken on programming. There’s a saying: If you learn one language, then you can learn any. If that applies to programming, then the first might as well be an “easy” one.

To make sure that these young kids are motivivated then it is imported to see progress with limited code..

Menelaus avatar

10 PRINT “Raspberry Pi are cool!”
20 GOTO 10

OricTosh avatar

If you add a (;) at the end of line 10 after the ” it will print all over the screen not just down the side

NickMon68 avatar

LOL excellent !

Tank avatar

20 PRINT “Raspberry Pi are cool!”

The Man avatar

The goto statement is perfectly legitimate and used correctly.
The convoluted way by using a condition and a loop whereby the values of the condition never changes is the exact sample how not to program! A big 3 line FAIL!

TankSlappa avatar

You’ve all been away from BASIC too long.

10 PRINT”Raspberry Pi are cool! “;:RUN

Job done!


BBC BASIC would be great :-)

Egel avatar

There is Brandy in Raspbian. Brandy is an interpreter for BBC Basic (or Basic V) that runs under a variety of operating systems.

Alan Williams avatar

Yes a variant of modern (32bit) BBC Basic with CASE, block IF/THEN, function and procedure parameters by value and reference, etc would get my vote.
Brandy doesn’t have a nice built in editor that may weigh against it. From an educational point of view at least having named functions a procedures has to placate the anti-BASIC squad to some extent. It didn’t take the author of maximite BASIC long to add these to his version for the PIC32 architecture, which does suggest that modern programmers do expect that of a BASIC these days. That said if I am going to write BASIC on a Pi It will be in !Zap on RISC OS.

gamerb avatar

I like this idea, I’ve been wanting to do some BASIC programming for a while now,

CPslashM avatar

GOTOs have their place. Quck-and dirty error handling & introducing the concept of conditional/unconditional branching in assembler (i.e. how low-level processors work) to name two.


MINKIN2 avatar

Options are always are good thing and this gets my vote!

Just the the thought of the decades of code that could be revived and to see this running with the power of the pi would be great!

Ray avatar

yes please include it.

81SpiderWebb avatar

Please include Tiny Basic in the basic Raspian Wheezy Distribution, along with a digital book or ‘Tiny Basic’ primer of some sort. Back in the early 1980’s a small primer of a book was included with my Texas Instruments 99/4a explaining the built in console Basic language. That small book launched me into programming. I was eventually able to understand Extended Basic (PEEK and POKE), the video chips Bit-Map Mode and a small amount of Assembly language for the TMS 9900 family of processors. That small book was just what I needed to start.

mark noonan avatar

Nice, had TI994A ALSO was a good time writing code for Mr.Bojangles, took forever & saved on a cassette tape! LOL, but helped me understand code!

81SpiderWebb avatar

Cassette tape mass storage!
BahDeee BahDeee BahDeee BahDeee Boooo Boooo Boooo BahDeee… etc…

liz avatar

I’ve been asked by Steve Revill not to announce it yet – there are some final tweaks he’s going to make before we can go live. (We spent Saturday at RISC OS London – Steve looks exhausted, poor thing.) You’ll be hearing ALL about it here very soon.

informatik avatar

If that is the case, go ahead and delete my comment. :D

liz avatar

Thank you! And sorry – it feels rude; glad you understand why!

informatik avatar

Woops, their site is down…

ashley basil avatar

why the rspi effect?

ashley basil avatar

Could not get there, but my son did, he called me 4X that more than he has called me in the last year,
Wot a lot i missed. sent from puppy on pi

Allan Sheldon avatar

Goto it Liz.
It’s another way of getting parents involved in introducing their kids to the delights and challenges of programming.
Plus, it’ll be great nostalgia-tech for all us that had fun with the first microcomputers in the 80’s.

Matt Hawkins avatar

Can’t see a reason not to include it. Seems a perfect addition to the Raspbian image and reinforces the Pi’s main objective.

Sean sanderson avatar

No question. Include it. I rember seeing Sinclair Spectrum basic and wondering how I would ever learn to code in something that looked so complicated. Soon i was able to do quick and dirty programming and having fun. Being able to move from the idea to implentation was a terrific boost and motivated me to learn more and more till I was able to code in machine code.
Whatever it takes I say use it. If parents can get involved so much the better. I would love to see if I can resurrect my old Basic skills. Its about getting things to work and having fun. The finesse and technique follow with the enthusiasm of just being able to create and want to do better.

Marc avatar



Ian Kirkpatrick avatar

10 Let A=1
20 Print “+”;A;” from me for a BASIC interpreter as part of the build”
30 Goto 20

Ph1lj2 avatar

Excellent idea – 100% agree you should supply it in the standard package.

Daniel Radcliffe avatar

WOW, Basic was my first language, and still my first choice most the time (ok, so now i tend to use VB.net on windows, but same rules apply lol)

The addition of TinyBasic would really aid the development of my project (School in a box)

+1 to add basic to the disto :D

Clive Jones avatar

I still think the merits of BASIC are understated. It does enough to feed enthusiasm, then frustrates you enough to make you want to spend time learning somthing better. Back in the days, that meant learning 6502 or Z80 machine code.
GOTO is not a bad thing to know about. JMP is still a very good way of patching someone else’s assembler. Put in a JMP followed by NOPs where you want to insert new logic. Once you have jumped out of harms way, do your stuff and JMP back. If the fix works, do the job properly ….

Adrian avatar

It should of course be included in the package, after all, that’s what it’s all about isn’t it – Beginners :)

Lars Tørnes Hansen avatar

I began programming by using BASIC.

I later learned structured programming, then object oriented programming, and I am not spoiled in any way.

Remember that a programming language is just a tool.
Just let the kids have some fun with programming. Later they can advance to more advanced programming languages, for example Pyhton, C, C++ or what ever they found interesting.

It is good idea to have a number of programming languages in your programmer toolbox.

k4gbb avatar

Both of my sons began with BASIC and both now hold degrees in Computer Science. That is not to say that one follows the other, but the simple joy of creating a
program caught their attention and helped them find something that they were good at. They discovered what was “under the hood” and the fun of manipulating the resources. It also kept them out of there Mother’s hair and stimulated their minds better than TV. Tiny Basic, Heath Basic, MS Basic or GW Basic… then on to DOS Batch files. “To infinity and beyond!”

greg avatar

Sorry, but IMHO it makes more sense to teach a modern language, like Python or Lua. It’s just as easy to get into, but much more powerful.

eHewlett avatar

BASIC on the Rasberry Pi?! Sweet! Count one more vote for it’s inclusion!

Alex Buell avatar

Basic is awful, today’s kids would be better off learning Python instead. Please don’t ruin another generation of kids’ minds with Basic!

gregd99 avatar

It does seem to me that the enthusiasm being displayed in this thread is mainly about nostalgia. I have posted a bit earlier suggesting a python learning resource for parents might be a good idea.

poglad avatar

Since most hobbyist Python code looks like BASIC without the line numbers (or C without the braces and semi-colons), it’s hard to see why anyone would be particularly dogmatic about it!!!

DAve Shillito avatar

I suppose there is no reason not to include it, but I really can’t see any reason to include it.

IMHO the only reason I can see that people would want to include basic it is the nostalgia of the 10 print 20 goto 10 era.

wombat avatar

It always amazes me that BASIC is hated so much for its GOTO statement, yet so called good coding languages contain the TRY statement that encourages ill thought error trapping and sloppy function parameter validation.

Schtrak avatar

I also think BASIC would be a great addition to the languages included in the “official” OS distribution image. Not everyone will grow up to become a professional software developer.
If you can extend TinyBASIC with commands to control the GPIO pins – that would make it even more useful.

jez avatar

I agree. It would be great if GPIO pins were available, maybe assembly language as well like BBC basic

Paulo avatar

what about sdlBasic? it’s available from Debian repository, and i think children will love it! (it is very alike Stos and Amos from the good old 90’s)

Penthux avatar

Wow… BASIC! Now, I’m going to feel a little bit old(ish) if I say I started out with BASIC on the ZX81. So let’s skip that remark. Last time I even touched BASIC was way back in the very early 1990’s on a C64.

Including TinyBASIC as part of the standard Raspbian image will always be a great idea whichever way you look at it.

Nacho avatar

I agree that any BASIC interpreter is a must. It is a nice and not-frightening first step. Whether it is TinyBasic, FreeBasic, SdlBasic, Basic256 or any other interpreter should not be the most important concern.

But I think that the chosen BASIC interpreter should have a couple of non-obvious requirements:

– Graphics can make it much more attractive for the younger students (and a few simple interpreters can’t create them).

– Line numbers should be optional, not mandatory, to ease the translation to Python and other more modern languages.

Uglymike avatar

Hi! I also started out with IBM Basica on IBM PC-XT machines and later on with QBasic. I never progressed beyond it I’m afraid…
Just wanted to add that there is another very good candidate for default Raspberryp basic interpreter and that is Basic-256. (www.basic256.org) It used to be called Kid’s Basic so you can see where the focus lies. It comes with a raft of introductory programs and there are 2 sites that offer more complex programs (see links on homepage) There is even an extensive PDF book available at http://www.basicbook.org. The interface, based on QT, looks a bit nicer than TinyBasic and consists of 3 subwindows, editor, text output and graphical output. ( these can be turned on/off in the program itself.)
The latest version ( has implemented Subroutines and Functions, so you can forgo goto’s. I don’t think there’s a readymade up-to-date runtime available for RasPi however.. (I’ve been waiting for mine since more than 3 months now so can’t help there yet…)
It is of course open source and is available on Windows and Linux.
I already mentioned it on the “other languages” forum, but it’s already down on page6… Try in on your PC or Raspi (there is an obsolete version in the repositories). Who knows, you might even like it!

gainestr avatar

I feel that BASIC would be an excellent addition to the RasPi. This is what we all learned on when we were kids and it was good enough for us back then to get started with. I’ll be downloading this as soon as I can get my RasPi out of my Pumpkin project.
, ,
{ ( @)v(@) }
{| ~~~ |}
{ / ^^^ \ }
___`m – m`___

fan avatar

Everyone has to know BASIC. Really! It’s like trying to ride a motorcicle without riding a bike.

omenie avatar

GOTOs may be for clowns, but my C++ is full of them, and proudly so!

Tony avatar

+1 for tiny basic on the standard image. Thanks.

kevin avatar

This is a great idea. BASIC was my start point and a full BASIC would be even better .. Please include it for the beginners

Mequa avatar

For those who may be interested, I already have a working Raspberry Pi build of XAMOS, a work-in-progress cross-platform re-write of AMOS BASIC from the Amiga.

Kiwi Nerd avatar

I am excited to hear about the possible inclusion of BASIC in the Raspberry std distribution.

having personally grew up with my very first programming experience with the Sinclair ZX81, Spectrum and later the BBC Micro all with BASIC built in…..

Brings back all the fun memories of programming at an early age and really want my kids to learn & experience the joy of technology!

Scott Bridges avatar

+1 for tinyBASIC in the image. I think I’ve used BASIC on every platform I’ve ever used. I used Microsoft’s Small BASIC and Liberty BASIC last year to teach an intro class. This year I’m trying VB Express 2010. Perhaps next year it will be tinyBASIC on the Pi.

Robert avatar

I’d give my right arm to see BASIC included in the standard distro. (But then, maybe that doesn’t mean a whole lot, since I’m left handed…)

Please-pretty-please, +! or whatever Abracadabra I could say to help sway the decision in that direction – consider it said.

Oh, also, this will give me something to do with those 52 pdf issues of “Input” that I downloaded from here:


Rob V avatar

gosh id give my left arm to be ambidextrous

Richard avatar

Wrote my first computer program in 1963 and “graduated” to assembler, Fortran and Cobol before tripping over Basic in the late ’70s, Over the years, Basic and its varients have baled me out of many a hole to provide a “quick and dirty” fix or workaround for a problem. Nice to see it on the Pi and I will use it. Now, what chance of a compiler :-)
Seriously, my heartfelt thanks to Andrew and please incluse Basic in the standard distro.
Also my thanks to all at the Pi HQ. IMHO you guys desrve a mention in the New Years Honours!!

Carlo avatar

+1 for BASIC, I’m not a big fan of it but it can be a good language for starters!

Bantammenace avatar

I learned Latin and Greek at school. I don’t ever use them on a daily basis but they do help me understand English. French, Spanish etc. That was what was needed I’m the 70s.
Now I want to learn Welsh, Russian and Chinese they may not be so useful.
The point being that the languages children should learn ough to equip them for the future, not the past or even the present.

liz avatar

I’ve always been firmly of the opinion that learning languages not only helps you understand your own better (as well as other subjects with a grammatical structure – like coding), but also makes it easier for you to learn *other* languages. I’m of the firm belief that learning *anything* equips the learner for the future.

gregd99 avatar

I completely agree…. I have had a go at a few European languages and found that I learned formal English grammar as part of learning German and Dutch. Learning the language also taught me a lot about my own language and culture as well as that of my host countries….

trying to apply the same sort of logic to learning basic is a bit of a stretch!

Paul avatar

Isn’t the WWW one huge set of GOTO’s???

I’m all for BASIC – thanks to all involved.

Mark R avatar

I think that Tinybasic is a bit *TOO* tiny for my liking. It’s even more simplistic than BBC Basic. A BBC micro can actually do better with only 32k of ROM.

What it really needs is:

* Functions, procedures, local variables
* Maths and trig (sqr, sin, cos, tan etc)
* arbitrary variable names
* DIM for arrays

Then at least we’d be able to do the things we could do on the BBCMicro!

I love stuff like fractal trees (we did those on the Beeb!), simple games, etc.

I like the graphics functions though, they’re better than the Beeb had and simpler to program (and more colours too – slightly)

Rob V avatar

yeah like wobbly rainbow sine waves we did on our Atari 800’s

rickyjames avatar

Absolutely include TinyBASIC in the standard distribution. Particularly if there is a structured fomrat option that turns GOTO off. Not to start a flame war, but OOP is a lot more dangerous to kids learning how to code than GOTO….

Paul Versteeg avatar

I personally think it is a great idea to include TinyBASIC to the kit. There are many (older) people that never got beyond BASIC, and this should remove a hurdle.
What I do like to see, and this would even make it more suitable, is to add access to the GPIO with TinyBASIC (remember PEEK & POKE?) If I knew how to do it, I would.

Sandgrounder avatar

Without the ability to OPEN FILES and then read from them, its use is very limited.

Not much point to it without such a fundamental facility.

poglad avatar

Does TinyBasic lack this, then? In that case a different Basic should be chosen. What’s the point of it without file handling???

Clifford Slocombe avatar

A Union Flag was one of the original demonstration/tutorial programs in the ZX Spectrum manual I recall. It was cleverly crafted to avoid problems from the fact that only two of the available eight colours could be displayed within one 8 x 8 pixel character cell.

On the subject of BASIC’s suitability, in its day, the use of line numbers was primarily a necessity due to the primitive editing capabilities available – a “full screen” editor would have been too resource hungry to be viable on most systems, and “line editors” were the norm. “Modernising” this (even as an option) by supporting labels and structured indentation (like GFA BASIC for example http://en.wikipedia.org/wiki/GFA_BASIC ) would make it no less easy (in fact easier) to learn.

Stuart avatar

Its a start. But the RPi will not qualify as a ‘proper’ computer till it runs Fortran IV ;-)

gregjm avatar

boo, still have Fortran code error nightmares

neltek avatar

YES YES YES please include in standard build.
I am looking into python which seems great but the more the merrier.
BASIC was what we grew up on and did us no harm as you say.
Maybe even set it in the distro with GOTO disabled by default?
Love the Pi and what you guys are doing.

BarryK avatar

BaCon has been available on the Pi since early 2012, in Puppy Linux. It will work fine in any other distro.

BaCon is a true compiler, produces small and fast executables. Unlike an interpreter, that requires a runtime engine and the application runs slower.
But of course, the interactivity of an interpreter is great.

BaCon is mature and has very sophisticated GUI capabilities.

Project page:

My BaCon pages:


Marius avatar

I’m all for BASIC. In fact, include one with an IDE like Turbo Basic. And while you’re at it, how about Turbo Pascal and Turbo C Compiler.

Tony Goodhew avatar

Please include TinyBASIC in the mix. I’ve used many versions of BASIC over the years and can still write ’proper code’ in other languages. I first used, and taught in secondary school, BASIC in the early 70s. Processing was on a massive IBM 1130 with 8K of core storage. Input was via Hollerith pre-punched cards with the chads removed with a ball-point pen by hand. You had to know the punch card code to do it. All the error messages came out in Portugese! We thought it was wonderful after using FORTRAN IV.

poglad avatar

Yep – I remember you. Remember those Ohio/UK101 machines? :-)

Adrian McMenamin avatar

Just wanted to say that other BASICs are available – http://cartesianproduct.wordpress.com/2012/07/19/running-basic-on-the-raspberry-pi/

Lorcan O'Brien avatar

Include it! GW BASIC was my first computer language. I learned it when I was about 8 and my Dad taught me the basics. I would love to see it on my Raspberry Pi as I still have a couple of .bas files with my first programs on it! :D

gregjm avatar

wow gone full circle! 45 years ago I started with Basic as a junior programmer trainee.
yes include it please! We wrote a complete inventory management system in Basic Plus back in the day on a system less powerful than RasPi, then deployed it worldwide, 20 years later they transcribed it to C. Guess we did our job B-)

eightbit avatar

Yesss, please include Tiny BASIC in the distro!
And make sure that there are some IN and OUT commands working with the GPIO pins of Raspberry Pi. This should be the minimum requirement for any programming language on the Pi.

juan avatar

TinyBASIC will be cool … but why not Gambas ?

I will try to compile Gambas for Raspbian and if Raspberry hardware is enough for running Gambas, I think it is more suitable, flexible and powerfull than TinyBASIC.

You have OOP like Visual Basic, working with QT or GTK, DB Access, and a extended library for developing cool projects …

poglad avatar

There are a number of BASICs in the repository – why has Tiny BASIC been singled out for stardom, I wonder? Anyway, if this is the one being offered then +1 from me. And as a former programmer/maintainer of “real” data processing software in BASIC+ on a DEC PDP-11/44, I don’t regard BASIC as a toy by any means. I know many from a more mathematical background would say the same. It’s not as though switching to Python or any other language somehow makes “bad” programming style automatically go away.

poglad avatar

Incidentally, I have simh running on my Pi so I’m already able to code in exactly that BASIC+ language hehe… wonderful. You can even send the output out to a real serial terminal!

poglad avatar

Right – please can we have a clear answer – why has TinyBASIC been singled out among the other BASICs already available for the Pi? When it comes to receiving the honour of being included in the standard distro, I feel there should be a good reason!

Mike Harpe avatar

Bundle it! This is the cherry on top! Now it really is a machine aimed at beginners. I’m sure many of us have fond memories of playing with BASIC.

Simon Jackson avatar

Does need an enfore LET mode for the classics.

Co Termors avatar

The instructions break down at the very first instruction to install the first file, because it cannor find the at the ‘mirrordirector.raspbian.org/raspbian/pool/main/s/sdlgfx/libsdl-gfx1.2-4_2.023-2_armhf.deb’

Co Termors avatar

Please disregard my last email – everything worked just fine after I switched to my ethernet connection, rather than my wireless connection.

Co Termors

Rob V avatar

switch case and other jumps and loops are still GOTO’s under another name.
And you can get spaghetti code without GOTO
And Objective-C ( NextStep – think iOS ) still has a place for GOTO, in escaping from nested conditional loops

Chewy avatar

I’m wondering why the question has even been asked other than to stir up a nostalgic conversation about programming when we were young, it’s a geek variation on The Four Yorkshiremen.
Include it, it won’t do children any harm if they want to learn basic, won’t do them any good either (it’s a dreadful language) but it’s a language and that might encourage them to gravitate to more sophisticated programming methods.

killor avatar

Oh! no! again the battle of programming languages ​​…
I think we should create a type language “Esperanto” in programming for the future ..

Masafumi Horimoto avatar

I have a 7-year-old daughter.
I think for her and put it in a box worthy, trying to learning programming is connected to the TV “Raspberry Pi”.
Now I’m a senior engineer of the computer network. I remember that more than 40 years ago, I was in junior high school, had been programming in BASIC language and TANDY of PET.
I think that in many languages, efficient, but in the world than the language BASIC, I taught, to convey the excitement of those days, this BASIC language is that it is the best.
Grateful to the technician who will do the porting.

Sniper avatar

GOTO 6502 assembly language..I was verry good at that when I worked for Acorn in the early 80’s!!

Graeme avatar

please include in the bundle

tinybc avatar

Please don’t forget this Tiny BASIC http://freecode.com/projects/tinybc , ukscone installed it for Raspberry Pi already in January 2012 http://www.raspberrypi.org/phpBB3/viewtopic.php?f=2&t=1955 , very easy to install because it needs no additional libraries.

I tried to make it as standard as possible, with using only ncurses which is POSIX standard. The Tiny BASIC is also as close to standard as possible, yes with GOTO only. All loops can be the most simply be written with some equivalents of continue and break, but the problem is that these are not standard, and the loops there are in some versions of Tiny BASIC are not universal, and thus they would damage the brains of the beginners even more than GOTO. But both continue and break statements and if blocks can be written using GOTO, the trick is to mark the beginnings and ends of the blocks with comments, like REM end if. Thus GOTO is a good universal command, it is wrong to blame a command, all is about how this command is used. And when using it, the beginners would learn how while, for, continue and brake really work in other languages, which is very good i think.

What concerns TinyBASIC One, i appreciate the work done. I don’t know why they worry about the license though, they could as well use code from my Tiny BASIC which is more advanced than the one in programmersheaven, and make it LGPL. What i have to say about the graphics statements they added though, is that this graphics is not standard at all. I wanted it to be standard, and Curses is POSIX standard. Yes everyone wants to do the advanced things like full graphics at once, but every graphics makes the language much more complicated. This is why i thought that a Curses pseudo graphics is the simplest and best for these who start to learn programming. Who is then willing to do more advanced things, could then use pygame instead, because there will be an added complexity anyway, and learning a simple use of python will not add much. The other thing is that, even when the graphics is done based on some standard library, yet it would be not good enough, because pygame is made by people who know what is necessary for writing games.

So i would suggest including Tiny BASIC for Curses as an interpreter for the very beginners, as the very first step before starting to use python.

tinybc avatar

OK i’m frustrated, the man who wrote this Tiny BASIC http://freecode.com/projects/tinybc is frustrated.

Mistofeles avatar

YES, It helps with projects, which do not need speed.

Still I’m waiting for FreeBasic, which is a compiled language.

I have a lot of code written for FreeBasic and I want to port it to RaspBerry.

Andrew Bartlett avatar

YES YES YES this should be shipped with the raspbian image

Frans Cubitt avatar

Definatly Tiny basic should be included please,
as this Object oriented programming doesnt help understand the real world, ie i.o projects.
Its also great for staring as a beginner and an old toppie!!

Comments are closed