Some questions: built-in operators and exponent markers
Astrea Drifter <[email protected]> Mon, 13 Jul 2026 00:31:43 -0600
| Newsgroups | gmane.comp.mathematics.maxima.general |
|---|---|
| Message-ID | <CADZFxc=qF8Mce=tFfBn3OtWU+mp5LKkiPg1NJbJDZcFR+TbaNQ@mail.gmail.com> |
--===============5475186955135164180== Content-Type: multipart/alternative; boundary="0000000000000990540656785fc9" --0000000000000990540656785fc9 Content-Type: text/plain; charset="UTF-8" Hello all! As some of you might have inferred from my previous email, I'm fond of projects that allow me to tinker around with Maxima's command-line interface. Currently I have two things that I've been wanting to do for a while now, and since my motives are no doubt a bit idiosyncratic and convoluted, I'll include a TL;DR at the end of the email. One thing I want to do is be able to reassign the exclamation mark operator ! to something other than factorial. My reason is that I can access that function by using "factorial()" already, and I want to be able to write a custom operator "!"(x):= x*%i; so that I can enter imaginary numbers without so many keystrokes but also without using a letter character in the function name (which can cause headaches for me when I accidentally use the same letter in function names outside my preamble). My inability to enter this definition in the terminal suggests that I would need to edit the source code to make it possible, if such an edit is possible in the first place. I assume I would have to re-compile the source code after editing it, but I have no idea how to do that. I'm also interested in changing the exponent marker on bigfloats from b to p, such that bfloat(1); would give back 1.0p0 for example. The descender in the p would make the exponent marker stand out more, helping me visually distinguish mantissas from exponents in floating-point numbers that have huge exponents. This also seems difficult to do without editing the source code somehow. So the TL;DR is: Can the exclamation mark ! be removed from the list of built-in operators without editing the source code? Can the exponent marker on bigfloats be changed from b to p without editing the source code? If the answer to either of these questions is "no", would editing the source code allow me to do either of these things in the first place? If the answer to that question is "yes", are there any tools or resources that would help me recompile an edited version of Maxima's source code? Thanks in advance for any responses! Astrea --0000000000000990540656785fc9 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr">Hello all!<br><br>As some of you might have inferred from = my previous email, I'm fond of projects that allow me to tinker around = with Maxima's command-line interface. Currently I have two things that = I've been wanting to do for a while now, and since my motives are no do= ubt a bit idiosyncratic and convoluted, I'll include a TL;DR at the end= of the email.<br><br>One thing I want to do is be able to reassign the exc= lamation mark operator <font face=3D"monospace">!</font> to something other= than factorial. My reason is that I can access that function by using &quo= t;factorial()" already, and I want to be able to write a custom operat= or <font face=3D"monospace">"!"(x):=3D x*%i;</font><font face=3D"= arial, sans-serif">=C2=A0so that I can enter imaginary numbers without so m= any keystrokes but also without using a letter character in the function na= me (which can cause headaches for me when I accidentally use the same lette= r in function names outside my preamble). My inability to enter this defini= tion in the terminal suggests that I would need to edit the source code to = make it possible, if such an edit is possible in the first place. I assume = I would have to re-compile the source code after editing it, but I have no = idea how to do that.<br><br>I'm also interested in changing the exponen= t marker on bigfloats from </font><font face=3D"monospace">b</font><font fa= ce=3D"arial, sans-serif">=C2=A0to </font><font face=3D"monospace">p</font><= font face=3D"arial, sans-serif">, such that </font><font face=3D"monospace"= >bfloat(1);</font><font face=3D"arial, sans-serif">=C2=A0would give back </= font><font face=3D"monospace">1.0p0</font><font face=3D"arial, sans-serif">= =C2=A0for example. The descender in the </font><font face=3D"monospace">p</= font><font face=3D"arial, sans-serif">=C2=A0would make the exponent marker = stand out more, helping me visually distinguish mantissas from exponents in= floating-point numbers that have huge exponents. This also seems difficult= to do without editing the source code somehow.<br><br>So the TL;DR is:<br>= Can the exclamation mark </font><font face=3D"monospace">!</font><font face= =3D"arial, sans-serif">=C2=A0be removed from the list of built-in operators= without editing the source code?<br>Can the exponent marker on bigfloats b= e changed from </font><font face=3D"monospace">b</font><font face=3D"arial,= sans-serif">=C2=A0to </font><font face=3D"monospace">p</font><font face=3D= "arial, sans-serif">=C2=A0without editing the source code?<br>If the answer= to either of these questions is "no", would editing the source c= ode allow me to do either of these things in the first place?<br>If the ans= wer to that question is "yes", are there any tools or resources t= hat would help me recompile an edited version of Maxima's source code?<= br><br>Thanks in advance for any responses!<br>Astrea</font></div> --0000000000000990540656785fc9-- --===============5475186955135164180== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline --===============5475186955135164180== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Maxima-discuss mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/maxima-discuss --===============5475186955135164180==--