Limitations in vscode development environment

Hi all,

since vscode plugin for scilab is available, I enjoy to use it often, mainly to debug scripts that are handling complex objects derived from list. The vscode interface’s friendlyness helps to trigger the issue way faster than in usual environment.
Whenever the vscode’s is really supporting the writing, modern and confortable, I’m not using it systematically because:

  • at the very beginning development of new code, when ‘checking/debuging’ line after line manually in the console, I can’t extensively analyse the content variables of native scilab types (array of doubles, strings, ints, etc…) as with editvar() from usual environment, only a summary in vscode variable explorer
  • the execution of a script from VScode environment is at least ~20% slower than from original scilab development environment, whatever running in debug or without debug . This also prevent of using it in production mode when dealing with large dataset.

To compare the execution’s speed, I ran the following data processing script (import data and visualize processed data in graphic plots) in usual scilab environment then in vscode without debug

tic;
repchem= "C:\Users\elemexport";
S= listfiles(repchem+"\*.h5");
visufich= basename(S);

mprintf("t1=%f s\n",toc());

FOdw = importDWh5(S([5 4 3]));
mprintf("t2=%f s\n",toc());
visuApplFO(FOdw);
mprintf("t3=%f s\n",toc());
FOdw = importDWh5(S([2 1]),FOdw);
nmcoll=[]; for e=FOdw, nmcoll=[nmcoll;e.apptype]; end , clear e
visuApplFO(FOdw,[4 5]);
min(FOdw(5).I); 
max(FOdw(5).I);

mprintf("t4=%f s\n",toc()); 

which led to a matrix with execution time (in s) in columns (first one is usual env times, second is vscode w/o debug):

m=[0.000413 0.002061	
3.152338 3.399108	
8.175625 10.631719	
11.988046 15.025162	]

diff(m, 1, 'c')./m(:,1)

ans = [4x1 double]
3.9903148
0.0782816
0.3004167
0.2533454

Any tips to bring the execution from vscode down to the one when run from usual dev environment and how to inspect actual detailed content of variable ?

Thank you,

David

Hi David,

I pushed version 1.0.4, which should resolve the performance issue between debug and non-debug modes.

I understand your second request about the display of variables in VS Code.
When debugging, Scilab sends variables to VS Code at every execution stop. This can lead to lag if Scilab doesn’t reduce variables contents sent.
I’ll try to find a way to let you see the whole content of the selected variables.
For now, you can display them in the debug console, copy and paste values in a new VS Code tab.

Thanks for your feedback!

Cédric

1 Like

I have found no easy way to do that, so I have created an issue on the GitLab project: