Skip to content

Commit fd54d79

Browse files
mmaterarocky
authored andcommitted
fixing get_package_names
1 parent dfbc0ea commit fd54d79

2 files changed

Lines changed: 9 additions & 4 deletions

File tree

mathics/builtin/system.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -230,13 +230,13 @@ class Packages(Predefined):
230230
</dl>
231231
232232
X> $Packages
233-
= {CombinatoricaOld`,ImportExport`,Internal`,System`,XML`}
233+
= {CombinatoricaOld`,ImportExport`,XML`,Internal`,System`,Global`}
234234
#> MemberQ[$Packages, "System`"]
235235
= True
236236
"""
237237

238238
name = "$Packages"
239-
rules = {'$Packages': '{"CombinatoricaOld`","ImportExport`","Internal`","System`","XML`"}',}
239+
rules = {'$Packages': '{"CombinatoricaOld`", "ImportExport`", "XML`","Internal`", "System`", "Global`"}',}
240240
# def evaluate(self, evaluation):
241241
# return Expression(
242242
# "List",

mathics/core/definitions.py

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -389,8 +389,13 @@ def lookup_name(self, name) -> str:
389389
return with_context
390390

391391
def get_package_names(self) -> typing.List[str]:
392-
# TODO: load from $Packages...
393-
pass
392+
packages = self.get_ownvalue("System`$Packages")
393+
packages = packages.replace
394+
assert packages.has_form("System`List", None)
395+
packages = [c.get_string_value() for c in packages.leaves]
396+
return packages
397+
398+
394399

395400
#return sorted({name.split("`")[0] for name in self.get_names()})
396401

0 commit comments

Comments
 (0)