<feed xmlns='http://www.w3.org/2005/Atom'>
<title>parscan/parser, branch parscan-struct</title>
<subtitle>experimental interpreter
</subtitle>
<link rel='alternate' type='text/html' href='https://git.vertes.org/parscan/'/>
<entry>
<title>fix: improve struct</title>
<updated>2025-03-03T09:49:27+00:00</updated>
<author>
<name>Marc Vertes</name>
<email>mvertes@free.fr</email>
</author>
<published>2025-03-03T09:49:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vertes.org/parscan/commit/?id=ab69cd9ba61092650abdff6484b12021182385ce'/>
<id>ab69cd9ba61092650abdff6484b12021182385ce</id>
<content type='text'>
Use 'unsafe' to modify private struct fields, allowing to keep
unmodified field names: before they were prefixed with a capital.

Parse package statement. Provide a also a default package name for
REPL and tests. The support of packages is still incomplete.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Use 'unsafe' to modify private struct fields, allowing to keep
unmodified field names: before they were prefixed with a capital.

Parse package statement. Provide a also a default package name for
REPL and tests. The support of packages is still incomplete.
</pre>
</div>
</content>
</entry>
<entry>
<title>fix (parser): don't panic if assign of define untyped value (#10)</title>
<updated>2024-07-18T10:56:29+00:00</updated>
<author>
<name>Marc Vertes</name>
<email>mvertes@free.fr</email>
</author>
<published>2024-07-18T10:56:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vertes.org/parscan/commit/?id=dabd9e5eb81bbc9aeaeb32fb3e3ce83eef258a77'/>
<id>dabd9e5eb81bbc9aeaeb32fb3e3ce83eef258a77</id>
<content type='text'>
* fix (parser): don't panic if assign of define untyped value

In case of defining or assigning to untyped value, the type has
to be taken from the source value instead of the target value.

The vm test coverage has also been slightly improved.

* fix and simplify Token.Name()

* improve parser errors</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* fix (parser): don't panic if assign of define untyped value

In case of defining or assigning to untyped value, the type has
to be taken from the source value instead of the target value.

The vm test coverage has also been slightly improved.

* fix and simplify Token.Name()

* improve parser errors</pre>
</div>
</content>
</entry>
<entry>
<title>feat: initial and partial support of composite expressions (#9)</title>
<updated>2024-04-23T12:36:57+00:00</updated>
<author>
<name>Marc Vertes</name>
<email>mvertes@free.fr</email>
</author>
<published>2024-04-23T12:36:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vertes.org/parscan/commit/?id=0063922f5c8a07b78603b2da7f6a3c2094711c3d'/>
<id>0063922f5c8a07b78603b2da7f6a3c2094711c3d</id>
<content type='text'>
A new `Composite` token is created. Literal composite expressions
are recognized and partially handled by the parser but not yet
by the code generator.

Other cosmetic changes are present.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
A new `Composite` token is created. Literal composite expressions
are recognized and partially handled by the parser but not yet
by the code generator.

Other cosmetic changes are present.</pre>
</div>
</content>
</entry>
<entry>
<title>chore: add linters and some lint fixes (#8)</title>
<updated>2024-04-02T09:27:13+00:00</updated>
<author>
<name>Marc Vertes</name>
<email>mvertes@free.fr</email>
</author>
<published>2024-04-02T09:27:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vertes.org/parscan/commit/?id=1bff92c52b27b9a516599e172fe9852c3d99be38'/>
<id>1bff92c52b27b9a516599e172fe9852c3d99be38</id>
<content type='text'>
* chore: add linters and some lint fixes

Configure some golangci-lint linters to get the code quality right.
Apply the first fixes.

Next step will be to add github actions to run lint and tests in
github CI.

* chore: more lint, fixed comments and variable names. no semantic change.

* chore: add Makefile

This makefile is intended to be used as a local substitute to github
actions.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* chore: add linters and some lint fixes

Configure some golangci-lint linters to get the code quality right.
Apply the first fixes.

Next step will be to add github actions to run lint and tests in
github CI.

* chore: more lint, fixed comments and variable names. no semantic change.

* chore: add Makefile

This makefile is intended to be used as a local substitute to github
actions.</pre>
</div>
</content>
</entry>
<entry>
<title>feat: add initial support for import, provide minimal fmt (#6)</title>
<updated>2024-03-22T15:59:25+00:00</updated>
<author>
<name>Marc Vertes</name>
<email>mvertes@free.fr</email>
</author>
<published>2024-03-22T15:59:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vertes.org/parscan/commit/?id=362f7c9c45598b429c92e67756f41b690043e0c4'/>
<id>362f7c9c45598b429c92e67756f41b690043e0c4</id>
<content type='text'>
The `import` statement is now parsed. It only provides minimal
support for the `fmt` package (only `Println` symbol is defined).

This should be sufficient to pass a few tests.

Full support of package namespaces, source and binary imports will be
supported later, based on this work.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The `import` statement is now parsed. It only provides minimal
support for the `fmt` package (only `Println` symbol is defined).

This should be sufficient to pass a few tests.

Full support of package namespaces, source and binary imports will be
supported later, based on this work.</pre>
</div>
</content>
</entry>
<entry>
<title>Add extra GoDoc to explain why Dump is on the Compiler.</title>
<updated>2024-03-21T14:46:33+00:00</updated>
<author>
<name>Antonio Navarro Perez</name>
<email>antnavper@gmail.com</email>
</author>
<published>2024-03-21T14:46:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vertes.org/parscan/commit/?id=7a9ac73037f207e3895332e5ba2b30d465c9c339'/>
<id>7a9ac73037f207e3895332e5ba2b30d465c9c339</id>
<content type='text'>
Signed-off-by: Antonio Navarro Perez &lt;antnavper@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Antonio Navarro Perez &lt;antnavper@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>feat: Add simple Dump creation and recovery.</title>
<updated>2024-03-20T10:15:48+00:00</updated>
<author>
<name>Antonio Navarro Perez</name>
<email>antnavper@gmail.com</email>
</author>
<published>2024-03-20T10:15:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vertes.org/parscan/commit/?id=649ae829220d6ddd8758d24c3bc2ea7d43e788d6'/>
<id>649ae829220d6ddd8758d24c3bc2ea7d43e788d6</id>
<content type='text'>
Memory Dump functionality that can restore the previous VM state.

It dumps *global* variables, the only ones defining the program state.

The dump depends on the program itself, and on the index system, which right now is defined by the variable order.

Signed-off-by: Antonio Navarro Perez &lt;antnavper@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Memory Dump functionality that can restore the previous VM state.

It dumps *global* variables, the only ones defining the program state.

The dump depends on the program itself, and on the index system, which right now is defined by the variable order.

Signed-off-by: Antonio Navarro Perez &lt;antnavper@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>feat: improve debug output of tokens</title>
<updated>2024-03-14T22:22:23+00:00</updated>
<author>
<name>Marc Vertes</name>
<email>mvertes@free.fr</email>
</author>
<published>2024-03-14T22:22:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vertes.org/parscan/commit/?id=5da3a651ba08859ccc1cdf1094603411696c8df2'/>
<id>5da3a651ba08859ccc1cdf1094603411696c8df2</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'main' of github.com:mvertes/parscan</title>
<updated>2024-03-14T13:39:08+00:00</updated>
<author>
<name>Marc Vertes</name>
<email>mvertes@free.fr</email>
</author>
<published>2024-03-14T13:39:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vertes.org/parscan/commit/?id=ef1499e057051e5845069d04cc12f20f42d8258f'/>
<id>ef1499e057051e5845069d04cc12f20f42d8258f</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>feat: initial support of closures</title>
<updated>2024-03-14T13:37:32+00:00</updated>
<author>
<name>Marc Vertes</name>
<email>mvertes@free.fr</email>
</author>
<published>2024-03-14T13:37:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vertes.org/parscan/commit/?id=378683d25bdae89fa446b2b82f8dda5d6b34ea33'/>
<id>378683d25bdae89fa446b2b82f8dda5d6b34ea33</id>
<content type='text'>
Also detection and automatic execution of main function.
Make sure that all debug is output to stderr.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Also detection and automatic execution of main function.
Make sure that all debug is output to stderr.
</pre>
</div>
</content>
</entry>
</feed>
