Basic by se asi mel spis porovnavat s Pythonem, nez s C. Napr. tento program v Basicu:
10 INPUT A 20 INPUT B 30 IF A>B THEN A=A-B:GOTO 30 40 IF A<B THEN B=B-A:GOTO 40 50 IF A<>B THEN 30 60 PRINT A,B
Vypada v Pythonu takto:
a = int(raw_input()) b = int(raw_input()) while a != b: while a > b: a -= b while b > a: b -= a print a, b
Cili stejny pocet radek.
Na jednu stranu mate samozrejme pravdu, Python je citelnejsi i kratsi nez C, ale ja jsem se moc nechtel poustet do porovnani jazyku mezi jejichz vznikem lezi 27 let pomerne intenzivniho vyvoje IT.
Mimochodem je zajimave se podivat na konstrukce dostupne v nekterych BASICech o nichz se letmo zminuji v clanku, ktere se pouzivaji pro pristup k polim nebo podretezcum:
A$(3 to 5)
A$(3 to) – bez horni meze
A$(to 5) – bez spodni meze
coz se (nejenom) v Pythonu taky docela casto pouziva.
A teď by to ještě chtělo interpretr, nebo kompiler Pythonu pro osmibity. Hlásí se někdo? :-)
Jen provokace, prakticky by to asi nikdo nepoužil, protože ačkoli máme i pro Sinclaira několik kompilerů C (minimálně HiSoft C přímo běžící na ZX Spectru, nebo SDCC jako cross compiler), tak stejnak většina dosud tvořících lidí píše v assembleru. To je jediný a nejlepší způsob, jak mít celý počítač zcela pod kontrolou. A se sadou už existujících „knihoven“ to je i docela pohodlné. Prakticky jediná nevýhoda je, že se chybný program občas zhroutí, přepíše celou paměť, nebo dělá jiné nepředvídatelnosti.
cecko na Speccym mate, takze mozna by sel ohnout „tinypy“:
http://www.tinypy.org
Pokud maji na 32bitove platforme 64kilobajtovou binarku, tak by se to mohlo na osmibitove Z80 trosku zkratit :-)
Ale asi mate pravdu v tom, ze dnesni majitele ZX Specter jsou kovani assembleriste.
Ono je to tím, že to C není moc použitelné.
Konkrétně na ZX má nepohodlný editor, navíc překlad z kazety je na nic, bez disku to nejde a vzhledem k přehršli nekompatibilních diskových systémů na ZX je to prostě zabité (HiSoft C existuje ve verzi pro Betadisk, rozšířený v Rusku – a není bez zajímavosti, že zrovna mailový klient ZED pro Betadisk byl psán právě v tomto C).
Dále neumí typ real, ale jen integer, a základní knihovny jsou dost chudé.
Na druhou stranu, počítače, kde je dostupný buď slušný kompilátor (Deep Blue C na Atari) nebo dokonce crosscompiler, mají programů v C docela hodně (CC65 pro 6502 – vzniká v něm dost programů pro Atari, na C64 dokonce Contiki a programy využívající TCP/IP knihovny Contiki jasou všechny psány v tomto C, a port Contiki na Apple II).