Ralf Hemmecke wrote:
>
> Hi Waldek,
>
> Peter has updated his pull request
>
> https://github.com/fricas/fricas/pull/5
>
> some time ago. It is working for me and I would like to commit these 5
> patches to the fricas svn repository.
>
> I was a bit concerned about him adding lowercase 'and, '
Ralf Hemmecke wrote:
>
> > Yes, it is debatable, as we can see in
> > https://en.wikipedia.org/wiki/Tree_(data_structure)
>
> Since you refer to wikipedia... why not using this definition:
> https://en.wikipedia.org/wiki/Tree_(data_structure)#Type_theory
> In orther words, we introduce forests.
>
oldk1331 wrote:
>
>
> > Sorry that I did not comment earlier: this kind of change is
> > very dangerous. Namely, it can work quite nice in testing
> > and then lead to error say 3 years later. The point is
> > that there is correspondence between FriCAS types and
> > Lisp representation. Part
oldk1331 wrote:
>
> On 12/11/18 3:55 AM, Waldek Hebisch wrote:
> > oldk1331 wrote:
> >>
> >> This patch changes the Rep of Tree from
> >> Union(node:Record(value: S, args: List %),empty:"empty")
> >> to
> >> Record(val : S, args: List %)
> >> and uses "NIL$Lisp" to represent empty tree.
>
oldk1331 wrote:
>
> On 11/23/18 3:42 AM, Waldek Hebisch wrote:
> > oldk1331 wrote:
> >> "node?(u, v)" should return true only when they point to the
> >> same data structure, aka when they share part of data structure,
> >> so it should use 'eq?' instead of '='.
> >>
> >> Because this is much more
On Sun, Dec 16, 2018 at 3:07 AM Waldek Hebisch wrote:
> Well, in FriCAS tree is an aggregate. And empty aggregate
> is always legal. In fact, empty aggregate is a generic
> way to start building an aggregate. So disallowing it
> does not look right.
For Tree, can I commit the patch with: