ics-jku / wal

WAL enables programmable waveform analysis.
https://wal-lang.org
BSD 3-Clause "New" or "Revised" License
116 stars 18 forks source link

Issues after upgrading to 0.7.0 #22

Closed saahm closed 10 months ago

saahm commented 10 months ago

Hey, after upgrading my WAL installation through the pip command from the instructions (it upgraded from 0.6.3 to 0.7.0) WAL doesn't seem to work properly anymore.

WAL 0.7.0
Exit to OS or terminate running evaluations with CTRL-C
>-> (set [x 10])
10
>-> (print x)
variable x is undefined
(print x)
>-> (let [x 10] x)
'Symbol' object is not subscriptable
(let (x 10) x)
>-> 

And WAL script that previously worked with my old installation, don't work now anymore.

I'm using Ubuntu 20.04.

Is there a way to downgrade my installation? Also, anything I can add in terms of information, so we can see what causes this issue in the first place — I would assume something else than WAL being broken is the case here.

Thanks!

saahm commented 10 months ago

Ok, the local installation so far allows me to go back to 0.6.3_beta which is at least a workaround, until we can look into why I get the issue with 0.7.0.

With 0.6.3 things are seemingly fine:

WAL 0.6.3_beta

>-> (set [x 10])
10
>-> x
10
>-> (print x)
10
>-> 
LucasKl commented 10 months ago

Hi,

I made some changes to the way variables are defined and to how the let statement works. Now, variables have to be defined using the define function (e.g., (define name value)) and let requires an additional set of parentheses around the bindings.

>-> (define x 10)
10
>-> (print x)
10
>-> (let ([y 5]) y)
5