# Is there a simple way to use the symbol “.” as just an atom like “+”, “\*”, “-”, etc

**URL:** <https://swi-prolog.discourse.group/t/is-there-a-simple-way-to-use-the-symbol-as-just-an-atom-like-etc/4765>\
**Category:** Help!\
**Created:** [December 13, 2021, 6:02pm UTC](https://swi-prolog.discourse.group/t/is-there-a-simple-way-to-use-the-symbol-as-just-an-atom-like-etc/4765 "2021-12-13T18:02:51Z")\
**Posts on this page:** 1\
**Showing post:** 11

<div class="post-metadata">

**Author:** ![jan](https://yyz2.discourse-cdn.com/free1/user_avatar/swi-prolog.discourse.group/jan/32/4_2.png) [@jan](https://swi-prolog.discourse.group/u/jan)\
**Post date:** [December 15, 2021, 1:01pm UTC](https://swi-prolog.discourse.group/t/is-there-a-simple-way-to-use-the-symbol-as-just-an-atom-like-etc/4765/11 "2021-12-15T13:01:50Z")

</div>

In is simplest way:

```prolog
:- use_module(library(terms)).

mapdot(In, Out) :-
	In =.. [.,A,B],
	Out = dot(A,B).

term_expansion(In, Out) :-
	mapsubterms(mapdot, In, Out).

hello(a.b) :-
	world(c.d).

```

Now, if we load this file and list hello/1 we get

```prolog
?- listing(hello).
hello(dot(a, b)) :-
    world(dot(c, d)).

```

Not the `In =.. [.,A,B]` where we cannot write .(A,B) as that would evaluate …

---

_[View the full topic](https://swi-prolog.discourse.group/t/is-there-a-simple-way-to-use-the-symbol-as-just-an-atom-like-etc/4765)._
