User avatar
John_Spikowski
Posts: 1614
Joined: Wed Apr 03, 2019 5:53 pm
Location: Anacortes, WA USA
Contact: Website Twitter

Re: Liberation through Computer Literacy

Mon Nov 11, 2019 7:30 am

I think the idea that there are no practical limitations with ScriptBasic refers to idea that human ingenuity can always find a work around.
Not only can you expand ScriptBasic with C functions, you can create ScriptBasic commands. Actually I prefer running ScriptBasic threaded as a shared object.

User avatar
Gavinmc42
Posts: 4301
Joined: Wed Aug 28, 2013 3:31 am

Re: Liberation through Computer Literacy

Mon Nov 11, 2019 7:38 am

http://jim.tcl.tk/index.html/doc/www/www/index.html
So small even Buildroot has it as an option.
I'm dancing on Rainbows.
Raspberries are not Apples or Oranges

ejolson
Posts: 4305
Joined: Tue Mar 18, 2014 11:47 am

Re: Liberation through Computer Literacy

Mon Nov 11, 2019 7:54 am

Gavinmc42 wrote:
Mon Nov 11, 2019 7:38 am
http://jim.tcl.tk/index.html/doc/www/www/index.html
So small even Buildroot has it as an option.
Jim looks great. Have you thought about using it to tile rooms with tatami mats?

User avatar
John_Spikowski
Posts: 1614
Joined: Wed Apr 03, 2019 5:53 pm
Location: Anacortes, WA USA
Contact: Website Twitter

Re: Liberation through Computer Literacy

Mon Nov 11, 2019 8:19 am

Gavinmc42 wrote:
Mon Nov 11, 2019 7:38 am
http://jim.tcl.tk/index.html/doc/www/www/index.html
So small even Buildroot has it as an option.
When I mentioned the150 KB number I didn't mean featureless. Please, no toys.

The maximum size of a python list on a 32 bit system is 536,870,912 elements. Tatami 200 is possible.

User avatar
Gavinmc42
Posts: 4301
Joined: Wed Aug 28, 2013 3:31 am

Re: Liberation through Computer Literacy

Mon Nov 11, 2019 9:00 am

Another toy?
http://runtimelegend.com/tech/lil/
This one runs on 32 and 64 bit Pi's and even baremetal,
And Windows 7 and 10 and probably many other places :o

150K is a bit arbitrary, was that your only requirement?
I can get Jim and Lil running, I have yet to get Scriptbasic running.
It could be just me but I like toys that work, especially if they are educational.

Computer literacy for me means understanding how a language works and being expendable by me.
I'm dancing on Rainbows.
Raspberries are not Apples or Oranges

jahboater
Posts: 5074
Joined: Wed Feb 04, 2015 6:38 pm
Location: West Dorset

Re: Liberation through Computer Literacy

Mon Nov 11, 2019 9:07 am

Gavinmc42 wrote:
Mon Nov 11, 2019 9:00 am
150K is a bit arbitrary, was that your only requirement?
If the 150K refers to the install image size of the interpreter, then effectively Python is zero because no image is needed - it is already included in Raspbian.
Last edited by jahboater on Mon Nov 11, 2019 9:18 am, edited 1 time in total.

User avatar
John_Spikowski
Posts: 1614
Joined: Wed Apr 03, 2019 5:53 pm
Location: Anacortes, WA USA
Contact: Website Twitter

Re: Liberation through Computer Literacy

Mon Nov 11, 2019 9:16 am

I have yet to get Scriptbasic running.
1. Download the scriba zip I posted as an attachment a few posts back.

2 Unzip the file included to the desired directory.

3. ./scriba your_script arguments

Can you be more specific about the issues you are having?

User avatar
Gavinmc42
Posts: 4301
Joined: Wed Aug 28, 2013 3:31 am

Re: Liberation through Computer Literacy

Mon Nov 11, 2019 9:21 am

Buildroot has Lua, Micropython and Jim as build options.
Micropython has proved a useful toy on my PiCore based gadgets that just run 24/7 for years.
Bash is a very useful toy or Ash if you use the Busybox version.

BBC Basic was fun, especially the GLSL shader stuff but there is no 64 bit version for my Gentoo64 Pi3/4's yet.
And I am now back learning on Python because it just works and came pre-installed in Gentoo64.
Yep and I still hate those whitespace issues.

Those of us barely literate find playing with toys educational.
So much to learn, so many toys.

Will try SB again and get back
I'm dancing on Rainbows.
Raspberries are not Apples or Oranges

User avatar
John_Spikowski
Posts: 1614
Joined: Wed Apr 03, 2019 5:53 pm
Location: Anacortes, WA USA
Contact: Website Twitter

Re: Liberation through Computer Literacy

Mon Nov 11, 2019 9:36 am

Just running scriba is a great way to try ScriptBasic before building it from scratch and creating a conf file to point to includes and extension modules.

Heater
Posts: 14474
Joined: Tue Jul 17, 2012 3:02 pm

Re: Liberation through Computer Literacy

Mon Nov 11, 2019 10:00 am

@John_Spikowski,
My 150 KB request was for a high level language like an interpreter.
You did not say that. In the context of the challenges we have seen here C is the higher level language. ScriptBasic on it's own failed to meet the goals.

:)

This 150K thing is of course a fallacy. One needs a C compiler to build SciptBasic.

ejolson,
I think the claim there are no practical limitations with ScriptBasic refers to the idea that human ingenuity can always find a work around.
No doubt. The work arounds I have seen for the short comings of ScriptBasic here have all involved using a language other than ScriptBasic. I can always "work around" the slow speed of my bicycle by using my Ferrari instead :)
Memory in C++ is a leaky abstraction .

User avatar
Gavinmc42
Posts: 4301
Joined: Wed Aug 28, 2013 3:31 am

Re: Liberation through Computer Literacy

Mon Nov 11, 2019 10:19 am

SB needs C compiler and Perl and a bunch of dependencies?
But I'm using Gentoo so Debian builds are a bit different.
Takes time to work through them, very much a learning exercise.

Code: Select all

scriba executable FAIL
sbhttpd executable FAIL
libscriba library FAIL
MODULE t:        dll OK   lib OK   bas OK  
MODULE trial:    dll FAIL lib OK   bas OK  
MODULE xml:      dll FAIL lib FAIL bas OK  
MODULE curl:     dll FAIL lib FAIL bas OK  
MODULE zlib:     dll FAIL lib FAIL bas OK  
MODULE re:       dll FAIL lib FAIL bas OK  
MODULE bdb:      dll FAIL lib FAIL bas OK  
MODULE mysql:    dll FAIL lib FAIL bas OK  
MODULE hash:     dll OK   lib OK   bas OK  
MODULE mt:       dll FAIL lib FAIL bas OK  
MODULE curses:   dll FAIL lib OK   bas OK  
MODULE dbg:      dll FAIL lib OK   bas OK  
MODULE odbc:     dll FAIL lib OK   bas OK  
MODULE psql:     dll FAIL lib FAIL bas OK  
MODULE cgi:      dll OK   lib OK   bas OK  
MODULE gd:       dll FAIL lib FAIL bas OK  
MODULE ux:       dll OK   lib OK   bas OK  
I'm dancing on Rainbows.
Raspberries are not Apples or Oranges

Heater
Posts: 14474
Joined: Tue Jul 17, 2012 3:02 pm

Re: Liberation through Computer Literacy

Mon Nov 11, 2019 10:43 am

Gavinmc42,

Brave man. And tenacious too.

I should really take another look at Gentoo. I'm curious as to how it has progressed since it was my distro of choice at the turn of the century.
Memory in C++ is a leaky abstraction .

User avatar
Gavinmc42
Posts: 4301
Joined: Wed Aug 28, 2013 3:31 am

Re: Liberation through Computer Literacy

Mon Nov 11, 2019 11:20 am

That farm simulator got me interested.
I started in AG electronics and eventually ended up doing firmware for GPS guided tractors.
John in a YT said that GPS was a request for Farm Simulator.

So what Open Source stuff is available for Farmers and can it run on Pi's.
https://farmos.org/ uses Drupal, what's that and will it run on Pi's?
What about this?
http://opensimulator.org/wiki/Main_Page

OpenStreetMaps works and a bunch of GIS software does too.
Drone flight path overlays and Pi based ground station software?
GPS/mapping, still on my to do list.

While sunflower seed patterns are based on Fibonacci, I prefer to use Pi's for real applications.
The Pi4 changed the whole game for me, desktop power.
That opens up a whole spectrum of new possibilities by porting PC level applications to Pi's.
And when Smart IoT on Pi's is added to the mix, much more to learn.
I'm dancing on Rainbows.
Raspberries are not Apples or Oranges

ejolson
Posts: 4305
Joined: Tue Mar 18, 2014 11:47 am

Re: Liberation through Computer Literacy

Mon Nov 11, 2019 2:34 pm

Heater wrote:
Mon Nov 11, 2019 10:00 am
@John_Spikowski,
My 150 KB request was for a high level language like an interpreter.
You did not say that. In the context of the challenges we have seen here C is the higher level language. ScriptBasic on it's own failed to meet the goals.

:)

This 150K thing is of course a fallacy. One needs a C compiler to build SciptBasic.

ejolson,
I think the claim there are no practical limitations with ScriptBasic refers to the idea that human ingenuity can always find a work around.
No doubt. The work arounds I have seen for the short comings of ScriptBasic here have all involved using a language other than ScriptBasic. I can always "work around" the slow speed of my bicycle by using my Ferrari instead :)
I wish I had a Ferrari. My point with the 6809 processor in the SuperPET was that hardware workarounds such as a Ferrari are financially quite different than a workaround provided by free software. As a result, a Ferrari does not democratise computer literacy or provide liberation to all people, plants and animals in the same sort of way as gcc. I suspect this point would have been clearer if the lead developer of FidoBasic hadn't fallen off the roof just as I was making it.

Those dog treats were expensive! At a list of US$ 2000, who can afford a super pet?

http://www.old-computers.com/museum/computer.asp?c=675
Last edited by ejolson on Mon Nov 11, 2019 3:04 pm, edited 3 times in total.

ejolson
Posts: 4305
Joined: Tue Mar 18, 2014 11:47 am

Re: Liberation through Computer Literacy

Mon Nov 11, 2019 2:51 pm

jcyr wrote:
Mon Nov 11, 2019 2:42 pm
Tatami.c twice as fast on jetson... oposite of optimist.c!!![/code]
Does that mean the Raspberry Pi is more of an optimist? Maybe the 64-bit integers on the nano are too pessimistic. What if you try the limited.c program?

Heater
Posts: 14474
Joined: Tue Jul 17, 2012 3:02 pm

Re: Liberation through Computer Literacy

Mon Nov 11, 2019 3:03 pm

ejolson,
I wish I had a Ferrari.
Err, well, when I said my Ferrari I meant virtual Ferrari of course. Just now my bicycle is virtual as well. If I had the money a Ferrari is the last thing I would buy, I'd rather have a Lamborghini:

Image

As it happens, thanks to Free and Open Source software we live in a glorious time when we can all have the software equivalents of bicycles and Ferraris and all manner of other farm implements. And thanks to the Pi they are incredibly cheap to run and maintain as well.

Aside: the 6809 was my favorite 8 bit processor.
Memory in C++ is a leaky abstraction .

ejolson
Posts: 4305
Joined: Tue Mar 18, 2014 11:47 am

Re: Liberation through Computer Literacy

Mon Nov 11, 2019 3:21 pm

For the sake of moderation it's worth noting that virtual Lamborghinis and Ferraris don't pollute or cause traffic problems on the drive home.
Heater wrote:
Mon Nov 11, 2019 3:03 pm
Aside: the 6809 was my favorite 8 bit processor.
Come to think of it, thanks to VICE my SuperPET is also virtual. Stay tuned to see whether the 8-bit personal computers from the golden age could liberate all people to solve the T(s)=200 tatami challenge--and remember, dogs and cats are people too.
Last edited by ejolson on Mon Nov 11, 2019 3:58 pm, edited 7 times in total.

ejolson
Posts: 4305
Joined: Tue Mar 18, 2014 11:47 am

Re: Liberation through Computer Literacy

Mon Nov 11, 2019 3:30 pm

jcyr wrote:
Mon Nov 11, 2019 3:23 pm
ejolson wrote:
Mon Nov 11, 2019 2:51 pm
jcyr wrote:
Mon Nov 11, 2019 2:42 pm
Tatami.c twice as fast on jetson... oposite of optimist.c!!!
Does that mean the Raspberry Pi is more of an optimist? Maybe the 64-bit integers on the nano are too pessimistic. What if you try the limited.c program?
limited.c??? Must have missed it, nor can I find it.
The limited.c code was in this post.

https://www.raspberrypi.org/forums/view ... 0#p1563880

Make changes to include stdlib.h and comment out the define for void when compiling it with modern C. Settings used to find the least s such that T(s)=2000 appear on the previous page.

https://www.raspberrypi.org/forums/view ... 5#p1564314

User avatar
John_Spikowski
Posts: 1614
Joined: Wed Apr 03, 2019 5:53 pm
Location: Anacortes, WA USA
Contact: Website Twitter

Re: Liberation through Computer Literacy

Mon Nov 11, 2019 4:52 pm

Gavinmc42 wrote:
Mon Nov 11, 2019 10:19 am
SB needs C compiler and Perl and a bunch of dependencies?
But I'm using Gentoo so Debian builds are a bit different.
Takes time to work through them, very much a learning exercise.

Code: Select all

scriba executable FAIL
sbhttpd executable FAIL
libscriba library FAIL
MODULE t:        dll OK   lib OK   bas OK  
MODULE trial:    dll FAIL lib OK   bas OK  
MODULE xml:      dll FAIL lib FAIL bas OK  
MODULE curl:     dll FAIL lib FAIL bas OK  
MODULE zlib:     dll FAIL lib FAIL bas OK  
MODULE re:       dll FAIL lib FAIL bas OK  
MODULE bdb:      dll FAIL lib FAIL bas OK  
MODULE mysql:    dll FAIL lib FAIL bas OK  
MODULE hash:     dll OK   lib OK   bas OK  
MODULE mt:       dll FAIL lib FAIL bas OK  
MODULE curses:   dll FAIL lib OK   bas OK  
MODULE dbg:      dll FAIL lib OK   bas OK  
MODULE odbc:     dll FAIL lib OK   bas OK  
MODULE psql:     dll FAIL lib FAIL bas OK  
MODULE cgi:      dll OK   lib OK   bas OK  
MODULE gd:       dll FAIL lib FAIL bas OK  
MODULE ux:       dll OK   lib OK   bas OK  
1. Download the ScriptBasic repo from the sandbox.

2.
sudo perl jamal.pl -i

3. ./setup

It you need MySQL, ODBC, SQLite, Curl or GMP, you need to install the dev dependencies first.

4. After it's built.
./mkdist.sh your_destination_dir

5. source sb.sh

You are now ready to use ScriptBasic.
This 150K thing is of course a fallacy. One needs a C compiler to build SciptBasic.
The scriba.zip is a precompiled RPi3/4 scriba.

jalih
Posts: 97
Joined: Mon Apr 15, 2019 3:54 pm

Re: Liberation through Computer Literacy

Mon Nov 11, 2019 5:59 pm

There seems to be a subscript range error on jcyr's current tatami C code. I converted that code to following very readable piece of 8th code: :lol:

Code: Select all

10000 constant N-MAX
N-MAX n:sqrt n:int constant N-MAX-SQRT

[] N-MAX 1 a:close mat:new constant v

: l4  \ i k2 k3 k4 -- i k2 k3 k4
  \ i k2 k3 k4 j
  4 pick over n:*
  dup v mat:@ n:1+ swap mat:! 2drop ;

: l3
  \ i
  dup 3 n:+             \ i k2=i+3
  over dup n:+ 4 n:-    \ i k2 k3=i+i-4
  repeat  \ i k2 k3
    over over n:> not 3 pick 3 pick n:* N-MAX n:< and if
      N-MAX 3 pick n:/ n:int     \  i k2 k3 k4
      over over n:< if
        drop dup
      then
      ' l4 3 pick 2 pick loop   \ i k2 k3 k4
      drop                      \ i k2 k3
      swap 2 pick n:+ n:1+
      swap 2 pick n:+ n:1-
    else
      break
    then
  again
  2drop drop
  2 step ;

: l2  \ i k2 k3 k4 -- i k2 k3 k4
  \ i k2 k3 k4 j
  4 pick over n:*
  dup v mat:@ n:1+ swap mat:! 2drop
  2 step ;

: l1
  \ i
  dup 3 n:+             \ i k2=i+3
  over dup n:+ 4 n:-    \ i k2 k3=i+i-4
  repeat  \ i k2 k3
    over over n:> not 3 pick 3 pick n:* N-MAX n:< and if
      N-MAX 3 pick n:/ n:int     \  i k2 k3 k4
      over over n:< if
        drop dup
      then
      ' l2 3 pick 2 pick loop   \ i k2 k3 k4
      drop                      \ i k2 k3
      swap 2 pick n:+ n:1+
      swap 2 pick n:+ n:1-
    else
      break
    then
  again
  2drop drop
  2 step ;


: tatami  \ n -- s
  >r
  ' l1 7 N-MAX-SQRT n:1- loop
  ' l3 8 N-MAX-SQRT n:1- loop
  -1 v mat:data nip ( [email protected] n:= if nip break else drop then ) a:each drop rdrop ;

: app:main
  5 tatami "The smallest room size s for which T(s) = 5 is %d.\n" s:strfmt .
  bye ;
  
This runs and produces correct answers but... I was trying to optimize code by using buffer to store values instead of matrix array. After that I ran the code and it failed miserably and interpreter gave me error about trying to use null instead of number.

I thought, maybe I made some error when I converted C code to this very clear looking piece of 8th code. I then converted C code to PL/I code, enabled subscript range checking and used debugging stuff builtin PL/I language:

Code: Select all

*PROCESS MARGINS(1,180) LIBS(SINGLE,STATIC);
*PROCESS OPTIMIZE(3) DFT(REORDER);
*PROCESS PP(MACRO);

 (subscriptrange):
 tatami: proc options(main);
   dcl N_MAX fixed bin(31) value(10000);
   dcl N_MAX_SQRT fixed bin(31) value(sqrt(N_MAX));

   dcl v(0:N_MAX-1) fixed bin(8) unsigned ctl;

   dcl (i, j, k, k2, k3, k4) fixed bin(31);

   on subscriptrange snap
     begin;
       put data (i, j);
     end;

   allocate v(0:N_MAX-1);

   do i = 7 to N_MAX_SQRT - 1 by 2;
     k2 = i + 3;
     k3 = i + i - 4;
     do while((k2 <= k3) & ((i * k2) < N_MAX));
       k4 = N_MAX / i;
       if k3 < k4 then k4 = k3;
       do j = k2 to k4 by 2;
         v(i*j)+=1;
       end;
       k2 += i + 1;
       k3 += i - 1;
     end;
   end;

   do i = 8 to N_MAX_SQRT - 1 by 2;
     k2 = i + 3;
     k3 = i + i - 4;
     do while((k2 <= k3) & ((i * k2) < N_MAX));
       k4 = N_MAX / i;
       if k3 < k4 then k4 = k3;
       do j = k2 to k4;
         v(i*j)+=1;
       end;
       k2 += i + 1;
       k3 += i - 1;
     end;
   end;

   do i = 0 upthru N_MAX - 1;
     if v(i) = 5 then leave;
   end;

   put skip list(i);

 end tatami;
Result was:

Code: Select all

C:\temp>tat
  SUBSCRIPTRANGE condition was raised
   At offset +???????? in procedure with entry TATAMI
I=            40        J=           250;
IBM0421I  ONCODE=0520  The SUBSCRIPTRANGE condition was raised.
   At offset +???????? in procedure with entry TATAMI

C:\temp>

ejolson
Posts: 4305
Joined: Tue Mar 18, 2014 11:47 am

Re: Liberation through Computer Literacy

Mon Nov 11, 2019 7:02 pm

jcyr wrote:
Mon Nov 11, 2019 4:44 pm
ejolson wrote:
Mon Nov 11, 2019 3:30 pm
The limited.c code was in this post.

https://www.raspberrypi.org/forums/view ... 0#p1563880

Make changes to include stdlib.h and comment out the define for void when compiling it with modern C. Settings used to find the least s such that T(s)=2000 appear on the previous page.

https://www.raspberrypi.org/forums/view ... 5#p1564314
Hmm... 1500000000000 doesn't fit in a long in 32-bit mode.
Agreed. That's why I mentioned switching to 64-bit mode a couple posts earlier.

https://www.raspberrypi.org/forums/view ... 5#p1564115

From a computer literacy point of view, I feel very lucky to have clang, fpc, gcc, gfortran, go, rust, scriba, julia, vbnc and other open-source programming tools available on the Raspberry Pi. Recently, I've been looking at languages available for the Commodore PET. Almost all were closed-source and most are no longer available. While Basic was built-in and offered a quick start for the beginning programmer, the expressivity of that language may not have been sufficiently liberating in terms of code clarity and efficiency to support the continued growth of computer literacy.

Before placing blame for the ensuing digital dark ages on Basic itself, it is worth noting the computer literacy project at Dartmouth College wrote a compiler. Moreover, the four principles which guided the design of Basic as a first programming language appear sound. Maybe the desire of many to strike it rich by selling proprietary software was the real reason behind the end of the golden age. Linus could not have written an operating system before the last hacker at MIT created gcc. If the same Linux operating system were not used for both, the Raspberry Pi would not allow people to run the same software as the most expensive supercomputers in the world.

Although the foundations for the second age of personal computing appear quite solid, it is possible the economic climate resulting from current copyright and patent laws will again undermine the liberation that comes from computer literacy no matter what programming language is learned first. Could a game-theoretic approach to economic policy lead to a better legal framework that allows the second age of personal computing to last? Does tiling the floors of rectangular rooms with tatami carpets help in any way?

User avatar
John_Spikowski
Posts: 1614
Joined: Wed Apr 03, 2019 5:53 pm
Location: Anacortes, WA USA
Contact: Website Twitter

Re: Liberation through Computer Literacy

Mon Nov 11, 2019 7:43 pm

Tatami Laptop (Lenovo - Ubuntu 19.10 64 bit)

Code: Select all

[email protected]:~/sbrt/examples$ time scriba tatami_ext.sb 200
The smallest room size s for which T(s) = 200 is 85765680

real	5m3.337s
user	5m3.250s
sys	0m0.060s
[email protected]:~/sbrt/examples$ time scriba Tatami_Release.sb 100
The smallest room size s for which T(s) = 100 is 6683040

real	0m15.835s
user	0m15.449s
sys	0m0.384s
[email protected]:~/sbrt/examples$ 
It would be nice to do groups of 100 in threads if possible. Or the results of one thread seeds another.
Strictly speaking there are no associative arrays in ScriptBasic. Rather arrays can be used in associative mode. This implementation of associative arrays is simple and is powerful enough to use small arrays with a small amount of keys. The typical use of associative arrays is to get a feature like record in PASCAL or struct in language C. Note that this type of storage is less than optimal in case it is used for a huge number of keys and values.

Searching the keys in the array is linear. It means that accessing a single element needs time proportional to the size of the array. The external module "hash" provides an implementation, which is much more powerful and much faster for large associative arrays.

User avatar
John_Spikowski
Posts: 1614
Joined: Wed Apr 03, 2019 5:53 pm
Location: Anacortes, WA USA
Contact: Website Twitter

Re: Liberation through Computer Literacy

Mon Nov 11, 2019 8:39 pm

Does tiling the floors of rectangular rooms with tatami carpets help in any way?
Puzzling question.

Heater
Posts: 14474
Joined: Tue Jul 17, 2012 3:02 pm

Re: Liberation through Computer Literacy

Mon Nov 11, 2019 9:07 pm

ejolson,
Before placing blame for the ensuing digital dark ages on Basic itself...
We can pin point the start of the Digital Dark Ages to February 3rd, 1976.

That is the date that Bill Gates posted his infamous "Letter to Hobbyists" in which he outlined his plans for making all the software that users of the emerging personal computers might use closed source, proprietary, protected by copyright and for profit.
https://commons.wikimedia.org/wiki/File ... byists.jpg

The idea being that we, software gurus, write the code while you, ignorant peasants, pay us.

A brilliant plan. Morally bankrupt but brilliant.

All of a sudden the BASIC that was created as means to bring computer literacy and liberation to all was subverted into a tool for one man to make money. And that was only the beginning.

Nobody saw this plan so clearly at the time as Richard Stallman. Hence GCC and hence Linux... as you know.
Maybe the desire of many to strike it rich by selling proprietary software was the real reason behind the end of the golden age. Linus could not have written an operating system before the last hacker at MIT created gcc.
Yeah, that.
Although the foundations for the second age of personal computing appear quite solid...
I'm not so optimistic:

1) Very few lust for personal computers anymore. They do all they need with appliances that use services in the "cloud".

2) Today it's not the software that matters. It can all be Free and Open Source. Where we are imprisoned is in that it's the data that matters. The likes of Google, Facebook, Microsoft, etc don't care if we have the same source code as they are using. They have all our data. They know everything about us.

Knowledge is power...

3) Will any of those kids learning software skills with the Pi today save their generation from software enslavement in the future?
Memory in C++ is a leaky abstraction .

Heater
Posts: 14474
Joined: Tue Jul 17, 2012 3:02 pm

Re: Liberation through Computer Literacy

Mon Nov 11, 2019 9:16 pm

John_Spikowski,
Strictly speaking there are no associative arrays in ScriptBasic...
Who are you quoting there?

Now you have to explain something because the message I always got before is that ScriptBasic arrays are not any kind of normal array in linearly addressable memory. But rather associative arrays and hence the appalling performance when used for regular array operations.

What actually is a ScriptBasic array?
Memory in C++ is a leaky abstraction .

Return to “General programming discussion”