- 
          
- 
                Notifications
    You must be signed in to change notification settings 
- Fork 684
Description
Once #26902 is complete, and Sage itself has no internal dependency on the pexpect interface to GAP, it should probably be deprecated entirely.
Completing work on #26902 will likely expose additional, previously unknown deficiencies in the libgap interface, but once those are all resolved there will be little (if any?) advantage to using the pexpect interface.
Here's a proposed strategy for deprecating the gap pexpect interface (henceforth referred to as "gapx" to avoid confusion) and eventually making the libgap interface the default gap interface:
- 
Rename the global variable gaptogapx. I chose the namegapxbecause it is reminiscent of "gap ex" and also "gap peXpect", but not "xgap" because that is too easily confused with the xgap interface.
- 
The gapglobal will, for now, still be the pexpect interface, but will produce a deprecation warning stating that in the next versiongapwill become thelibgapinterface, and also link to a code porting guide.
- 
After this deprecation period, change the gapglobal to be the libgap interface (keepinggapxfor the pexpect interface). Leavelibgapas an alias forgapbut don't deprecate it.
?. Do we do anything with the _gap_ and _libgap_ magic methods?  I think they should be renamed similarly _gap_ -> _gapx_ but this could be harder to manage.
Depends on #26902
Component: interfaces
Keywords: gap libgap
Issue created by migration from https://trac.sagemath.org/ticket/26963