├── .clang-format ├── .gitattributes ├── .gitignore ├── .ptop-config ├── LICENSE ├── Makefile ├── README.md ├── compiler ├── .gitignore ├── Makefile ├── ast.inc.pas ├── codegen │ ├── c.inc.pas │ └── defs.inc.pas ├── compiler.pas ├── containers.inc.pas ├── errors.inc.pas ├── expression.forward.inc.pas ├── expression.inc.pas ├── globals.inc.pas ├── lexer.inc.pas ├── modules │ ├── io.inc.pas │ ├── math.inc.pas │ ├── modules.inc.pas │ └── strings.inc.pas ├── operations │ ├── arithmetic.inc.pas │ ├── bitwise.inc.pas │ ├── define.inc.pas │ ├── forward.inc.pas │ ├── logical.inc.pas │ ├── ordinals.inc.pas │ └── relational.inc.pas ├── parser.inc.pas ├── pascualc ├── progdefs.forward.inc.pas ├── progdefs.inc.pas ├── pseudofuns.inc.pas ├── stage0.c └── statement.inc.pas ├── examples ├── cmdline.c ├── cmdline.pas ├── comments.c ├── comments.pas ├── consts.c ├── consts.pas ├── flowcontrol.c ├── flowcontrol.pas ├── helloworld.c ├── helloworld.pas ├── helloworld2.c ├── helloworld2.pas ├── include.c ├── include.inc ├── include.pas ├── pointers.c ├── pointers.pas ├── sets.c ├── sets.pas ├── strings.c ├── strings.pas ├── subroutines.c ├── subroutines.pas ├── textfiles.c ├── textfiles.pas ├── types.c └── types.pas ├── manual ├── chapter1.md ├── chapter2.md └── index.md ├── runtime ├── .gitignore ├── Makefile ├── error.c ├── error.h ├── file.c ├── file.h ├── math.c ├── math.h ├── number.c ├── number.h ├── os.c ├── os.h ├── pascual.c ├── pascual.h ├── sets.c ├── sets.h ├── string.c ├── string.h ├── types.c └── types.h └── tests ├── all-tests.sh ├── arrays.sh ├── expressions.sh ├── files.sh ├── flowcontrol.sh ├── functions.sh ├── io.sh ├── math.sh ├── pointers.sh ├── procedures.sh ├── records.sh ├── sets.sh ├── strings.sh ├── subranges.sh ├── syntax.sh ├── testing.libsh └── typesizes.sh /.clang-format: -------------------------------------------------------------------------------- 1 | {BasedOnStyle: Google} 2 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/.gitattributes -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .vscode/ 2 | dist/ 3 | *.o 4 | *~ -------------------------------------------------------------------------------- /.ptop-config: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/.ptop-config -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/LICENSE -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/README.md -------------------------------------------------------------------------------- /compiler/.gitignore: -------------------------------------------------------------------------------- 1 | bootstrap 2 | pascual 3 | -------------------------------------------------------------------------------- /compiler/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/compiler/Makefile -------------------------------------------------------------------------------- /compiler/ast.inc.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/compiler/ast.inc.pas -------------------------------------------------------------------------------- /compiler/codegen/c.inc.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/compiler/codegen/c.inc.pas -------------------------------------------------------------------------------- /compiler/codegen/defs.inc.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/compiler/codegen/defs.inc.pas -------------------------------------------------------------------------------- /compiler/compiler.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/compiler/compiler.pas -------------------------------------------------------------------------------- /compiler/containers.inc.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/compiler/containers.inc.pas -------------------------------------------------------------------------------- /compiler/errors.inc.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/compiler/errors.inc.pas -------------------------------------------------------------------------------- /compiler/expression.forward.inc.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/compiler/expression.forward.inc.pas -------------------------------------------------------------------------------- /compiler/expression.inc.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/compiler/expression.inc.pas -------------------------------------------------------------------------------- /compiler/globals.inc.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/compiler/globals.inc.pas -------------------------------------------------------------------------------- /compiler/lexer.inc.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/compiler/lexer.inc.pas -------------------------------------------------------------------------------- /compiler/modules/io.inc.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/compiler/modules/io.inc.pas -------------------------------------------------------------------------------- /compiler/modules/math.inc.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/compiler/modules/math.inc.pas -------------------------------------------------------------------------------- /compiler/modules/modules.inc.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/compiler/modules/modules.inc.pas -------------------------------------------------------------------------------- /compiler/modules/strings.inc.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/compiler/modules/strings.inc.pas -------------------------------------------------------------------------------- /compiler/operations/arithmetic.inc.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/compiler/operations/arithmetic.inc.pas -------------------------------------------------------------------------------- /compiler/operations/bitwise.inc.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/compiler/operations/bitwise.inc.pas -------------------------------------------------------------------------------- /compiler/operations/define.inc.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/compiler/operations/define.inc.pas -------------------------------------------------------------------------------- /compiler/operations/forward.inc.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/compiler/operations/forward.inc.pas -------------------------------------------------------------------------------- /compiler/operations/logical.inc.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/compiler/operations/logical.inc.pas -------------------------------------------------------------------------------- /compiler/operations/ordinals.inc.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/compiler/operations/ordinals.inc.pas -------------------------------------------------------------------------------- /compiler/operations/relational.inc.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/compiler/operations/relational.inc.pas -------------------------------------------------------------------------------- /compiler/parser.inc.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/compiler/parser.inc.pas -------------------------------------------------------------------------------- /compiler/pascualc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/compiler/pascualc -------------------------------------------------------------------------------- /compiler/progdefs.forward.inc.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/compiler/progdefs.forward.inc.pas -------------------------------------------------------------------------------- /compiler/progdefs.inc.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/compiler/progdefs.inc.pas -------------------------------------------------------------------------------- /compiler/pseudofuns.inc.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/compiler/pseudofuns.inc.pas -------------------------------------------------------------------------------- /compiler/stage0.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/compiler/stage0.c -------------------------------------------------------------------------------- /compiler/statement.inc.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/compiler/statement.inc.pas -------------------------------------------------------------------------------- /examples/cmdline.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/examples/cmdline.c -------------------------------------------------------------------------------- /examples/cmdline.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/examples/cmdline.pas -------------------------------------------------------------------------------- /examples/comments.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/examples/comments.c -------------------------------------------------------------------------------- /examples/comments.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/examples/comments.pas -------------------------------------------------------------------------------- /examples/consts.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/examples/consts.c -------------------------------------------------------------------------------- /examples/consts.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/examples/consts.pas -------------------------------------------------------------------------------- /examples/flowcontrol.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/examples/flowcontrol.c -------------------------------------------------------------------------------- /examples/flowcontrol.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/examples/flowcontrol.pas -------------------------------------------------------------------------------- /examples/helloworld.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/examples/helloworld.c -------------------------------------------------------------------------------- /examples/helloworld.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/examples/helloworld.pas -------------------------------------------------------------------------------- /examples/helloworld2.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/examples/helloworld2.c -------------------------------------------------------------------------------- /examples/helloworld2.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/examples/helloworld2.pas -------------------------------------------------------------------------------- /examples/include.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/examples/include.c -------------------------------------------------------------------------------- /examples/include.inc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/examples/include.inc -------------------------------------------------------------------------------- /examples/include.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/examples/include.pas -------------------------------------------------------------------------------- /examples/pointers.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/examples/pointers.c -------------------------------------------------------------------------------- /examples/pointers.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/examples/pointers.pas -------------------------------------------------------------------------------- /examples/sets.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/examples/sets.c -------------------------------------------------------------------------------- /examples/sets.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/examples/sets.pas -------------------------------------------------------------------------------- /examples/strings.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/examples/strings.c -------------------------------------------------------------------------------- /examples/strings.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/examples/strings.pas -------------------------------------------------------------------------------- /examples/subroutines.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/examples/subroutines.c -------------------------------------------------------------------------------- /examples/subroutines.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/examples/subroutines.pas -------------------------------------------------------------------------------- /examples/textfiles.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/examples/textfiles.c -------------------------------------------------------------------------------- /examples/textfiles.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/examples/textfiles.pas -------------------------------------------------------------------------------- /examples/types.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/examples/types.c -------------------------------------------------------------------------------- /examples/types.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/examples/types.pas -------------------------------------------------------------------------------- /manual/chapter1.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/manual/chapter1.md -------------------------------------------------------------------------------- /manual/chapter2.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/manual/chapter2.md -------------------------------------------------------------------------------- /manual/index.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/manual/index.md -------------------------------------------------------------------------------- /runtime/.gitignore: -------------------------------------------------------------------------------- 1 | libpascual.a 2 | -------------------------------------------------------------------------------- /runtime/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/runtime/Makefile -------------------------------------------------------------------------------- /runtime/error.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/runtime/error.c -------------------------------------------------------------------------------- /runtime/error.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/runtime/error.h -------------------------------------------------------------------------------- /runtime/file.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/runtime/file.c -------------------------------------------------------------------------------- /runtime/file.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/runtime/file.h -------------------------------------------------------------------------------- /runtime/math.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/runtime/math.c -------------------------------------------------------------------------------- /runtime/math.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/runtime/math.h -------------------------------------------------------------------------------- /runtime/number.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/runtime/number.c -------------------------------------------------------------------------------- /runtime/number.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/runtime/number.h -------------------------------------------------------------------------------- /runtime/os.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/runtime/os.c -------------------------------------------------------------------------------- /runtime/os.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/runtime/os.h -------------------------------------------------------------------------------- /runtime/pascual.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/runtime/pascual.c -------------------------------------------------------------------------------- /runtime/pascual.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/runtime/pascual.h -------------------------------------------------------------------------------- /runtime/sets.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/runtime/sets.c -------------------------------------------------------------------------------- /runtime/sets.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/runtime/sets.h -------------------------------------------------------------------------------- /runtime/string.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/runtime/string.c -------------------------------------------------------------------------------- /runtime/string.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/runtime/string.h -------------------------------------------------------------------------------- /runtime/types.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/runtime/types.c -------------------------------------------------------------------------------- /runtime/types.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/runtime/types.h -------------------------------------------------------------------------------- /tests/all-tests.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/tests/all-tests.sh -------------------------------------------------------------------------------- /tests/arrays.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/tests/arrays.sh -------------------------------------------------------------------------------- /tests/expressions.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/tests/expressions.sh -------------------------------------------------------------------------------- /tests/files.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/tests/files.sh -------------------------------------------------------------------------------- /tests/flowcontrol.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/tests/flowcontrol.sh -------------------------------------------------------------------------------- /tests/functions.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/tests/functions.sh -------------------------------------------------------------------------------- /tests/io.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/tests/io.sh -------------------------------------------------------------------------------- /tests/math.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/tests/math.sh -------------------------------------------------------------------------------- /tests/pointers.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/tests/pointers.sh -------------------------------------------------------------------------------- /tests/procedures.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/tests/procedures.sh -------------------------------------------------------------------------------- /tests/records.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/tests/records.sh -------------------------------------------------------------------------------- /tests/sets.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/tests/sets.sh -------------------------------------------------------------------------------- /tests/strings.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/tests/strings.sh -------------------------------------------------------------------------------- /tests/subranges.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/tests/subranges.sh -------------------------------------------------------------------------------- /tests/syntax.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/tests/syntax.sh -------------------------------------------------------------------------------- /tests/testing.libsh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/tests/testing.libsh -------------------------------------------------------------------------------- /tests/typesizes.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jtarrio/pascual/HEAD/tests/typesizes.sh --------------------------------------------------------------------------------