Age | Commit message (Collapse) | Author | Files | Lines |
|
transpiling to Lisp.
|
|
function import.
|
|
With the siwtch to a C++ compiler, the AC_PATH_XTRA has become less
effective as it internally relies on the C compiler invokation. Fixed
CXXFLAGS, CPPFLAGS, and LDFLAGS when detecting <X11/xpm.h> usability.
Various bitmasks in src/hyper and src/graph were bogusly using 'char'
(instead of 'unsigned char') when they specify values larger than 127.
Caught by the C++ compiler, thanks to no-narrowing conversion. Fixed.
Eventually the X11-based HD interface and graphics should be replaced
by a more modern GUI interface.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
(setUnion): New.
(setDifference): New.
* boot/translator.boot (packageBody): New.
(translateToplevel): Use it. Translate namespace definition.
* boot/tokens.boot: Replace bitmask with bitref.
Do not translate setDifference and setUnion.
* boot/parser.boot (bpDef): Now include namespace definition.
(bpComma): Remove namespace rule as subsumed by Where rule.
* boot/Makefile.in: Remove dependencies on initial-env.lisp.
(AXIOM_LOCAL_LISP_sources): Remove as unused,
(boot_sources): Remove as redundant with boot_SOURCES.
* boot/initial-env.lisp: Remove.
|
|
* boot/utility.boot (reverse!): Define.
* boot/parser.boot: Use reverse! instead of NREVERSE.
* boot/ast.boot: Generate reverse! forms instead of NREVERSE.
|
|
* interp/define.boot (orderBySubsumption): Fix thinko.
* interp/boot-pkg.lisp: Use BOOTTRAN package. Don't import names
individually.
* boot/utility.boot: New.
* boot/translator.boot (exportNames): Fix thinko.
* boot/tokens.boot: Add charEq? and scalarEq? builtiin functions.
* boot/ast.boot (bfMember): Generate call to symbolMember? for
membership tests for symbols.
|
|
|
|
|
|
bootstrapping.
|
|
* boot/translator.boot (translateToplevel): Load imported modules.
* boot/ast.boot ($constantIdentifiers): New.
($activeNamespace): Likewise.
(bfSimpleDefinition): Likewise.
(isDynamicVariable): Likewise.
(shoeCompTran1): Tidy. Use it.
* boot/parser.boot (bpSimpleDefinitionTail): Use bfSimpleDefinition.
* boot/Makefile.in (stage1/%.clisp): Specify load directory.
(stage2/%.clisp): Likewise.
* lisp/core.lisp.in (startCompileDuration): Export.
(endCompileDuration): Likewise.
|
|
($(oa_boot_linkset)): New Make rule.
* lisp/Makefile.in (oa_base_lisp_linkset): Tidy.
($(oa_base_lisp_linkset)): New Make rule.
* lisp/core.lisp.in (linkset-from): Read the linkset from the file.
|
|
(SYSTEM-SUBDIRECTORY): Likewise.
(LINKSET-FROM-IF): Likewise.
(COMPLETE-FASL-LIST-FOR-LINK): Use it.
(getPrologue): New.
(link): Take an additional optional parameter for prologue. Tidy.
(makeHandler): Adjust.
* lisp/Makefile.in: Use LNKEXT where appropriate.
(oa_base_lisp_linkset): New.
($(oa_target_lispdir)/core.$(LNKEXT)): New rule.
(base-lisp$(EXEEXT)): Now depends on $(oa_base_lisp_linkset).
(mostlyclean-local): Remove $(oa_target_lispdir) too.
* boot/Makefile.in: Use LNKEXT instead of FASLEXT.
(boot_objects_extra): Remove.
(oa_target_bootdir): New.
(oa_boot_linkset): Likewise.
(stamp): Require $(oa_boot_linkset).
($(oa_target_bootdir)/%.$(LNKEXT)): New rule.
(strap/bootsys$(EXEEXT)): Add prologue code.
(stage1/bootsys$(EXEEXT)): Likewise.
(stage2/bootsys$(EXEEXT)): Likewise.
(mostlyclean-local): Remove $(oa_target_bootdir) too.
|
|
during build. Also use 'cp -p' instead of $(INSTALL).
* algebra/Makefile.pamphlet: Likewise.
* graph/Makefile.in: Likewise.
* boot/Makefile.in: Likewise.
* hyper/Makefile.in: Likewise.
* input/Makefile.pamphlet: Likewise.
* interp/Makefile.pamphlet: Likewise.
* lib/Makefile.in: Likewise.
* lisp/Makefile.in: Likewise.
* share/Makefile.in: Likewise.
|
|
|
|
* boot/tokens.boot (shoeKeyWords): Add new keywords.
* boot/ast.boot (Ast): Include three new nodes.
(bfTry): New.
(bfThrow): Likewise.
* boot/parser.boot ($bodyHasReturn): Remove.
(bpNoteReturnStmt): Likewise.
(bpThrow): New.
(bpTry): Likewise.
(bpPiledCatchItems): Likewise.
(bpCatchItemList): Likewise.
(bpExceptionHead): Likewise.
(bpExceptionTail): Likewise.
(bpException): Likewise.
(bpCatchItem): Likewise.
(bpReturn): Include `throw' expressions.
(bpStatement): Include `try' expressions.
* interp/macros.lisp (|tryLine|): Rename from |try|.
* interp/pspad1.boot: Replace `try' with `tryLine' throughout.
|
|
* boot/translator.boot: New.
* boot/translator.boot: Remove.
* boot/tokens.boot: New.
* boot/tokens.boot.pamphlet: Remove.
* boot/scanner.boot: New.
* boot/scanner.boot.pamphlet: Remove.
* boot/pile.boot: New.
* boot/pile.boot.pamphlet: Remove.
* boot/parser.boot: New.
* boot/parser.boot.pamphlet: New.
* boot/initial-env.lisp: New.
* boot/initial-env.lisp.pamphlet: Remove.
* boot/includer.boot: New.
* boot/includer.boot.pamphlet: Remove.
* boot/ast.boot: New.
* boot/ast.boot.pamphlet: Remove.
|
|
bindings.
* interp/msgdb.boot (brightPrint0): Don't highlight if the
standard output is not attached to a terminal.
* interp/sys-driver.boot (stdStreamIsTerminal): New.
* lib/cfuns-c.c (std_stream_is_terminal): New.
|
|
2007-12-02 Gabriel Dos Reis <gdr@cs.tamu.edu>
* Makefile.pamphlet (boot_objects_extra): New.
(stage0/bootsys$(EXEEXT)): Use it.
(stage1/bootsys$(EXEEXT)): Likewise.
(stage2/bootsys$(EXEEXT)): Likewise.
src/lisp/
2007-12-02 Gabriel Dos Reis <gdr@cs.tamu.edu>
* Makefile.pamphlet (base_lisp_objects): New. Abstract over
Lisp compilation models.
(core.$(FASLEXT)): Tidy.
* core.lisp.in (|getOutputPathname|): Make unary.
(|link|): Make sure object files are used to construct ECL
programs.
(|makeHandler|): Adjust.
(|compileLispFile|): Likewise.
|
|
(stage1/%.$(FASLEXT)): Likewise.
(stage2/%.$(FASLEXT)): Likewise.
(%/tokens.$(FASLEXT)): Tidy.
(%/includer.$(FASLEXT)): Likewise.
(%/scanner.$(FASLEXT)): Likewise.
(%/pile.$(FASLEXT)): Likewise.
(%/ast.$(FASLEXT)): Likewise.
(%/parser.$(FASLEXT)): Likewise.
(mostlyclean-local): Don't remove $(AXIOM_LOCAL_LISP).
* Makefile.in: Regenerate.
|
|
2007-08-17 Gabriel Dos Reis <gdr@cs.tamu.edu>
* Makefile.pamphlet (all-lisp): Don't make $(axiom_build_bindir)
here. Pass target tp $(MAKE).
(all-boot): Likewise.
(all-lib): Don't make $(OUT) here. Pass target to $(MAKE).
* Makefile.in: Regenerate.
src/boot/
2007-08-17 Gabriel Dos Reis <gdr@cs.tamu.edu>
* Makefile.pamphlet (BOOTSYS_FOR_TARGET): Remove.
(stamp): Update prerequisite.
($(axiom_build_bindir)/bootsys$(EXEEXT)): Rename from
$(BOOTSYS_FOR_TARGET).
(%/.started): Rename from mk-statge0-dir. Tidy.
(stage0/%.clisp): Update prerequisite.
(%/initial-env.$(FASLEXT)): Likewise.
(mk-stage1-dir): Remove.
(mk-stage2-dir): Likewise.
(mostlyclean-local): Update.
* Makefile.in: Regenerate.
src/lib/
2007-08-17 Gabriel Dos Reis <gdr@cs.tamu.edu>
* Makefile.pamphlet ($(axiom_target_libdir)/libspad.la): Remove
prerequisite mk-target-libdir.
(mk-target-libdir): Remove.
* Makefile.in: Regenerate.
src/lisp/
2007-08-17 Gabriel Dos Reis <gdr@cs.tamu.edu>
* Makefile.pamphlet ($(OUT)/lisp$(EXEEXT)): Create $(OUT)
directory before installing lisp executable.
* Makefile.in: Regenerate.
|
|
|