Just my $0.02 worth. I eat, sleep, and breath pascal! But the with clause is one I just don't see much use in.
I know, there's a little advantage when dealing with large arrays of records. Basically, instead of making a far pointer call to access each element of the record, you access it near pointer as a local variable. The problem I have with it is some folks like to confuse things like:
With Message, File, Configuration, TempMemory DO BEGIN
Area := 1;
Description := 'next';
File := '\files\myfile.zip';
END;
Now, with the above, does area belong to Message or File? Does File specify the file the message is stored in, or the file your adding to the file database? If Area exist in Message and File, which one gets set, or both? Too many IF's, and too many programmers leave too much to guessing!
Personally, with the way Basic4Android handles things, I don't see myself using it. I won't complain if a feature is added... What you need to consider is how it's going to effect the output. If Java has no with statement (which I don't think it does), then it will just end up saving you time of having to type eg. MessageRec. in front of the variable name. In which case, it wouldn't save you any space or speed up anything.