├── citron_conv.h ├── stdout ├── compilerutils.c ├── ctr_constants.c ├── evalserver.ctr ├── hscomp └── compiler.hs ├── tests ├── test0130.ctr ├── test0097.exp ├── test0130.exp ├── test0146.exp ├── test0150.exp ├── test0202.exp ├── test0242.exp ├── test0243.exp ├── test0259.exp ├── test0278.exp ├── test0279.ctr ├── test0279.exp ├── test0282.exp ├── test0005.exp ├── test0007.exp ├── test0010.exp ├── test0011.exp ├── test0016.exp ├── test0018.exp ├── test0024.exp ├── test0025.exp ├── test0038.exp ├── test0040.exp ├── test0050.exp ├── test0051.exp ├── test0053.exp ├── test0087.exp ├── test0093.exp ├── test0094.exp ├── test0098.ctr ├── test0099.ctr ├── test0106.exp ├── test0199.exp ├── test0200.exp ├── test0245.exp ├── test0283.exp ├── test0012.exp ├── test0015.exp ├── test0017.exp ├── test0019.exp ├── test0023.exp ├── test0031.exp ├── test0033.exp ├── test0034.exp ├── test0059.exp ├── test0066.exp ├── test0079.exp ├── test0105.exp ├── test0112.exp ├── test0120.exp ├── test0124.exp ├── test0132.exp ├── test0134.exp ├── test0135.exp ├── test0201.exp ├── test0219.exp ├── test0222.exp ├── test0244.exp ├── test0251.exp ├── test0269.exp ├── test0276.exp ├── test0001.exp ├── test0002.exp ├── test0003.exp ├── test0006.exp ├── test0030.exp ├── test0032.exp ├── test0061.exp ├── test0082.exp ├── test0109.exp ├── test0136.exp ├── test0191.exp ├── test0194.ctr ├── test0228.exp ├── test0233.exp ├── test0234.exp ├── test0235.exp ├── test0266.exp ├── test0268.ctr ├── test0004.exp ├── test0014.exp ├── test0022.exp ├── test0029.exp ├── test0045.exp ├── test0057.exp ├── test0064.exp ├── test0067.exp ├── test0085.exp ├── test0101.exp ├── test0159.exp ├── test0160.exp ├── test0161.exp ├── test0170.exp ├── test0185.exp ├── test0197.exp ├── test0230.exp ├── test0237.exp ├── test0249.exp ├── test0250.exp ├── test0028.exp ├── test0054.exp ├── test0055.exp ├── test0076.exp ├── test0083.exp ├── test0088.exp ├── test0110.exp ├── test0121.exp ├── test0129.exp ├── test0138.exp ├── test0196.exp ├── test0263.exp ├── test0281.exp ├── test0005.ctr ├── test0008.exp ├── test0009.exp ├── test0026.exp ├── test0044.exp ├── test0046.exp ├── test0047.exp ├── test0048.exp ├── test0049.exp ├── test0102.exp ├── test0150.ctr ├── test0184.exp ├── test0198.exp ├── test0016.ctr ├── test0019.ctr ├── test0027.exp ├── test0072.exp ├── test0111.exp ├── test0122.exp ├── test0128.exp ├── test0224.exp ├── test0226.exp ├── test0231.exp ├── test0236.exp ├── test0260.exp ├── test0267.exp ├── test0270.ctr ├── test0272.exp ├── test0035.exp ├── test0050.ctr ├── test0071.exp ├── test0074.exp ├── test0092.exp ├── test0219.ctr ├── test0227.exp ├── test0261.exp ├── test0002.ctr ├── test0021.exp ├── test0037.exp ├── test0043.exp ├── test0058.exp ├── test0063.exp ├── test0084.exp ├── test0096.exp ├── test0115.exp ├── test0116.exp ├── test0172.exp ├── test0240.exp ├── test0264.ctr ├── test0268.exp ├── test0003.ctr ├── test0149.ctr ├── test0152.ctr ├── test0274.exp ├── test0280.exp ├── test0001.ctr ├── test0035.ctr ├── test0040.ctr ├── test0056.exp ├── test0097.ctr ├── test0114.exp ├── test0207.exp ├── test0215.exp ├── test0218.exp ├── test0265.ctr ├── test0277.exp ├── test0055.ctr ├── test0212.exp ├── test0216.exp ├── test0025.ctr ├── test0052.exp ├── test0118.exp ├── test0146.ctr ├── test0154.ctr ├── test0179.exp ├── test0190.exp ├── foreign │ └── a.out ├── test0004.ctr ├── test0081.exp ├── test0098.exp ├── test0099.exp ├── test0100.exp ├── test0177.exp ├── test0202.ctr ├── test0204.exp ├── test0208.exp ├── test0209.exp ├── test0210.exp ├── test0211.exp ├── test0217.exp ├── test0254.exp ├── test0276.ctr ├── test0042.exp ├── test0148.ctr ├── test0213.exp ├── test0220.exp ├── notest0262.exp ├── test0015.ctr ├── test0020.exp ├── test0086.exp ├── test0109.ctr ├── test0147.ctr ├── test0218.ctr ├── test0242.ctr ├── test0264.exp ├── test0265.exp ├── test0271.exp ├── test0137.exp ├── test0145.ctr ├── test0212.ctr ├── test0273.ctr ├── test0073.exp ├── test0117.exp ├── test0131.exp ├── test0207.ctr ├── test0246.exp ├── test0275.exp ├── test0038.ctr ├── test0101.ctr ├── test0106.ctr ├── test0123.exp ├── test0155.ctr ├── test0171.exp ├── test0195.ctr ├── test0261.ctr ├── test0267.ctr ├── test0278.ctr ├── test0006.ctr ├── test0108.exp ├── test0151.ctr ├── test0205.exp ├── test0214.exp ├── test0215.ctr ├── test0241.exp ├── plg.py ├── test0187.exp ├── test0233.ctr ├── test0245.ctr ├── test0256.exp ├── test0069.exp ├── test0155.exp ├── test0223.exp ├── test0224.ctr ├── test0234.ctr ├── test0235.ctr ├── test0110.ctr ├── test0147.exp ├── test0148.exp ├── test0151.exp ├── test0210.ctr ├── test0213.ctr ├── test0024.ctr ├── test0216.ctr ├── test0258.exp ├── test0139.ctr ├── test0149.exp ├── test0153.exp ├── test0154.exp ├── test0193.ctr ├── test0208.ctr ├── test0209.ctr ├── test0221.exp ├── test0228.ctr ├── test0230.ctr ├── test0250.ctr ├── ptest │ ├── main.ctr │ └── test.ctr ├── test0023.ctr ├── test0079.ctr ├── test0121.ctr ├── test0211.ctr ├── test0217.ctr ├── test0280.ctr ├── test0125.exp ├── test0206.ctr ├── test0272.ctr ├── test0283.ctr ├── test0266.ctr ├── test0071.ctr ├── test0105.ctr ├── test0181.exp ├── test0247.exp ├── test0060.exp ├── test0064.ctr ├── test0214.ctr ├── test0227.ctr ├── test0243.ctr ├── test0082.ctr ├── test0141.ctr ├── test0182.exp ├── plg.ctr ├── test0191.ctr ├── test0236.ctr ├── test0087.ctr ├── test0166.exp ├── test0271.ctr ├── test0122.ctr ├── test0030.ctr ├── test0112.ctr ├── test0222.ctr ├── test0257.ctr ├── test0051.ctr ├── test0080.exp ├── test0007.ctr ├── test0028.ctr ├── test0046.ctr ├── test0074.ctr ├── test0114.ctr ├── test0124.ctr ├── test0229.ctr ├── assets │ └── asset_mod_for_ast.ctr ├── test0133.exp ├── test0156.ctr ├── test0252.exp ├── test0238.exp ├── test0244.ctr ├── test0070.exp ├── test0076.ctr ├── test0077.exp ├── test0142.ctr ├── test0194.exp ├── test0188.exp ├── test0260.ctr ├── test0065.exp ├── test0143.ctr ├── test0017.ctr ├── test0045.ctr ├── test0126.exp ├── test0175.exp ├── test0254.ctr ├── test0029.ctr ├── test0048.ctr ├── test0094.ctr ├── test0259.ctr ├── test0275.ctr ├── test0057.ctr ├── test0047.ctr ├── test0129.ctr ├── test0152.exp ├── test0232.ctr ├── test0093.ctr ├── test0116.ctr ├── test0128.ctr ├── test0041.ctr ├── test0183.exp ├── test0263.ctr ├── test0059.ctr ├── test0158.exp ├── test0225.exp ├── test0011.ctr ├── test0075.exp ├── test0078.ctr ├── test0192.exp ├── test0247.ctr ├── test0273.exp ├── test0034.ctr ├── test0083.ctr ├── test0140.ctr ├── test0018.ctr ├── test0117.ctr ├── test0157.exp ├── test0062.exp ├── test0270.exp ├── test0111.ctr ├── test0158.ctr ├── test0032.ctr ├── test0075.ctr ├── test0123.ctr ├── test0246.ctr ├── test0225.ctr ├── test0013.exp ├── test0052.ctr ├── test0204.ctr ├── test0206.exp ├── test0027.ctr ├── test0031.ctr ├── test0078.exp ├── test0220.ctr ├── test0274.ctr ├── test0012.ctr ├── test0176.exp ├── test0102.ctr ├── test0197.ctr ├── test0200.ctr ├── test0251.ctr ├── test0284.exp ├── test0085.ctr ├── test0021.ctr ├── test0013.ctr ├── test0033.ctr ├── test0163.exp ├── test0198.ctr ├── test0239.exp ├── test0142.exp ├── test0145.exp ├── test0164.exp ├── test0069.ctr ├── test0103.exp ├── test0143.exp ├── test0203.ctr ├── test0249.ctr ├── test0162.exp ├── test0165.exp ├── test0167.exp ├── test0168.exp ├── test0169.exp ├── test0231.ctr ├── test0120.ctr ├── test0140.exp ├── test0022.ctr ├── test0153.ctr ├── test0196.ctr ├── test0201.ctr ├── test0241.ctr ├── test0054.ctr ├── test0092.ctr ├── test0100.ctr ├── test0193.exp ├── test0253.exp ├── test0058.ctr ├── test0104.ctr ├── test0277.ctr ├── test0049.ctr ├── test0256.ctr ├── test0088.ctr ├── test0127.exp ├── test0257.exp ├── test0020.ctr ├── test0036.ctr ├── test0008.ctr ├── test0026.ctr ├── test0174.exp ├── test0186.exp ├── test0192.ctr ├── test0041.exp ├── test0044.ctr ├── test0108.ctr ├── test0232.exp ├── test0248.exp ├── test0010.ctr ├── test0086.ctr ├── test0103.ctr ├── test0063.ctr ├── test0141.exp ├── test0229.exp ├── test0195.exp ├── test0056.ctr ├── test0009.ctr ├── test0070.ctr ├── test0014.ctr ├── test0282.ctr ├── test0080.ctr ├── test0043.ctr ├── test0104.exp ├── test0173.exp ├── test0189.exp └── test0199.ctr ├── plugins ├── python │ └── python.c ├── sdl │ ├── todo.h.in │ └── makefile ├── sharedobject │ └── sharedobject.c ├── ffi │ ├── test │ │ ├── sample.c │ │ ├── a.out │ │ ├── test.c │ │ └── test.ctr │ └── a.out ├── json │ ├── libjansson.a │ └── Makefile ├── request │ └── ccgi-1.2 │ │ ├── libccgi.a │ │ ├── examples │ │ ├── Makefile │ │ └── README │ │ ├── t │ │ └── Makefile │ │ └── README ├── termbox │ ├── libtermbox.so.1.0.0 │ └── test.ctr ├── curl │ └── Makefile ├── gmp │ └── Makefile ├── ctypes_DEPRECATED' │ └── Makefile ├── sfml │ ├── Makefile │ └── sfml.lo ├── fiber │ └── Makefile ├── keyboardmods │ └── makefile └── tcl │ └── makefile ├── Library ├── Data │ ├── String │ │ └── main.ctr │ ├── Array │ │ └── main.ctr │ ├── main.ctr │ ├── Set │ │ └── main.ctr │ └── Range.ctr ├── Graphics │ └── SDL │ │ ├── gfx.ctr │ │ └── main.ctr ├── Control │ ├── Coproc │ │ └── main.ctr │ ├── Class │ │ ├── Functor.ctr │ │ ├── List.ctr │ │ └── Classes.ctr │ ├── Method │ │ └── main.ctr │ └── Error │ │ └── NotImplementedError.ctr ├── Foreign │ ├── C │ │ ├── CParser │ │ │ └── main.ctr │ │ ├── errno.ctr │ │ └── Storable │ │ │ └── main.ctr │ └── Plugin │ │ └── main.ctr ├── Functional │ ├── Monad │ │ ├── main.ctr │ │ ├── Array.ctr │ │ └── Block.ctr │ ├── Category │ │ ├── Array.ctr │ │ └── Block.ctr │ └── TypeClass │ │ └── Category.ctr ├── Utils │ ├── AST.ctr │ ├── main.ctr │ ├── Fire │ │ └── fire.ctr │ ├── OneGateFlipper.ctr │ └── Timer │ │ └── main.ctr ├── Extensions.ctr └── AST │ └── main.ctr ├── autohell ├── doc │ ├── Makefile.am │ ├── ctr.1 │ ├── docs.ps │ ├── ctr.html │ ├── docs.html │ ├── pcre.txt │ ├── sman.ctr │ ├── ctr.html_e │ ├── ctrstyle.css │ ├── doxygen.conf │ └── grammar.txt ├── man │ └── Makefile.am ├── src │ ├── pcrs │ ├── base.c │ ├── fiber.c │ ├── file.c │ ├── lexer.c │ ├── plugins │ ├── utf8.c │ ├── util.c │ ├── world.c │ ├── citron.c │ ├── citron.h │ ├── config.h │ ├── marshal.c │ ├── memory.c │ ├── murmur3.c │ ├── murmur3.h │ ├── parser.c │ ├── reflect.c │ ├── siphash.c │ ├── siphash.h │ ├── symbol.c │ ├── symbol.h │ ├── system.c │ ├── walker.c │ ├── compiler.c │ ├── coroutine.c │ ├── coroutine.h │ ├── dictionary.h │ ├── generator.c │ ├── generator.h │ ├── importlib.c │ ├── lexer_plug.c │ ├── linkedlist.c │ ├── memory-ngc.h │ ├── pcre_split.h │ ├── citron_conv.h │ ├── collections.c │ ├── compilerstub.c │ ├── memory-boehm.h │ ├── base_extensions.c │ ├── citron_ensure.h │ ├── compilerutils.c │ ├── ctr_constants.c │ ├── grapheme_break.c │ ├── ctr_preprocessor.c │ └── compcompat_pthread.h ├── scripts │ ├── citron │ ├── mods │ ├── Library │ ├── basemods │ ├── sdl.ctr │ ├── heap.ctr │ ├── json.ctr │ ├── print.ctr │ ├── teash.ctr │ ├── iterable.ctr │ ├── requests.ctr │ ├── string.ctr │ ├── stringio.ctr │ ├── fileutils.ctr │ ├── functional.ctr │ ├── importlib.ctr │ ├── reflection.ctr │ ├── switchcase.ctr │ ├── ccompletion.ctr │ ├── collections.ctr │ ├── documentation.ctr │ ├── multiprocessing.ctr │ ├── one_liners.md │ └── Makefile.am ├── compile ├── depcomp ├── missing ├── config.guess ├── config.sub ├── install-sh ├── ltmain.sh ├── examples │ ├── fun │ │ ├── #magic.lsp# │ │ ├── magic.lsp │ │ └── lisp.scm │ ├── lol.test │ ├── tuple.ctr │ ├── Makefile.am │ ├── reverse.ctr │ ├── sdl │ │ ├── lol.bmp │ │ ├── boop.jpg │ │ ├── razavi.jpg │ │ ├── wowsers_italic.ttf │ │ └── bigD.ctr │ ├── shit │ │ ├── .ropeproject │ │ │ ├── history │ │ │ ├── objectdb │ │ │ └── globalnames │ │ ├── test.txt │ │ ├── test.py │ │ └── trash.ctr │ ├── serialization │ │ ├── .ropeproject │ │ │ ├── history │ │ │ ├── objectdb │ │ │ └── globalnames │ │ ├── serializing.rb │ │ ├── serializing.py │ │ ├── serializing.ctr │ │ └── serializing.pl │ ├── pragma.ctr │ ├── shit.ctr │ ├── all.ctr │ ├── hello.ctr │ ├── arrays.ctr │ ├── case.ctr │ ├── apply │ ├── reflect.ctr │ ├── fizzbuzz.ctr │ ├── json.ctr │ ├── boolean.ctr │ ├── mp.ctr │ └── shared.ctr └── Makefile.am ├── extensions ├── teash.ctr ├── json.ctr ├── reflection.ctr └── string.ctr ├── headergen ├── constexpr-cc.cpp ├── constexpr-cc.ctr └── constexpr-cc.hpp ├── integration ├── jupyter_kernel │ ├── README.rst │ └── citronkernel │ │ ├── .ipynb_checkpoints │ │ └── Untitled-checkpoint.ipynb │ │ └── __main__.py ├── pygments │ └── CitronLexer │ │ ├── .gitignore │ │ └── setup.py └── gml │ ├── gmbe.exe │ ├── gmbe.gb1 │ ├── gmbe.gmk │ ├── integ.ctr │ └── game_errors.log ├── mods ├── request │ └── .gitkeep └── percolator │ └── README.md ├── examples ├── fun │ ├── #magic.lsp# │ ├── magic.lsp │ └── lisp.scm ├── lol.test ├── tuple.ctr ├── Makefile.am ├── sdl │ ├── boop.jpg │ ├── lol.bmp │ ├── razavi.jpg │ ├── wowsers_italic.ttf │ └── bigD.ctr ├── reverse.ctr ├── shit │ ├── .ropeproject │ │ ├── history │ │ ├── objectdb │ │ └── globalnames │ ├── test.txt │ ├── test.py │ └── trash.ctr ├── serialization │ ├── .ropeproject │ │ ├── history │ │ ├── objectdb │ │ └── globalnames │ ├── serializing.rb │ ├── serializing.py │ ├── serializing.ctr │ └── serializing.pl ├── pragma.ctr ├── shit.ctr ├── all.ctr ├── hello.ctr ├── arrays.ctr ├── case.ctr ├── apply ├── reflect.ctr ├── fizzbuzz.ctr ├── json.ctr ├── boolean.ctr ├── mp.ctr └── shared.ctr ├── python ├── test.ctr └── citron │ └── parser │ ├── __pycache__ │ ├── ast.cpython-36.pyc │ └── token.cpython-36.pyc │ └── token.py ├── image └── citron.png ├── Makefile.am ├── exec.sh ├── siphash.h ├── docs └── ctrstyle.css ├── memory.c ├── preproctest.ctr ├── misc └── isgood.bash ├── .gitignore ├── config.h ├── pcrs └── INSTALL ├── mk.sh ├── plg.ctr ├── makefile.bsd ├── playground └── playground.html └── .gitmodules /citron_conv.h: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /stdout: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /compilerutils.c: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ctr_constants.c: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /evalserver.ctr: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /hscomp/compiler.hs: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/test0130.ctr: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /plugins/python/python.c: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /plugins/sdl/todo.h.in: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/test0097.exp: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /tests/test0130.exp: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /tests/test0146.exp: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /tests/test0150.exp: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /tests/test0202.exp: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /tests/test0242.exp: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /tests/test0243.exp: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /tests/test0259.exp: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /tests/test0278.exp: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /tests/test0279.ctr: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /tests/test0279.exp: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /tests/test0282.exp: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Library/Data/String/main.ctr: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Library/Graphics/SDL/gfx.ctr: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /autohell/doc/Makefile.am: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /autohell/man/Makefile.am: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /autohell/src/pcrs: -------------------------------------------------------------------------------- 1 | ../../pcrs -------------------------------------------------------------------------------- /extensions/teash.ctr: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /headergen/constexpr-cc.cpp: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /headergen/constexpr-cc.ctr: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /headergen/constexpr-cc.hpp: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/test0005.exp: -------------------------------------------------------------------------------- 1 | 01234 2 | -------------------------------------------------------------------------------- /tests/test0007.exp: -------------------------------------------------------------------------------- 1 | meow! 2 | -------------------------------------------------------------------------------- /tests/test0010.exp: -------------------------------------------------------------------------------- 1 | meow! 2 | -------------------------------------------------------------------------------- /tests/test0011.exp: -------------------------------------------------------------------------------- 1 | meow! 2 | -------------------------------------------------------------------------------- /tests/test0016.exp: -------------------------------------------------------------------------------- 1 | 6 2 | -------------------------------------------------------------------------------- /tests/test0018.exp: -------------------------------------------------------------------------------- 1 | MEOW! 2 | -------------------------------------------------------------------------------- /tests/test0024.exp: -------------------------------------------------------------------------------- 1 | Yes. 2 | -------------------------------------------------------------------------------- /tests/test0025.exp: -------------------------------------------------------------------------------- 1 | Yes. 2 | -------------------------------------------------------------------------------- /tests/test0038.exp: -------------------------------------------------------------------------------- 1 | hello 2 | -------------------------------------------------------------------------------- /tests/test0040.exp: -------------------------------------------------------------------------------- 1 | 10 2 | -------------------------------------------------------------------------------- /tests/test0050.exp: -------------------------------------------------------------------------------- 1 | hello 2 | -------------------------------------------------------------------------------- /tests/test0051.exp: -------------------------------------------------------------------------------- 1 | 121 2 | -------------------------------------------------------------------------------- /tests/test0053.exp: -------------------------------------------------------------------------------- 1 | DONE 2 | -------------------------------------------------------------------------------- /tests/test0087.exp: -------------------------------------------------------------------------------- 1 | 18 2 | -------------------------------------------------------------------------------- /tests/test0093.exp: -------------------------------------------------------------------------------- 1 | 3332 2 | -------------------------------------------------------------------------------- /tests/test0094.exp: -------------------------------------------------------------------------------- 1 | 24 2 | -------------------------------------------------------------------------------- /tests/test0098.ctr: -------------------------------------------------------------------------------- 1 | ?>ab 2 | -------------------------------------------------------------------------------- /tests/test0099.ctr: -------------------------------------------------------------------------------- 1 | ?> 2 | -------------------------------------------------------------------------------- /tests/test0106.exp: -------------------------------------------------------------------------------- 1 | True 2 | -------------------------------------------------------------------------------- /tests/test0199.exp: -------------------------------------------------------------------------------- 1 | meow! 2 | -------------------------------------------------------------------------------- /tests/test0200.exp: -------------------------------------------------------------------------------- 1 | meow! 2 | -------------------------------------------------------------------------------- /tests/test0245.exp: -------------------------------------------------------------------------------- 1 | 14 2 | -------------------------------------------------------------------------------- /tests/test0283.exp: -------------------------------------------------------------------------------- 1 | 149 2 | -------------------------------------------------------------------------------- /Library/Control/Coproc/main.ctr: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /autohell/scripts/citron: -------------------------------------------------------------------------------- 1 | ../../eval -------------------------------------------------------------------------------- /autohell/scripts/mods: -------------------------------------------------------------------------------- 1 | ../../mods -------------------------------------------------------------------------------- /autohell/src/base.c: -------------------------------------------------------------------------------- 1 | ../../base.c -------------------------------------------------------------------------------- /autohell/src/fiber.c: -------------------------------------------------------------------------------- 1 | ../../fiber.c -------------------------------------------------------------------------------- /autohell/src/file.c: -------------------------------------------------------------------------------- 1 | ../../file.c -------------------------------------------------------------------------------- /autohell/src/lexer.c: -------------------------------------------------------------------------------- 1 | ../../lexer.c -------------------------------------------------------------------------------- /autohell/src/plugins: -------------------------------------------------------------------------------- 1 | ../../plugins -------------------------------------------------------------------------------- /autohell/src/utf8.c: -------------------------------------------------------------------------------- 1 | ../../utf8.c -------------------------------------------------------------------------------- /autohell/src/util.c: -------------------------------------------------------------------------------- 1 | ../../util.c -------------------------------------------------------------------------------- /autohell/src/world.c: -------------------------------------------------------------------------------- 1 | ../../world.c -------------------------------------------------------------------------------- /tests/test0012.exp: -------------------------------------------------------------------------------- 1 | meow!? 2 | -------------------------------------------------------------------------------- /tests/test0015.exp: -------------------------------------------------------------------------------- 1 | Hi!Hi! 2 | -------------------------------------------------------------------------------- /tests/test0017.exp: -------------------------------------------------------------------------------- 1 | 138889 2 | -------------------------------------------------------------------------------- /tests/test0019.exp: -------------------------------------------------------------------------------- 1 | HelloWorld 2 | -------------------------------------------------------------------------------- /tests/test0023.exp: -------------------------------------------------------------------------------- 1 | 8901.59030 2 | -------------------------------------------------------------------------------- /tests/test0031.exp: -------------------------------------------------------------------------------- 1 | hiboo!boo! 2 | -------------------------------------------------------------------------------- /tests/test0033.exp: -------------------------------------------------------------------------------- 1 | 123666 2 | -------------------------------------------------------------------------------- /tests/test0034.exp: -------------------------------------------------------------------------------- 1 | 123123 2 | -------------------------------------------------------------------------------- /tests/test0059.exp: -------------------------------------------------------------------------------- 1 | hellohello 2 | -------------------------------------------------------------------------------- /tests/test0066.exp: -------------------------------------------------------------------------------- 1 | Cl30patra 2 | -------------------------------------------------------------------------------- /tests/test0079.exp: -------------------------------------------------------------------------------- 1 | T1 < T2 2 | -------------------------------------------------------------------------------- /tests/test0105.exp: -------------------------------------------------------------------------------- 1 | LxLxLxL 2 | -------------------------------------------------------------------------------- /tests/test0112.exp: -------------------------------------------------------------------------------- 1 | Block 1. 2 | -------------------------------------------------------------------------------- /tests/test0120.exp: -------------------------------------------------------------------------------- 1 | hello 2 | -------------------------------------------------------------------------------- /tests/test0124.exp: -------------------------------------------------------------------------------- 1 | Titlecase 2 | -------------------------------------------------------------------------------- /tests/test0132.exp: -------------------------------------------------------------------------------- 1 | 0 2 | 0 3 | -------------------------------------------------------------------------------- /tests/test0134.exp: -------------------------------------------------------------------------------- 1 | 0 2 | 0 3 | -------------------------------------------------------------------------------- /tests/test0135.exp: -------------------------------------------------------------------------------- 1 | 0 2 | 0 3 | -------------------------------------------------------------------------------- /tests/test0201.exp: -------------------------------------------------------------------------------- 1 | meow!? 2 | -------------------------------------------------------------------------------- /tests/test0219.exp: -------------------------------------------------------------------------------- 1 | blah blah 2 | -------------------------------------------------------------------------------- /tests/test0222.exp: -------------------------------------------------------------------------------- 1 | h*o wo*d 2 | -------------------------------------------------------------------------------- /tests/test0244.exp: -------------------------------------------------------------------------------- 1 | Blaaaa 2 | -------------------------------------------------------------------------------- /tests/test0251.exp: -------------------------------------------------------------------------------- 1 | zeroone 2 | -------------------------------------------------------------------------------- /tests/test0269.exp: -------------------------------------------------------------------------------- 1 | OK 2 | OK 3 | -------------------------------------------------------------------------------- /tests/test0276.exp: -------------------------------------------------------------------------------- 1 | XXXXXXXXXX 2 | -------------------------------------------------------------------------------- /Library/Foreign/C/CParser/main.ctr: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /autohell/doc/ctr.1: -------------------------------------------------------------------------------- 1 | ../../docs/ctr.1 -------------------------------------------------------------------------------- /autohell/doc/docs.ps: -------------------------------------------------------------------------------- 1 | ../../docs/docs.ps -------------------------------------------------------------------------------- /autohell/scripts/Library: -------------------------------------------------------------------------------- 1 | ../../Library -------------------------------------------------------------------------------- /autohell/src/citron.c: -------------------------------------------------------------------------------- 1 | ../../citron.c -------------------------------------------------------------------------------- /autohell/src/citron.h: -------------------------------------------------------------------------------- 1 | ../../citron.h -------------------------------------------------------------------------------- /autohell/src/config.h: -------------------------------------------------------------------------------- 1 | ../../config.h -------------------------------------------------------------------------------- /autohell/src/marshal.c: -------------------------------------------------------------------------------- 1 | ../../marshal.c -------------------------------------------------------------------------------- /autohell/src/memory.c: -------------------------------------------------------------------------------- 1 | ../../memory.c -------------------------------------------------------------------------------- /autohell/src/murmur3.c: -------------------------------------------------------------------------------- 1 | ../../murmur3.c -------------------------------------------------------------------------------- /autohell/src/murmur3.h: -------------------------------------------------------------------------------- 1 | ../../murmur3.h -------------------------------------------------------------------------------- /autohell/src/parser.c: -------------------------------------------------------------------------------- 1 | ../../parser.c -------------------------------------------------------------------------------- /autohell/src/reflect.c: -------------------------------------------------------------------------------- 1 | ../../reflect.c -------------------------------------------------------------------------------- /autohell/src/siphash.c: -------------------------------------------------------------------------------- 1 | ../../siphash.c -------------------------------------------------------------------------------- /autohell/src/siphash.h: -------------------------------------------------------------------------------- 1 | ../../siphash.h -------------------------------------------------------------------------------- /autohell/src/symbol.c: -------------------------------------------------------------------------------- 1 | ../../symbol.c -------------------------------------------------------------------------------- /autohell/src/symbol.h: -------------------------------------------------------------------------------- 1 | ../../symbol.h -------------------------------------------------------------------------------- /autohell/src/system.c: -------------------------------------------------------------------------------- 1 | ../../system.c -------------------------------------------------------------------------------- /autohell/src/walker.c: -------------------------------------------------------------------------------- 1 | ../../walker.c -------------------------------------------------------------------------------- /integration/jupyter_kernel/README.rst: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /plugins/sharedobject/sharedobject.c: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/test0001.exp: -------------------------------------------------------------------------------- 1 | Hello World 2 | -------------------------------------------------------------------------------- /tests/test0002.exp: -------------------------------------------------------------------------------- 1 | HelloWorld! 2 | -------------------------------------------------------------------------------- /tests/test0003.exp: -------------------------------------------------------------------------------- 1 | Hello World 2 | -------------------------------------------------------------------------------- /tests/test0006.exp: -------------------------------------------------------------------------------- 1 | Hello World! 2 | -------------------------------------------------------------------------------- /tests/test0030.exp: -------------------------------------------------------------------------------- 1 | HelloHelloWorld 2 | -------------------------------------------------------------------------------- /tests/test0032.exp: -------------------------------------------------------------------------------- 1 | testtesttest 2 | -------------------------------------------------------------------------------- /tests/test0061.exp: -------------------------------------------------------------------------------- 1 | Y1Y2Y4Y5Y6Y7 2 | -------------------------------------------------------------------------------- /tests/test0082.exp: -------------------------------------------------------------------------------- 1 | Welcome visitor 2 | -------------------------------------------------------------------------------- /tests/test0109.exp: -------------------------------------------------------------------------------- 1 | I am myself. 2 | -------------------------------------------------------------------------------- /tests/test0136.exp: -------------------------------------------------------------------------------- 1 | False 2 | 0 3 | -------------------------------------------------------------------------------- /tests/test0191.exp: -------------------------------------------------------------------------------- 1 | START 2 | END 3 | -------------------------------------------------------------------------------- /tests/test0194.ctr: -------------------------------------------------------------------------------- 1 | 2 is 1. 2 | 3 | -------------------------------------------------------------------------------- /tests/test0228.exp: -------------------------------------------------------------------------------- 1 | Hello World 2 | -------------------------------------------------------------------------------- /tests/test0233.exp: -------------------------------------------------------------------------------- 1 | hello world 2 | -------------------------------------------------------------------------------- /tests/test0234.exp: -------------------------------------------------------------------------------- 1 | Array 2 | Map 3 | -------------------------------------------------------------------------------- /tests/test0235.exp: -------------------------------------------------------------------------------- 1 | hello world 2 | -------------------------------------------------------------------------------- /tests/test0266.exp: -------------------------------------------------------------------------------- 1 | True 2 | False 3 | -------------------------------------------------------------------------------- /tests/test0268.ctr: -------------------------------------------------------------------------------- 1 | my value is 1. 2 | -------------------------------------------------------------------------------- /autohell/doc/ctr.html: -------------------------------------------------------------------------------- 1 | ../../docs/ctr.html -------------------------------------------------------------------------------- /autohell/doc/docs.html: -------------------------------------------------------------------------------- 1 | ../../docs/docs.html -------------------------------------------------------------------------------- /autohell/doc/pcre.txt: -------------------------------------------------------------------------------- 1 | ../../docs/pcre.txt -------------------------------------------------------------------------------- /autohell/doc/sman.ctr: -------------------------------------------------------------------------------- 1 | ../../docs/sman.ctr -------------------------------------------------------------------------------- /autohell/scripts/basemods: -------------------------------------------------------------------------------- 1 | ../../basemods -------------------------------------------------------------------------------- /autohell/src/compiler.c: -------------------------------------------------------------------------------- 1 | ../../compiler.c -------------------------------------------------------------------------------- /autohell/src/coroutine.c: -------------------------------------------------------------------------------- 1 | ../../coroutine.c -------------------------------------------------------------------------------- /autohell/src/coroutine.h: -------------------------------------------------------------------------------- 1 | ../../coroutine.h -------------------------------------------------------------------------------- /autohell/src/dictionary.h: -------------------------------------------------------------------------------- 1 | ../../dictionary.h -------------------------------------------------------------------------------- /autohell/src/generator.c: -------------------------------------------------------------------------------- 1 | ../../generator.c -------------------------------------------------------------------------------- /autohell/src/generator.h: -------------------------------------------------------------------------------- 1 | ../../generator.h -------------------------------------------------------------------------------- /autohell/src/importlib.c: -------------------------------------------------------------------------------- 1 | ../../importlib.c -------------------------------------------------------------------------------- /autohell/src/lexer_plug.c: -------------------------------------------------------------------------------- 1 | ../../lexer_plug.c -------------------------------------------------------------------------------- /autohell/src/linkedlist.c: -------------------------------------------------------------------------------- 1 | ../../linkedlist.c -------------------------------------------------------------------------------- /autohell/src/memory-ngc.h: -------------------------------------------------------------------------------- 1 | ../../memory-ngc.h -------------------------------------------------------------------------------- /autohell/src/pcre_split.h: -------------------------------------------------------------------------------- 1 | ../../pcre_split.h -------------------------------------------------------------------------------- /tests/test0004.exp: -------------------------------------------------------------------------------- 1 | hohohohoho[a:Object] 2 | -------------------------------------------------------------------------------- /tests/test0014.exp: -------------------------------------------------------------------------------- 1 | ONETWOTHREEFOURTHREE 2 | -------------------------------------------------------------------------------- /tests/test0022.exp: -------------------------------------------------------------------------------- 1 | YepYepYepYepYepYep 2 | -------------------------------------------------------------------------------- /tests/test0029.exp: -------------------------------------------------------------------------------- 1 | firstsecond6653.5 2 | -------------------------------------------------------------------------------- /tests/test0045.exp: -------------------------------------------------------------------------------- 1 | hi there!got ya!oops 2 | -------------------------------------------------------------------------------- /tests/test0057.exp: -------------------------------------------------------------------------------- 1 | coffeebeercoffeebeer 2 | -------------------------------------------------------------------------------- /tests/test0064.exp: -------------------------------------------------------------------------------- 1 | equalunequalunequal 2 | -------------------------------------------------------------------------------- /tests/test0067.exp: -------------------------------------------------------------------------------- 1 | 530-1-1021212130 2 | -------------------------------------------------------------------------------- /tests/test0085.exp: -------------------------------------------------------------------------------- 1 | 9 2 | 36 3 | 7 4 | 8 5 | -------------------------------------------------------------------------------- /tests/test0101.exp: -------------------------------------------------------------------------------- 1 | value = Hello World! 2 | -------------------------------------------------------------------------------- /tests/test0159.exp: -------------------------------------------------------------------------------- 1 | Leaking memory... 2 | -------------------------------------------------------------------------------- /tests/test0160.exp: -------------------------------------------------------------------------------- 1 | Leaking memory... 2 | -------------------------------------------------------------------------------- /tests/test0161.exp: -------------------------------------------------------------------------------- 1 | Leaking memory... 2 | -------------------------------------------------------------------------------- /tests/test0170.exp: -------------------------------------------------------------------------------- 1 | Leaking memory... 2 | -------------------------------------------------------------------------------- /tests/test0185.exp: -------------------------------------------------------------------------------- 1 | Leaking memory... 2 | -------------------------------------------------------------------------------- /tests/test0197.exp: -------------------------------------------------------------------------------- 1 | hi there!got ya!oops 2 | -------------------------------------------------------------------------------- /tests/test0230.exp: -------------------------------------------------------------------------------- 1 | The cat goes meow 2 | -------------------------------------------------------------------------------- /tests/test0237.exp: -------------------------------------------------------------------------------- 1 | helloworldtreasure9 2 | -------------------------------------------------------------------------------- /tests/test0249.exp: -------------------------------------------------------------------------------- 1 | abc` 2 | 기나 긴 여행 3 | -------------------------------------------------------------------------------- /tests/test0250.exp: -------------------------------------------------------------------------------- 1 | Array ← 1 ; 2 ; 3 2 | -------------------------------------------------------------------------------- /Library/Data/Array/main.ctr: -------------------------------------------------------------------------------- 1 | import Utils. 2 | -------------------------------------------------------------------------------- /Library/Graphics/SDL/main.ctr: -------------------------------------------------------------------------------- 1 | import gfx. 2 | -------------------------------------------------------------------------------- /autohell/compile: -------------------------------------------------------------------------------- 1 | /usr/share/automake-1.15/compile -------------------------------------------------------------------------------- /autohell/depcomp: -------------------------------------------------------------------------------- 1 | /usr/share/automake-1.15/depcomp -------------------------------------------------------------------------------- /autohell/doc/ctr.html_e: -------------------------------------------------------------------------------- 1 | ../../docs/ctr.html_e -------------------------------------------------------------------------------- /autohell/doc/ctrstyle.css: -------------------------------------------------------------------------------- 1 | ../../docs/ctrstyle.css -------------------------------------------------------------------------------- /autohell/doc/doxygen.conf: -------------------------------------------------------------------------------- 1 | ../../docs/doxygen.conf -------------------------------------------------------------------------------- /autohell/doc/grammar.txt: -------------------------------------------------------------------------------- 1 | ../../docs/grammar.txt -------------------------------------------------------------------------------- /autohell/missing: -------------------------------------------------------------------------------- 1 | /usr/share/automake-1.15/missing -------------------------------------------------------------------------------- /autohell/scripts/sdl.ctr: -------------------------------------------------------------------------------- 1 | ../../extensions/sdl.ctr -------------------------------------------------------------------------------- /autohell/src/citron_conv.h: -------------------------------------------------------------------------------- 1 | ../../citron_conv.h -------------------------------------------------------------------------------- /autohell/src/collections.c: -------------------------------------------------------------------------------- 1 | ../../collections.c -------------------------------------------------------------------------------- /autohell/src/compilerstub.c: -------------------------------------------------------------------------------- 1 | ../../compilerstub.c -------------------------------------------------------------------------------- /autohell/src/memory-boehm.h: -------------------------------------------------------------------------------- 1 | ../../memory-boehm.h -------------------------------------------------------------------------------- /tests/test0028.exp: -------------------------------------------------------------------------------- 1 | yesa1x3.5yTruezFalseNil2 2 | -------------------------------------------------------------------------------- /tests/test0054.exp: -------------------------------------------------------------------------------- 1 | Found argument file.Nil 2 | -------------------------------------------------------------------------------- /tests/test0055.exp: -------------------------------------------------------------------------------- 1 | These tests are silent. 2 | -------------------------------------------------------------------------------- /tests/test0076.exp: -------------------------------------------------------------------------------- 1 | 3,2,1 2 | 1,2,3 3 | 3,2,1 4 | -------------------------------------------------------------------------------- /tests/test0083.exp: -------------------------------------------------------------------------------- 1 | meow 2 | munch! munch! 3 | -------------------------------------------------------------------------------- /tests/test0088.exp: -------------------------------------------------------------------------------- 1 | hohoho 2 | True 3 | 9 4 | -------------------------------------------------------------------------------- /tests/test0110.exp: -------------------------------------------------------------------------------- 1 | Test the exit message 2 | -------------------------------------------------------------------------------- /tests/test0121.exp: -------------------------------------------------------------------------------- 1 | Append this to a String 2 | -------------------------------------------------------------------------------- /tests/test0129.exp: -------------------------------------------------------------------------------- 1 | 6 2 | 64 3 | -20 4 | -1 5 | -------------------------------------------------------------------------------- /tests/test0138.exp: -------------------------------------------------------------------------------- 1 | Used memory not stable. 2 | -------------------------------------------------------------------------------- /tests/test0196.exp: -------------------------------------------------------------------------------- 1 | her royal highness Diva 2 | -------------------------------------------------------------------------------- /tests/test0263.exp: -------------------------------------------------------------------------------- 1 | Visitor 2 | Hello Visitor 3 | -------------------------------------------------------------------------------- /tests/test0281.exp: -------------------------------------------------------------------------------- 1 | 1 [] 2 | 1 (S emicolo n) 3 | -------------------------------------------------------------------------------- /autohell/scripts/heap.ctr: -------------------------------------------------------------------------------- 1 | ../../extensions/heap.ctr -------------------------------------------------------------------------------- /autohell/scripts/json.ctr: -------------------------------------------------------------------------------- 1 | ../../extensions/json.ctr -------------------------------------------------------------------------------- /autohell/scripts/print.ctr: -------------------------------------------------------------------------------- 1 | ../../extensions/print.ctr -------------------------------------------------------------------------------- /autohell/scripts/teash.ctr: -------------------------------------------------------------------------------- 1 | ../../extensions/teash.ctr -------------------------------------------------------------------------------- /autohell/src/base_extensions.c: -------------------------------------------------------------------------------- 1 | ../../base_extensions.c -------------------------------------------------------------------------------- /autohell/src/citron_ensure.h: -------------------------------------------------------------------------------- 1 | ../../citron_ensure.h -------------------------------------------------------------------------------- /autohell/src/compilerutils.c: -------------------------------------------------------------------------------- 1 | ../../compilerutils.c -------------------------------------------------------------------------------- /autohell/src/ctr_constants.c: -------------------------------------------------------------------------------- 1 | ../../ctr_constants.c -------------------------------------------------------------------------------- /autohell/src/grapheme_break.c: -------------------------------------------------------------------------------- 1 | ../../grapheme_break.c -------------------------------------------------------------------------------- /mods/request/.gitkeep: -------------------------------------------------------------------------------- 1 | placeholder for request.so 2 | -------------------------------------------------------------------------------- /tests/test0005.ctr: -------------------------------------------------------------------------------- 1 | 5 times: { :i Pen write: i. }. 2 | -------------------------------------------------------------------------------- /tests/test0008.exp: -------------------------------------------------------------------------------- 1 | setting a nameHellosunshine! 2 | -------------------------------------------------------------------------------- /tests/test0009.exp: -------------------------------------------------------------------------------- 1 | setting a nameHellosunshine! 2 | -------------------------------------------------------------------------------- /tests/test0026.exp: -------------------------------------------------------------------------------- 1 | 5104ellllollo字形聲63OrganWorks 2 | -------------------------------------------------------------------------------- /tests/test0044.exp: -------------------------------------------------------------------------------- 1 | 12world12hellothere2merryxmas 2 | -------------------------------------------------------------------------------- /tests/test0046.exp: -------------------------------------------------------------------------------- 1 | Cats have personel for that! 2 | -------------------------------------------------------------------------------- /tests/test0047.exp: -------------------------------------------------------------------------------- 1 | Cats have personel for that! 2 | -------------------------------------------------------------------------------- /tests/test0048.exp: -------------------------------------------------------------------------------- 1 | Cats have personel for that! 2 | -------------------------------------------------------------------------------- /tests/test0049.exp: -------------------------------------------------------------------------------- 1 | /tmp/test.txtHello!World!!1200 2 | -------------------------------------------------------------------------------- /tests/test0102.exp: -------------------------------------------------------------------------------- 1 | TrueTrueTrueFalseTrueFalse 2 | -------------------------------------------------------------------------------- /tests/test0150.ctr: -------------------------------------------------------------------------------- 1 | #Test empty block okay 2 | {}. 3 | -------------------------------------------------------------------------------- /tests/test0184.exp: -------------------------------------------------------------------------------- 1 | 282282282Leaking memory... 2 | -------------------------------------------------------------------------------- /tests/test0198.exp: -------------------------------------------------------------------------------- 1 | Cats have personel for that! 2 | -------------------------------------------------------------------------------- /Library/Data/main.ctr: -------------------------------------------------------------------------------- 1 | import Array Iterator Map Set. 2 | -------------------------------------------------------------------------------- /autohell/config.guess: -------------------------------------------------------------------------------- 1 | /usr/share/automake-1.15/config.guess -------------------------------------------------------------------------------- /autohell/config.sub: -------------------------------------------------------------------------------- 1 | /usr/share/automake-1.15/config.sub -------------------------------------------------------------------------------- /autohell/install-sh: -------------------------------------------------------------------------------- 1 | /usr/share/automake-1.15/install-sh -------------------------------------------------------------------------------- /autohell/ltmain.sh: -------------------------------------------------------------------------------- 1 | /usr/share/libtool/build-aux/ltmain.sh -------------------------------------------------------------------------------- /autohell/scripts/iterable.ctr: -------------------------------------------------------------------------------- 1 | ../../extensions/iterable.ctr -------------------------------------------------------------------------------- /autohell/scripts/requests.ctr: -------------------------------------------------------------------------------- 1 | ../../extensions/requests.ctr -------------------------------------------------------------------------------- /autohell/scripts/string.ctr: -------------------------------------------------------------------------------- 1 | ../../extensions/string.ctr -------------------------------------------------------------------------------- /autohell/scripts/stringio.ctr: -------------------------------------------------------------------------------- 1 | ../../extensions/stringio.ctr -------------------------------------------------------------------------------- /autohell/src/ctr_preprocessor.c: -------------------------------------------------------------------------------- 1 | ../../ctr_preprocessor.c -------------------------------------------------------------------------------- /tests/test0016.ctr: -------------------------------------------------------------------------------- 1 | a is 3 + 2 + 1. 2 | Pen write: a. 3 | -------------------------------------------------------------------------------- /tests/test0019.ctr: -------------------------------------------------------------------------------- 1 | Pen write: 'Hello', write: 'World'. 2 | -------------------------------------------------------------------------------- /tests/test0027.exp: -------------------------------------------------------------------------------- 1 | Length is:4Length is:5YesYesRunning 2 | -------------------------------------------------------------------------------- /tests/test0072.exp: -------------------------------------------------------------------------------- 1 | ho!ho!ooooowooo:wooo:wooo:lalalala 2 | -------------------------------------------------------------------------------- /tests/test0111.exp: -------------------------------------------------------------------------------- 1 | Block 1. 2 | Catch Block. 3 | a = 0 4 | -------------------------------------------------------------------------------- /tests/test0122.exp: -------------------------------------------------------------------------------- 1 | 10 / 2 = 5 2 | * 2 makes... 10 3 | -------------------------------------------------------------------------------- /tests/test0128.exp: -------------------------------------------------------------------------------- 1 | 24 2 | 10 3 | o2 4 | [sum:Block] 5 | -------------------------------------------------------------------------------- /tests/test0224.exp: -------------------------------------------------------------------------------- 1 | $$number of the Devil i$: 666 !!!! 2 | -------------------------------------------------------------------------------- /tests/test0226.exp: -------------------------------------------------------------------------------- 1 | Het Nederlands is een mooie taal. 2 | -------------------------------------------------------------------------------- /tests/test0231.exp: -------------------------------------------------------------------------------- 1 | hello world 2 | 3 | 4 | hi there 5 | -------------------------------------------------------------------------------- /tests/test0236.exp: -------------------------------------------------------------------------------- 1 | select * from users where id = 2 2 | -------------------------------------------------------------------------------- /tests/test0260.exp: -------------------------------------------------------------------------------- 1 | False 2 | False 3 | False 4 | False 5 | -------------------------------------------------------------------------------- /tests/test0267.exp: -------------------------------------------------------------------------------- 1 | aHello World How 2 | AreYa?\n 3 | -------------------------------------------------------------------------------- /tests/test0270.ctr: -------------------------------------------------------------------------------- 1 | q is (File list: 'nonexistant'). 2 | -------------------------------------------------------------------------------- /tests/test0272.exp: -------------------------------------------------------------------------------- 1 | | a | 2 | | a | 3 | -------------------------------------------------------------------------------- /autohell/scripts/fileutils.ctr: -------------------------------------------------------------------------------- 1 | ../../extensions/fileutils.ctr -------------------------------------------------------------------------------- /autohell/scripts/functional.ctr: -------------------------------------------------------------------------------- 1 | ../../extensions/functional.ctr -------------------------------------------------------------------------------- /autohell/scripts/importlib.ctr: -------------------------------------------------------------------------------- 1 | ../../extensions/importlib.ctr -------------------------------------------------------------------------------- /autohell/scripts/reflection.ctr: -------------------------------------------------------------------------------- 1 | ../../extensions/reflection.ctr -------------------------------------------------------------------------------- /autohell/scripts/switchcase.ctr: -------------------------------------------------------------------------------- 1 | ../../extensions/switchcase.ctr -------------------------------------------------------------------------------- /autohell/src/compcompat_pthread.h: -------------------------------------------------------------------------------- 1 | ../../compcompat_pthread.h -------------------------------------------------------------------------------- /examples/fun/#magic.lsp#: -------------------------------------------------------------------------------- 1 | ((defun test (lambda (a) a)) 10) 2 | -------------------------------------------------------------------------------- /examples/lol.test: -------------------------------------------------------------------------------- 1 | crap 2 | do 3 | shit 4 | done 5 | end 6 | -------------------------------------------------------------------------------- /examples/tuple.ctr: -------------------------------------------------------------------------------- 1 | var ra is [1]. 2 | Pen write: ra, brk. 3 | -------------------------------------------------------------------------------- /plugins/ffi/test/sample.c: -------------------------------------------------------------------------------- 1 | struct a { int a; char* b; } foo; 2 | -------------------------------------------------------------------------------- /tests/test0035.exp: -------------------------------------------------------------------------------- 1 | Can we escape a string with 'quotes' ? 2 | -------------------------------------------------------------------------------- /tests/test0050.ctr: -------------------------------------------------------------------------------- 1 | Pen write: (Shell call: 'echo hello'). 2 | -------------------------------------------------------------------------------- /tests/test0071.exp: -------------------------------------------------------------------------------- 1 | 1|2|3 2 | Hello,World,123,[:Object],Nil 3 | -------------------------------------------------------------------------------- /tests/test0074.exp: -------------------------------------------------------------------------------- 1 | Array:1,2,3,4,5,6 2 | Array:4,5,6,1,2,3 3 | -------------------------------------------------------------------------------- /tests/test0092.exp: -------------------------------------------------------------------------------- 1 | local 2 | global 3 | Hello World 4 | Bye 5 | -------------------------------------------------------------------------------- /tests/test0219.ctr: -------------------------------------------------------------------------------- 1 | a is Program input. 2 | Pen write: a, brk. -------------------------------------------------------------------------------- /tests/test0227.exp: -------------------------------------------------------------------------------- 1 | #1 = b 2 | #2 = c 3 | #3 = d 4 | #4 = e 5 | -------------------------------------------------------------------------------- /tests/test0261.exp: -------------------------------------------------------------------------------- 1 | ---- 2 | Message quota cannot change. 3 | -------------------------------------------------------------------------------- /autohell/scripts/ccompletion.ctr: -------------------------------------------------------------------------------- 1 | ../../extensions/ccompletion.ctr -------------------------------------------------------------------------------- /autohell/scripts/collections.ctr: -------------------------------------------------------------------------------- 1 | ../../extensions/collections.ctr -------------------------------------------------------------------------------- /autohell/scripts/documentation.ctr: -------------------------------------------------------------------------------- 1 | ../../extensions/documentation.ctr -------------------------------------------------------------------------------- /integration/pygments/CitronLexer/.gitignore: -------------------------------------------------------------------------------- 1 | *.egg-info 2 | *.pyc 3 | -------------------------------------------------------------------------------- /tests/test0002.ctr: -------------------------------------------------------------------------------- 1 | Pen write: 'Hello'. 2 | Pen write: 'World!'. 3 | -------------------------------------------------------------------------------- /tests/test0021.exp: -------------------------------------------------------------------------------- 1 | Yes, nine is less than ten.403Not true!Yep 2 | -------------------------------------------------------------------------------- /tests/test0037.exp: -------------------------------------------------------------------------------- 1 | a = 2 b = 3 a = 3 b = 7 x = 13 y = 2 p = 6 2 | -------------------------------------------------------------------------------- /tests/test0043.exp: -------------------------------------------------------------------------------- 1 | repeat everything:I say. and:everything:I do. 2 | -------------------------------------------------------------------------------- /tests/test0058.exp: -------------------------------------------------------------------------------- 1 | hi!xhello a = 22 and q = 2 and x = 2hello 2 | -------------------------------------------------------------------------------- /tests/test0063.exp: -------------------------------------------------------------------------------- 1 | Apples cost: cost 60 cent a piece.0123456 2 | -------------------------------------------------------------------------------- /tests/test0084.exp: -------------------------------------------------------------------------------- 1 | 101 2 | 102 3 | 103 4 | 101 5 | 102 6 | 103 7 | -------------------------------------------------------------------------------- /tests/test0096.exp: -------------------------------------------------------------------------------- 1 | Apples cost: cost 60 cent a piece.0123456 2 | -------------------------------------------------------------------------------- /tests/test0115.exp: -------------------------------------------------------------------------------- 1 | Caught!Caught!Caught!Caught!Nested Caught! 2 | -------------------------------------------------------------------------------- /tests/test0116.exp: -------------------------------------------------------------------------------- 1 | I can handle out-of-bound Command arguments. 2 | -------------------------------------------------------------------------------- /tests/test0172.exp: -------------------------------------------------------------------------------- 1 | True|Nil2True|Nil2True|Nil2Leaking memory... 2 | -------------------------------------------------------------------------------- /tests/test0240.exp: -------------------------------------------------------------------------------- 1 | 25.6 2 | 5 apples and 3 oranges 3 | ❤❤❤❤❤❤ 4 | -------------------------------------------------------------------------------- /tests/test0264.ctr: -------------------------------------------------------------------------------- 1 | Program forbidFork. 2 | Program new: { }. 3 | -------------------------------------------------------------------------------- /tests/test0268.exp: -------------------------------------------------------------------------------- 1 | timeout: the monitored command dumped core 2 | -------------------------------------------------------------------------------- /Library/Functional/Monad/main.ctr: -------------------------------------------------------------------------------- 1 | import Either Maybe Array Block. 2 | -------------------------------------------------------------------------------- /autohell/examples/fun/#magic.lsp#: -------------------------------------------------------------------------------- 1 | ((defun test (lambda (a) a)) 10) 2 | -------------------------------------------------------------------------------- /autohell/examples/lol.test: -------------------------------------------------------------------------------- 1 | crap 2 | do 3 | shit 4 | done 5 | end 6 | -------------------------------------------------------------------------------- /autohell/examples/tuple.ctr: -------------------------------------------------------------------------------- 1 | var ra is [1]. 2 | Pen write: ra, brk. 3 | -------------------------------------------------------------------------------- /autohell/scripts/multiprocessing.ctr: -------------------------------------------------------------------------------- 1 | ../../extensions/multiprocessing.ctr -------------------------------------------------------------------------------- /python/test.ctr: -------------------------------------------------------------------------------- 1 | Pen write: (String randomizeBytesWithLength: 10). 2 | -------------------------------------------------------------------------------- /tests/test0003.ctr: -------------------------------------------------------------------------------- 1 | greeter is 'Hello World'. 2 | Pen write: greeter. 3 | -------------------------------------------------------------------------------- /tests/test0149.ctr: -------------------------------------------------------------------------------- 1 | #NOAST 2 | #Test Parser error 3 | a is ( 3 + 2. 4 | -------------------------------------------------------------------------------- /tests/test0152.ctr: -------------------------------------------------------------------------------- 1 | #NOAST 2 | #Test parser error 3 | var is. 4 | 5 | -------------------------------------------------------------------------------- /tests/test0274.exp: -------------------------------------------------------------------------------- 1 | Array ← 2 ; 5 ; 8 2 | Array new 3 | Array new 4 | -------------------------------------------------------------------------------- /tests/test0280.exp: -------------------------------------------------------------------------------- 1 | (Map new) put:'key' at:'test', put:'123' at:123 2 | -------------------------------------------------------------------------------- /tests/test0001.ctr: -------------------------------------------------------------------------------- 1 | #this is a comment 2 | Pen write: 'Hello World'. 3 | 4 | -------------------------------------------------------------------------------- /tests/test0035.ctr: -------------------------------------------------------------------------------- 1 | Pen write: 'Can we escape a string with \'quotes\' ?'. 2 | -------------------------------------------------------------------------------- /tests/test0040.ctr: -------------------------------------------------------------------------------- 1 | x is 5. 2 | x times: { x +=: 1. }. 3 | Pen write: x. 4 | -------------------------------------------------------------------------------- /tests/test0056.exp: -------------------------------------------------------------------------------- 1 | 22Unknown method Nil::'value' was called2hello5True 2 | -------------------------------------------------------------------------------- /tests/test0097.ctr: -------------------------------------------------------------------------------- 1 | ?> 2 | 3 |
4 |Hello this is a .
5 |
--------------------------------------------------------------------------------
/tests/test0114.exp:
--------------------------------------------------------------------------------
1 | 0:Hello
2 | 1:World
3 | 2:Welcome
4 | 3:To
5 | 4:Citron
6 |
--------------------------------------------------------------------------------
/tests/test0207.exp:
--------------------------------------------------------------------------------
1 | This program is not allowed to execute shell commands.
2 |
--------------------------------------------------------------------------------
/tests/test0215.exp:
--------------------------------------------------------------------------------
1 | This program is not allowed to perform this operation.
2 |
--------------------------------------------------------------------------------
/tests/test0218.exp:
--------------------------------------------------------------------------------
1 | This program is not allowed to perform this operation.
2 |
--------------------------------------------------------------------------------
/tests/test0265.ctr:
--------------------------------------------------------------------------------
1 | Program forbidFork.
2 | Program serve: (Object new).
3 |
--------------------------------------------------------------------------------
/tests/test0277.exp:
--------------------------------------------------------------------------------
1 | Hello, Everyone. I'm AnotherTest and I'm an alcoholoc.
2 |
--------------------------------------------------------------------------------
/tests/test0055.ctr:
--------------------------------------------------------------------------------
1 | Clock wait: 1.
2 | Pen write: 'These tests are silent.'.
3 |
--------------------------------------------------------------------------------
/tests/test0212.exp:
--------------------------------------------------------------------------------
1 | This program is not allowed to perform any file operations.
2 |
--------------------------------------------------------------------------------
/tests/test0216.exp:
--------------------------------------------------------------------------------
1 | This program is not allowed to perform any file operations.
2 |
--------------------------------------------------------------------------------
/image/citron.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/probonopd/citron/master/image/citron.png
--------------------------------------------------------------------------------
/plugins/ffi/a.out:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/probonopd/citron/master/plugins/ffi/a.out
--------------------------------------------------------------------------------
/tests/test0025.ctr:
--------------------------------------------------------------------------------
1 | (3 between: 19 - 17 and: 20 ) ifTrue: { Pen write: 'Yes.'. }.
2 |
--------------------------------------------------------------------------------
/tests/test0052.exp:
--------------------------------------------------------------------------------
1 | color #0 is: red color #1 is: orange color #2 is: green 3 colors!
2 |
--------------------------------------------------------------------------------
/tests/test0118.exp:
--------------------------------------------------------------------------------
1 | Number:0
2 | String:0
3 | Array:Nil0Array ← 99919990
4 | Map:01
5 |
--------------------------------------------------------------------------------
/tests/test0146.ctr:
--------------------------------------------------------------------------------
1 | # Should be fine as destruction
2 | {
3 | undef is 1.
4 | } run.
5 |
--------------------------------------------------------------------------------
/tests/test0154.ctr:
--------------------------------------------------------------------------------
1 | #NOAST
2 | #Test parser error
3 | Nil keyword: 1 message {}.
4 |
--------------------------------------------------------------------------------
/tests/test0179.exp:
--------------------------------------------------------------------------------
1 | SaladSalad
2 | SaladSalad
3 | SaladSalad
4 | Leaking memory...
5 |
--------------------------------------------------------------------------------
/tests/test0190.exp:
--------------------------------------------------------------------------------
1 | 2
2 | Hello
3 | 2
4 | Hello
5 | 2
6 | Hello
7 | Leaking memory...
8 |
--------------------------------------------------------------------------------
/Library/Foreign/Plugin/main.ctr:
--------------------------------------------------------------------------------
1 | var LoadPlugin is {:path_to_so
2 | Inject cExec.
3 | }.
4 |
--------------------------------------------------------------------------------
/Library/Utils/AST.ctr:
--------------------------------------------------------------------------------
1 | Pen writeln: 'use Library/AST'.
2 | {thisBlock error: Nil.} run.
3 |
--------------------------------------------------------------------------------
/Makefile.am:
--------------------------------------------------------------------------------
1 | SUBDIR=plugins
2 |
3 | bin_PROGRAMS = Citron
4 | Citron_SOURCES = *.c *.h
5 |
--------------------------------------------------------------------------------
/exec.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | echo "var test is True.
3 | Eval end." | ./eval --global-vars
4 |
--------------------------------------------------------------------------------
/tests/foreign/a.out:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/probonopd/citron/master/tests/foreign/a.out
--------------------------------------------------------------------------------
/tests/test0004.ctr:
--------------------------------------------------------------------------------
1 | 5 times: { Pen write: 'ho'. }.
2 | a is Object new.
3 | Pen write: a.
4 |
--------------------------------------------------------------------------------
/tests/test0081.exp:
--------------------------------------------------------------------------------
1 | Map #1 contains: world and world
2 | Map #2 contains: hello and world
3 |
--------------------------------------------------------------------------------
/tests/test0098.exp:
--------------------------------------------------------------------------------
1 | Uncaught error has occurred.
2 | Expected closing quote on line: 1.
3 |
--------------------------------------------------------------------------------
/tests/test0099.exp:
--------------------------------------------------------------------------------
1 | Uncaught error has occurred.
2 | Expected closing quote on line: 1.
3 |
--------------------------------------------------------------------------------
/tests/test0100.exp:
--------------------------------------------------------------------------------
1 | Uncaught error has occurred.
2 | Expected closing quote on line: 13.
3 |
--------------------------------------------------------------------------------
/tests/test0177.exp:
--------------------------------------------------------------------------------
1 | Ceasar Salad
2 | Ceasar Salad
3 | Ceasar Salad
4 | Leaking memory...
5 |
--------------------------------------------------------------------------------
/tests/test0202.ctr:
--------------------------------------------------------------------------------
1 | #Test invalid left hand assignment with Nil (No-op)
2 | Nil is True.
3 |
--------------------------------------------------------------------------------
/tests/test0204.exp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/probonopd/citron/master/tests/test0204.exp
--------------------------------------------------------------------------------
/tests/test0208.exp:
--------------------------------------------------------------------------------
1 | This program is not allowed to modify or delete any files or folders.
2 |
--------------------------------------------------------------------------------
/tests/test0209.exp:
--------------------------------------------------------------------------------
1 | This program is not allowed to modify or delete any files or folders.
2 |
--------------------------------------------------------------------------------
/tests/test0210.exp:
--------------------------------------------------------------------------------
1 | This program is not allowed to modify or delete any files or folders.
2 |
--------------------------------------------------------------------------------
/tests/test0211.exp:
--------------------------------------------------------------------------------
1 | This program is not allowed to modify or delete any files or folders.
2 |
--------------------------------------------------------------------------------
/tests/test0217.exp:
--------------------------------------------------------------------------------
1 | This program is not allowed to modify or delete any files or folders.
2 |
--------------------------------------------------------------------------------
/tests/test0254.exp:
--------------------------------------------------------------------------------
1 | 2017-07-10 10:00:00
2 | 2017-07-10 09:00:00
3 | 2017-07-10 10:00:00
4 |
--------------------------------------------------------------------------------
/tests/test0276.ctr:
--------------------------------------------------------------------------------
1 | Pen write: (
2 | 'X' randomizeBytesWithLength: 10
3 | ), brk.
4 |
5 |
--------------------------------------------------------------------------------
/Library/Extensions.ctr:
--------------------------------------------------------------------------------
1 | File new: (File extensionsPath) + '/extensions/fileutils.ctr', include.
2 |
--------------------------------------------------------------------------------
/autohell/Makefile.am:
--------------------------------------------------------------------------------
1 | AUTOMAKE_OPTIONS = foreign
2 | SUBDIRS = src doc examples man scripts
3 |
--------------------------------------------------------------------------------
/examples/Makefile.am:
--------------------------------------------------------------------------------
1 | exampledir = $(datarootdir)/doc/@PACKAGE@
2 | example_DATA = 99beer.ctr
3 |
--------------------------------------------------------------------------------
/examples/sdl/boop.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/probonopd/citron/master/examples/sdl/boop.jpg
--------------------------------------------------------------------------------
/examples/sdl/lol.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/probonopd/citron/master/examples/sdl/lol.bmp
--------------------------------------------------------------------------------
/plugins/ffi/test/a.out:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/probonopd/citron/master/plugins/ffi/test/a.out
--------------------------------------------------------------------------------
/siphash.h:
--------------------------------------------------------------------------------
1 |
2 | uint64_t siphash24(const void *src, unsigned long src_sz, const char key[16]);
3 |
--------------------------------------------------------------------------------
/tests/test0042.exp:
--------------------------------------------------------------------------------
1 | blackearl greythere are2 items in the array.Now my coffee is.. capuccinoNil
2 |
--------------------------------------------------------------------------------
/tests/test0148.ctr:
--------------------------------------------------------------------------------
1 | #NOAST
2 | #Test whether we can generate a correct parser error.
3 | Nil {.
4 |
--------------------------------------------------------------------------------
/tests/test0213.exp:
--------------------------------------------------------------------------------
1 | This program is not allowed to include any other files for code execution.
2 |
--------------------------------------------------------------------------------
/tests/test0220.exp:
--------------------------------------------------------------------------------
1 | False
2 | True
3 | True
4 | False
5 | True
6 | False
7 | False
8 | False
9 |
--------------------------------------------------------------------------------
/examples/reverse.ctr:
--------------------------------------------------------------------------------
1 | Pen write: (File new: 'test.txt', read split: '\n', reverse join: '\n'), brk.
2 |
--------------------------------------------------------------------------------
/examples/sdl/razavi.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/probonopd/citron/master/examples/sdl/razavi.jpg
--------------------------------------------------------------------------------
/integration/gml/gmbe.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/probonopd/citron/master/integration/gml/gmbe.exe
--------------------------------------------------------------------------------
/integration/gml/gmbe.gb1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/probonopd/citron/master/integration/gml/gmbe.gb1
--------------------------------------------------------------------------------
/integration/gml/gmbe.gmk:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/probonopd/citron/master/integration/gml/gmbe.gmk
--------------------------------------------------------------------------------
/tests/notest0262.exp:
--------------------------------------------------------------------------------
1 | Got signal 'SegmentationGot signal 15, quiGot signal 'Terminated', quitting
2 |
--------------------------------------------------------------------------------
/tests/test0015.ctr:
--------------------------------------------------------------------------------
1 | t is Object new.
2 | t on: 'hi' do: { Pen write: 'Hi!'. }.
3 | t hi.
4 | t hi.
5 |
--------------------------------------------------------------------------------
/tests/test0020.exp:
--------------------------------------------------------------------------------
1 | Nil is Nil!YESNonono..TRUE is TRUE!TRUE is TRUE!FALSE is FALSE!FALSE is FALSE!
2 |
--------------------------------------------------------------------------------
/tests/test0086.exp:
--------------------------------------------------------------------------------
1 | 1
2 | 2
3 | 2
4 | Error, cannot assign, key not found: x, forgot to use var ?
5 |
--------------------------------------------------------------------------------
/tests/test0109.ctr:
--------------------------------------------------------------------------------
1 | #Test Object myself
2 | (3 myself = 3) ifTrue: { Pen write: 'I am myself.'. }.
3 |
--------------------------------------------------------------------------------
/tests/test0147.ctr:
--------------------------------------------------------------------------------
1 | #NOAST
2 | Pen write: 'aaa', brk.
3 | { ^^. } run.
4 | Pen write: 'aaa', brk.
5 |
--------------------------------------------------------------------------------
/tests/test0218.ctr:
--------------------------------------------------------------------------------
1 | #countdown mode forbids sleep
2 | Program remainingMessages: 100.
3 | Clock wait: 10.
--------------------------------------------------------------------------------
/tests/test0242.ctr:
--------------------------------------------------------------------------------
1 | #Test eval whitelist
2 | 'Array new' eval. #okay
3 | 'Object new' eval. #okay
4 |
--------------------------------------------------------------------------------
/tests/test0264.exp:
--------------------------------------------------------------------------------
1 | This program is not allowed to spawn other processes or serve remote objects.
2 |
--------------------------------------------------------------------------------
/tests/test0265.exp:
--------------------------------------------------------------------------------
1 | This program is not allowed to spawn other processes or serve remote objects.
2 |
--------------------------------------------------------------------------------
/tests/test0271.exp:
--------------------------------------------------------------------------------
1 | [31mH[33me[32ml[36ml[34mo[35m![0m ---------------------------------------
2 |
--------------------------------------------------------------------------------
/autohell/examples/Makefile.am:
--------------------------------------------------------------------------------
1 | exampledir = $(datarootdir)/doc/@PACKAGE@
2 | example_DATA = 99beer.ctr
3 |
--------------------------------------------------------------------------------
/plugins/json/libjansson.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/probonopd/citron/master/plugins/json/libjansson.a
--------------------------------------------------------------------------------
/tests/test0137.exp:
--------------------------------------------------------------------------------
1 | Used memory not stable.
2 | 1184416
3 | 1188304
4 | 1196144
5 | 1208800
6 | 1220288
7 |
--------------------------------------------------------------------------------
/tests/test0145.ctr:
--------------------------------------------------------------------------------
1 | #NOAST
2 | 3 times: {
3 | 3 times: {
4 | thisBlock error: 'Oops'.
5 | }.
6 | }.
7 |
--------------------------------------------------------------------------------
/tests/test0212.ctr:
--------------------------------------------------------------------------------
1 | #can we forbid reading file ?
2 | Program forbidFileRead.
3 | File new: '/tmp/bla.txt'.
--------------------------------------------------------------------------------
/tests/test0273.ctr:
--------------------------------------------------------------------------------
1 | #Can we fill an array
2 | a is Array new fill: 42 with: 'x'.
3 | Pen write: a, brk.
4 |
--------------------------------------------------------------------------------
/autohell/examples/reverse.ctr:
--------------------------------------------------------------------------------
1 | Pen write: (File new: 'test.txt', read split: '\n', reverse join: '\n'), brk.
2 |
--------------------------------------------------------------------------------
/autohell/examples/sdl/lol.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/probonopd/citron/master/autohell/examples/sdl/lol.bmp
--------------------------------------------------------------------------------
/docs/ctrstyle.css:
--------------------------------------------------------------------------------
1 | body { background-color: black; color: #ddd; font-family: 'courier new','courier'; }
2 |
3 |
--------------------------------------------------------------------------------
/examples/fun/magic.lsp:
--------------------------------------------------------------------------------
1 | (begin
2 | (defun name-to-attrib
3 | (# Map cnew: {
4 | })
5 | )
6 | )
7 |
--------------------------------------------------------------------------------
/memory.c:
--------------------------------------------------------------------------------
1 | #ifdef withBoehmGC_P
2 | #include "memory-boehm.h"
3 | #else
4 | #include "memory-ngc.h"
5 | #endif
6 |
--------------------------------------------------------------------------------
/tests/test0073.exp:
--------------------------------------------------------------------------------
1 | blue,red,orange
2 | cyan
3 | yellow,green,black,red,orange,purple,pink
4 | blue,red,orange
5 |
--------------------------------------------------------------------------------
/tests/test0117.exp:
--------------------------------------------------------------------------------
1 | {"poof": {"1234": null}, "Not_An_Array": [1, 2, ["Array?"]], "0": "string", "string": 64}
2 |
--------------------------------------------------------------------------------
/tests/test0131.exp:
--------------------------------------------------------------------------------
1 | at 0,1 :200
2 | at 1,2 :7
3 | I love bifteki and spaghetti
4 | but not on the same plate.
5 |
--------------------------------------------------------------------------------
/tests/test0207.ctr:
--------------------------------------------------------------------------------
1 | #test whether we can block shell access
2 | Program forbidShell.
3 | a is Shell call: 'ls -la'.
--------------------------------------------------------------------------------
/tests/test0246.exp:
--------------------------------------------------------------------------------
1 | Array ← 'a' ; 'b' ; 'c'
2 | 3
3 | Array ← '기' ; '나' ; ' ' ; '긴' ; ' ' ; '여' ; '행'
4 | 7
5 |
--------------------------------------------------------------------------------
/tests/test0275.exp:
--------------------------------------------------------------------------------
1 | Array ← 6 ; 5 ; 4 ; 3 ; 2 ; 1
2 | Array ← 5 ; 4 ; 3 ; 2 ; 1
3 | Array ← 1 ; 2 ; 3 ; 4 ; 5
4 |
--------------------------------------------------------------------------------
/Library/Data/Set/main.ctr:
--------------------------------------------------------------------------------
1 | var Set is import HashSet: 'HashSet', head.
2 |
3 | import export: Set as: 'HashSet'.
4 |
--------------------------------------------------------------------------------
/autohell/examples/fun/magic.lsp:
--------------------------------------------------------------------------------
1 | (begin
2 | (defun name-to-attrib
3 | (# Map cnew: {
4 | })
5 | )
6 | )
7 |
--------------------------------------------------------------------------------
/autohell/examples/sdl/boop.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/probonopd/citron/master/autohell/examples/sdl/boop.jpg
--------------------------------------------------------------------------------
/autohell/examples/sdl/razavi.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/probonopd/citron/master/autohell/examples/sdl/razavi.jpg
--------------------------------------------------------------------------------
/examples/sdl/wowsers_italic.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/probonopd/citron/master/examples/sdl/wowsers_italic.ttf
--------------------------------------------------------------------------------
/tests/test0038.ctr:
--------------------------------------------------------------------------------
1 | x is Map new.
2 | x put: 'hello' at: 'world'.
3 | d is x at: 'world'.
4 | Pen write: d.
5 |
6 |
--------------------------------------------------------------------------------
/tests/test0101.ctr:
--------------------------------------------------------------------------------
1 | Program env: 'TSTVAR' val: 'Hello World!'.
2 | Pen write: 'value = ' + (Program env: 'TSTVAR').
3 |
--------------------------------------------------------------------------------
/tests/test0106.ctr:
--------------------------------------------------------------------------------
1 | #Smalltalk examples wikipedia
2 | Pen write: (3 factorial + 4 factorial between: 30 and: 31 ).
3 |
--------------------------------------------------------------------------------
/tests/test0123.exp:
--------------------------------------------------------------------------------
1 | If hope is 0.1...
2 | Still a little hope for humanity
3 | If hope is -1...
4 | No hope left
5 |
--------------------------------------------------------------------------------
/tests/test0155.ctr:
--------------------------------------------------------------------------------
1 | #NOAST
2 | #Test parser error, expected message after chain
3 | Pen write: 'Hello world', ^.
4 |
--------------------------------------------------------------------------------
/tests/test0171.exp:
--------------------------------------------------------------------------------
1 | hi,world,True,Nil,999
2 | hi,world,True,Nil,999
3 | hi,world,True,Nil,999
4 | Leaking memory...
5 |
--------------------------------------------------------------------------------
/tests/test0195.ctr:
--------------------------------------------------------------------------------
1 | #Can we trace the correct line number ?
2 | ' line 2
3 | line 3 '.
4 | a is 1 / 0. #line 4, not 3.
--------------------------------------------------------------------------------
/tests/test0261.ctr:
--------------------------------------------------------------------------------
1 | Program remainingMessages: 100.
2 | Pen write: '----', brk.
3 | Program remainingMessages: 200.
4 |
--------------------------------------------------------------------------------
/tests/test0267.ctr:
--------------------------------------------------------------------------------
1 | #Can we use special characters?
2 | Pen write: '\aa\bHello\tWorld\rHow\n\Are\fYa\v?\\n'.
3 |
4 |
--------------------------------------------------------------------------------
/tests/test0278.ctr:
--------------------------------------------------------------------------------
1 | t is 'test'.
2 | var tempFile is File tempFileLike: '/tmp/fdXXXXXX'.
3 | tempFile write: t.
4 |
--------------------------------------------------------------------------------
/Library/Utils/main.ctr:
--------------------------------------------------------------------------------
1 | Program alert: 'Importing the whole utility library is not recommended.'.
2 |
3 | import Timer.
4 |
--------------------------------------------------------------------------------
/examples/shit/.ropeproject/history:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/probonopd/citron/master/examples/shit/.ropeproject/history
--------------------------------------------------------------------------------
/plugins/request/ccgi-1.2/libccgi.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/probonopd/citron/master/plugins/request/ccgi-1.2/libccgi.a
--------------------------------------------------------------------------------
/tests/test0006.ctr:
--------------------------------------------------------------------------------
1 | Greeter is Object new.
2 | Greeter on: 'greet' do: { Pen write: 'Hello World!'.}.
3 | Greeter greet.
4 |
--------------------------------------------------------------------------------
/tests/test0108.exp:
--------------------------------------------------------------------------------
1 | 7 is an ODD NUMBER
2 | 4 is an EVEN NUMBER
3 | 5 is NOT AN EVEN NUMBER
4 | 6 is NOT AN ODD NUMBER
5 |
--------------------------------------------------------------------------------
/tests/test0151.ctr:
--------------------------------------------------------------------------------
1 | #NOAST
2 | #Test parser error
3 | o is Object new.
4 | o on: 'test' do: {
5 | my is 123.
6 | }.
7 |
--------------------------------------------------------------------------------
/tests/test0205.exp:
--------------------------------------------------------------------------------
1 | Hello World
2 | True
3 | False
4 | Here ya go... coffee with 4 spoons of sugar and 2 drops of milk.
5 |
--------------------------------------------------------------------------------
/tests/test0214.exp:
--------------------------------------------------------------------------------
1 | 0
2 | 1
3 | 2
4 | 3
5 | 4
6 | 5
7 | 6
8 | 7This program has exceeded the maximum number of messages.
9 |
--------------------------------------------------------------------------------
/tests/test0215.ctr:
--------------------------------------------------------------------------------
1 | #blocking not allowed in countdown mode
2 | Program remainingMessages: 100.
3 | Program waitForInput.
--------------------------------------------------------------------------------
/tests/test0241.exp:
--------------------------------------------------------------------------------
1 | Array ← 'Quotes \' are evil?' ; 1
2 | Quotes ' are evil?
3 | (Map new) put:'\'' at:'\'quote\''
4 | '
5 |
--------------------------------------------------------------------------------
/examples/shit/.ropeproject/objectdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/probonopd/citron/master/examples/shit/.ropeproject/objectdb
--------------------------------------------------------------------------------
/extensions/json.ctr:
--------------------------------------------------------------------------------
1 | var Json is Object new.
2 | Json on: 'loads:' do: {:str
3 | var parsed is JSON parse: str.
4 | }.
5 |
--------------------------------------------------------------------------------
/plugins/termbox/libtermbox.so.1.0.0:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/probonopd/citron/master/plugins/termbox/libtermbox.so.1.0.0
--------------------------------------------------------------------------------
/preproctest.ctr:
--------------------------------------------------------------------------------
1 | Pen write: 'test', brk.
2 | %{
3 | 5 times: {:i
4 | -> {Pen write: i, brk.}
5 | }.
6 | }%
7 |
--------------------------------------------------------------------------------
/tests/plg.py:
--------------------------------------------------------------------------------
1 | x=2
2 | for _ in range(21):
3 | x *= x
4 | print ("21 times x*=x, xi=2 has %s digits" % (len(str(x)),))
5 |
--------------------------------------------------------------------------------
/tests/test0187.exp:
--------------------------------------------------------------------------------
1 | 2
2 | 3
3 | 8
4 | 7
5 | 2
6 | 3
7 | 8
8 | 7
9 | 2
10 | 3
11 | 8
12 | 7
13 | Leaking memory...
14 |
--------------------------------------------------------------------------------
/tests/test0233.ctr:
--------------------------------------------------------------------------------
1 | #Test Slurp in combination with Shell
2 | Pen write: ( Shell call: ( Slurp echo hello world obtain ) ).
3 |
--------------------------------------------------------------------------------
/tests/test0245.ctr:
--------------------------------------------------------------------------------
1 | #relaxed eval
2 | var calc is 'x is ((3 pow: 2) + 2 - 1 * 7 / (25 sqrt))'.
3 | Pen write: calc eval, brk.
4 |
--------------------------------------------------------------------------------
/tests/test0256.exp:
--------------------------------------------------------------------------------
1 | Child says: hello
2 | Child says: hello
3 | Child says: hello
4 | Child says: hello
5 | Child says: hello
6 |
--------------------------------------------------------------------------------
/examples/shit/.ropeproject/globalnames:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/probonopd/citron/master/examples/shit/.ropeproject/globalnames
--------------------------------------------------------------------------------
/tests/test0069.exp:
--------------------------------------------------------------------------------
1 | 9897NilNil
2 | left trimmed and right trimmed!
3 | <html>"html & entities"</html>
4 |
--------------------------------------------------------------------------------
/tests/test0155.exp:
--------------------------------------------------------------------------------
1 | Uncaught error has occurred.
2 | Parser error, unexpected ^ ( tests/test0155.ctr: 3)
3 | -> Expected message.
4 |
--------------------------------------------------------------------------------
/tests/test0223.exp:
--------------------------------------------------------------------------------
1 | True
2 | False
3 | True
4 | False
5 | True
6 | False
7 | True
8 | missing terminating ] for character class
9 |
--------------------------------------------------------------------------------
/tests/test0224.ctr:
--------------------------------------------------------------------------------
1 | x is 6.
2 | who is 'the Devil'.
3 | ?>{$$the} .
4 | Pen write: '\$$number of $$who i$: $$x$$x$$x !!!!', brk.
5 |
--------------------------------------------------------------------------------
/tests/test0234.ctr:
--------------------------------------------------------------------------------
1 | #test array and map type methods
2 | Pen write: (Array new) type, brk.
3 | Pen write: (Map new) type, brk.
4 |
--------------------------------------------------------------------------------
/tests/test0235.ctr:
--------------------------------------------------------------------------------
1 | #Test key-word message Slurp
2 | var s is Slurp new.
3 | s hello: 'world'.
4 | Pen write: ( s obtain ), brk.
5 |
--------------------------------------------------------------------------------
/autohell/examples/sdl/wowsers_italic.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/probonopd/citron/master/autohell/examples/sdl/wowsers_italic.ttf
--------------------------------------------------------------------------------
/tests/test0110.ctr:
--------------------------------------------------------------------------------
1 | #Test exit statement
2 | Pen write: 'Test the exit message'.
3 | Program exit.
4 | Pen write: 'Dont write this'.
5 |
--------------------------------------------------------------------------------
/tests/test0147.exp:
--------------------------------------------------------------------------------
1 | Uncaught error has occurred.
2 | Parser error, unexpected } ( tests/test0147.ctr: 3)
3 | -> Expected a dot (.).
4 |
--------------------------------------------------------------------------------
/tests/test0148.exp:
--------------------------------------------------------------------------------
1 | Uncaught error has occurred.
2 | Parser error, unexpected { ( tests/test0148.ctr: 3)
3 | -> Expected a dot (.).
4 |
--------------------------------------------------------------------------------
/tests/test0151.exp:
--------------------------------------------------------------------------------
1 | Uncaught error has occurred.
2 | Parser error, unexpected } ( tests/test0151.ctr: 6)
3 | -> Expected a dot (.).
4 |
--------------------------------------------------------------------------------
/tests/test0210.ctr:
--------------------------------------------------------------------------------
1 | #can we forbid a program to write to disk ?
2 | Program forbidFileWrite.
3 | File new: '/tmp/bla.txt'.
4 | File delete.
--------------------------------------------------------------------------------
/tests/test0213.ctr:
--------------------------------------------------------------------------------
1 | #Can we forbid a program to include other programs ?
2 | Program forbidInclude.
3 | File new: 'test.ctr', include.
4 |
--------------------------------------------------------------------------------
/autohell/examples/shit/.ropeproject/history:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/probonopd/citron/master/autohell/examples/shit/.ropeproject/history
--------------------------------------------------------------------------------
/autohell/examples/shit/.ropeproject/objectdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/probonopd/citron/master/autohell/examples/shit/.ropeproject/objectdb
--------------------------------------------------------------------------------
/examples/fun/lisp.scm:
--------------------------------------------------------------------------------
1 | (begin
2 | (define fact (lambda (n)
3 | (if (<= n 1) 1 (* n (fact (- n 1))))))
4 |
5 | (display (fact 5))
6 | )
7 |
--------------------------------------------------------------------------------
/examples/serialization/.ropeproject/history:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/probonopd/citron/master/examples/serialization/.ropeproject/history
--------------------------------------------------------------------------------
/examples/serialization/.ropeproject/objectdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/probonopd/citron/master/examples/serialization/.ropeproject/objectdb
--------------------------------------------------------------------------------
/tests/test0024.ctr:
--------------------------------------------------------------------------------
1 | (3 between: 1 and: 20 ) ifTrue: { Pen write: 'Yes.'. }.
2 | (3 between: 19 and: 20 ) ifTrue: { Pen write: 'Yes.'. }.
3 |
--------------------------------------------------------------------------------
/tests/test0216.ctr:
--------------------------------------------------------------------------------
1 | #forbid file read also forbids reading environment vars
2 | Program forbidFileRead.
3 | a is Program env: 'QUERY_STRING'.
--------------------------------------------------------------------------------
/tests/test0258.exp:
--------------------------------------------------------------------------------
1 | True
2 | True
3 | True
4 | True
5 | True
6 | True
7 | True
8 | True
9 | Other process
10 | False
11 | True
12 |
--------------------------------------------------------------------------------
/autohell/examples/shit/.ropeproject/globalnames:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/probonopd/citron/master/autohell/examples/shit/.ropeproject/globalnames
--------------------------------------------------------------------------------
/examples/serialization/.ropeproject/globalnames:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/probonopd/citron/master/examples/serialization/.ropeproject/globalnames
--------------------------------------------------------------------------------
/tests/test0139.ctr:
--------------------------------------------------------------------------------
1 | #Test whether we can set memory limit and create an out-of-memory error
2 | Broom memoryLimit: 10. #wat too low
3 | a is 1.
4 |
--------------------------------------------------------------------------------
/tests/test0149.exp:
--------------------------------------------------------------------------------
1 | Uncaught error has occurred.
2 | Parser error, unexpected end of program ( tests/test0149.ctr: 4)
3 | -> Expected a dot (.).
4 |
--------------------------------------------------------------------------------
/tests/test0153.exp:
--------------------------------------------------------------------------------
1 | Uncaught error has occurred.
2 | Parser error, unexpected end of program ( tests/test0153.ctr: 3)
3 | -> Expected a dot (.).
4 |
--------------------------------------------------------------------------------
/tests/test0154.exp:
--------------------------------------------------------------------------------
1 | Uncaught error has occurred.
2 | Parser error, unexpected . ( tests/test0154.ctr: 3)
3 | -> Expected a message recipient.
4 |
--------------------------------------------------------------------------------
/tests/test0193.ctr:
--------------------------------------------------------------------------------
1 | # Proper parse error with line number
2 | a is '
3 | line number 4... '.
4 | Pen write: 'testje.ctr' + grep: 'Shell'.
5 |
6 |
--------------------------------------------------------------------------------
/tests/test0208.ctr:
--------------------------------------------------------------------------------
1 | #can we forbid a program to write to disk ?
2 | Program forbidFileWrite.
3 | File new: '/tmp/bla.txt'.
4 | File write: 'Hello'.
--------------------------------------------------------------------------------
/tests/test0209.ctr:
--------------------------------------------------------------------------------
1 | #can we forbid a program to write to disk ?
2 | Program forbidFileWrite.
3 | File new: '/tmp/bla.txt'.
4 | File append: 'Hello'.
--------------------------------------------------------------------------------
/tests/test0221.exp:
--------------------------------------------------------------------------------
1 | -rood|-rood
2 | -groen|-groen
3 | -blauw|-blauw
4 | -rood|-rood
5 |
6 | -groen|-groen
7 |
8 | -blauw|-blauw
9 |
--------------------------------------------------------------------------------
/tests/test0228.ctr:
--------------------------------------------------------------------------------
1 | #Can we use +=: to append to strings?
2 | var str is 'Hello'.
3 | str +=: ' '.
4 | str +=: 'World'.
5 | Pen write: str, brk.
6 |
--------------------------------------------------------------------------------
/tests/test0230.ctr:
--------------------------------------------------------------------------------
1 | #String interpolation doesn't work at the end of string #85
2 | catcall is 'meow'.
3 | Pen write: 'The cat goes $$catcall'.
4 |
--------------------------------------------------------------------------------
/tests/test0250.ctr:
--------------------------------------------------------------------------------
1 | #Test Array with arrow symbol notation
2 | a is Array ← 1 ; 2 ; 3. #Can we form an array using ← ?
3 | Pen write: a, brk.
4 |
--------------------------------------------------------------------------------
/autohell/examples/fun/lisp.scm:
--------------------------------------------------------------------------------
1 | (begin
2 | (define fact (lambda (n)
3 | (if (<= n 1) 1 (* n (fact (- n 1))))))
4 |
5 | (display (fact 5))
6 | )
7 |
--------------------------------------------------------------------------------
/extensions/reflection.ctr:
--------------------------------------------------------------------------------
1 | Object on: 'setProperty:to:' do: { :pn :val
2 | Reflect addPrivateVariable: pn.
3 | Reflect set: pn to: val.
4 | }.
5 |
--------------------------------------------------------------------------------
/tests/ptest/main.ctr:
--------------------------------------------------------------------------------
1 | Reflect addGlobalVariable: 'Test'.
2 | Test is Object new.
3 | Test on: 'woot' do: {Pen write: 'Test woot\'d', brk. ^'Woot'.}.
4 |
--------------------------------------------------------------------------------
/tests/test0023.ctr:
--------------------------------------------------------------------------------
1 | Pen write: 2 + 3 factorial.
2 | Pen write: 60 * 30 + 3 / 2.
3 | Pen write: 20 + 5 * 4 - 10.
4 | Pen write: 20 + ( 5 * 4 ) - 10.
5 |
--------------------------------------------------------------------------------
/tests/test0079.ctr:
--------------------------------------------------------------------------------
1 | time is Clock new time.
2 | Clock wait: 1 sec.
3 | time2 is Clock new time.
4 | (time2 > time) ifTrue: { Pen write: 'T1 < T2'. }.
5 |
--------------------------------------------------------------------------------
/tests/test0121.ctr:
--------------------------------------------------------------------------------
1 | #Test String append message
2 | x is 'Append this'.
3 | y is 'to a String'.
4 | Pen write: ('' append: x, append: ' ', append: y).
5 |
--------------------------------------------------------------------------------
/tests/test0211.ctr:
--------------------------------------------------------------------------------
1 | #can we forbid a program to write to disk ?
2 | Program forbidFileWrite.
3 | File new: '/tmp/bla.txt'.
4 | File writeBytes: 'Hello'.
--------------------------------------------------------------------------------
/tests/test0217.ctr:
--------------------------------------------------------------------------------
1 | #forbid file read also forbids reading environment vars
2 | Program forbidFileWrite.
3 | a is Program env: 'QUERY_STRING' val: 123.
--------------------------------------------------------------------------------
/tests/test0280.ctr:
--------------------------------------------------------------------------------
1 | x is Map new put: 'test' at: 'key', put: 123 at: '123'.
2 | x is x kvmap: {:kv ^kv reverse.}.
3 |
4 | Pen write: x, brk.
5 |
6 |
--------------------------------------------------------------------------------
/autohell/examples/serialization/.ropeproject/history:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/probonopd/citron/master/autohell/examples/serialization/.ropeproject/history
--------------------------------------------------------------------------------
/python/citron/parser/__pycache__/ast.cpython-36.pyc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/probonopd/citron/master/python/citron/parser/__pycache__/ast.cpython-36.pyc
--------------------------------------------------------------------------------
/tests/test0125.exp:
--------------------------------------------------------------------------------
1 | file contains: hello
2 | read 2 bytes: "he"
3 | read 3 more bytes: "llo"
4 | Bytes written: 8
5 | Finally, file contains: hello friend!
6 |
--------------------------------------------------------------------------------
/tests/test0206.ctr:
--------------------------------------------------------------------------------
1 | #test whether can fire custom messages to objects - error message test
2 | str is 'write:'.
3 | Pen message: 'write:' arguments: 0.
4 |
--------------------------------------------------------------------------------
/tests/test0272.ctr:
--------------------------------------------------------------------------------
1 | str is 'a' paddingLeft: 10.
2 | Pen write: '| $$str |', brk.
3 | str is 'a' paddingRight: 10.
4 | Pen write: '| $$str |', brk.
5 |
6 |
--------------------------------------------------------------------------------
/tests/test0283.ctr:
--------------------------------------------------------------------------------
1 | var o is Object new.
2 | 50 times: {:i
3 | o on: 'test$$i' do: {^const i + 100.}.
4 | }.
5 |
6 | Pen write: (o test49), brk.
7 |
8 |
--------------------------------------------------------------------------------
/autohell/examples/serialization/.ropeproject/objectdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/probonopd/citron/master/autohell/examples/serialization/.ropeproject/objectdb
--------------------------------------------------------------------------------
/python/citron/parser/__pycache__/token.cpython-36.pyc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/probonopd/citron/master/python/citron/parser/__pycache__/token.cpython-36.pyc
--------------------------------------------------------------------------------
/tests/test0266.ctr:
--------------------------------------------------------------------------------
1 | #Can we use String contains:?
2 | Pen write: ('Hello World' contains: 'World'), brk.
3 | Pen write: ('Hello World' contains: 'Bye'), brk.
4 |
--------------------------------------------------------------------------------
/autohell/examples/serialization/.ropeproject/globalnames:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/probonopd/citron/master/autohell/examples/serialization/.ropeproject/globalnames
--------------------------------------------------------------------------------
/examples/pragma.ctr:
--------------------------------------------------------------------------------
1 | #:oneLineExpressions
2 | Pen on: 'test' do: { Pen write: 'test\n'. ^me. }
3 | Pen test
4 | #:oneLineExpressions
5 |
6 | Pen do test done.
7 |
8 |
--------------------------------------------------------------------------------
/tests/test0071.ctr:
--------------------------------------------------------------------------------
1 | a is Array < 1 ; 2 ; 3.
2 | Pen write: (a join: '|'), brk.
3 | Pen write: ((Array < 'Hello' ; 'World' ; 123 ; (Object new) ; Nil) join: ',').
4 |
--------------------------------------------------------------------------------
/tests/test0105.ctr:
--------------------------------------------------------------------------------
1 | #Test pipelines
2 | mapUp is { :i :v :m m put: ((m @ i) upper) at: i. }.
3 | a is 'lololol' split: 'o', map: mapUp, join: 'x'.
4 | Pen write: a.
5 |
--------------------------------------------------------------------------------
/tests/test0181.exp:
--------------------------------------------------------------------------------
1 | this text contains: 2 words.
2 | Sala
3 | this text contains: 2 words.
4 | Sala
5 | this text contains: 2 words.
6 | Sala
7 | Leaking memory...
8 |
--------------------------------------------------------------------------------
/tests/test0247.exp:
--------------------------------------------------------------------------------
1 | Array ← 97 ; 98 ; 99
2 | 3
3 | Array ← 234 ; 184 ; 176 ; 235 ; 130 ; 152 ; 32 ; 234 ; 184 ; 180 ; 32 ; 236 ; 151 ; 172 ; 237 ; 150 ; 137
4 | 17
5 |
--------------------------------------------------------------------------------
/plugins/request/ccgi-1.2/examples/Makefile:
--------------------------------------------------------------------------------
1 | CFLAGS = -I ..
2 |
3 | dump.cgi: dump.cgi.o
4 | $(CC) -o dump.cgi dump.cgi.o -L .. -lccgi
5 |
6 | dump.cgi.o: dump.cgi.c
7 |
--------------------------------------------------------------------------------
/tests/test0060.exp:
--------------------------------------------------------------------------------
1 | HelloWorld
2 | 2 left in array.
3 | WorldHelloNil
4 | 0 left in array.
5 | Nil
6 | 2 left in array.
7 | HiThere
8 | 0 left in array.
9 | Nil
10 |
--------------------------------------------------------------------------------
/tests/test0064.ctr:
--------------------------------------------------------------------------------
1 | ('b' = 'b') ifTrue: { Pen write: 'equal'.}.
2 | ('a' !=: 'b') ifTrue: { Pen write: 'unequal'.}.
3 | ('a' !=: 'b') ifTrue: { Pen write: 'unequal'.}.
4 |
--------------------------------------------------------------------------------
/tests/test0214.ctr:
--------------------------------------------------------------------------------
1 | #Can we kill a program with a limited number of ticks ?
2 | Program remainingMessages: 15.
3 | 200 times: { :i
4 | Pen write: i, brk.
5 | }.
6 |
7 |
--------------------------------------------------------------------------------
/tests/test0227.ctr:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | q is ('a,b,c,d,e' split: ',').
5 |
6 | q shift.
7 | q each: { :i :x
8 |
9 | Pen write: '#' + i + ' = ' + x, brk.
10 | }.
11 |
--------------------------------------------------------------------------------
/tests/test0243.ctr:
--------------------------------------------------------------------------------
1 | #Test eval whitelist custom message
2 |
3 | x is Object new.
4 | x on: 'test' do: { ^ True. }.
5 |
6 | (x test) ifTrue: {
7 | 'x test' eval.
8 | }.
9 |
--------------------------------------------------------------------------------
/autohell/examples/pragma.ctr:
--------------------------------------------------------------------------------
1 | #:oneLineExpressions
2 | Pen on: 'test' do: { Pen write: 'test\n'. ^me. }
3 | Pen test
4 | #:oneLineExpressions
5 |
6 | Pen do test done.
7 |
8 |
--------------------------------------------------------------------------------
/tests/test0082.ctr:
--------------------------------------------------------------------------------
1 | Butler is Object new.
2 | Butler on: 'greet:' do: { :name
3 | Pen write: 'Welcome ' + name.
4 | }.
5 | james is Butler new.
6 | james greet: 'visitor'.
7 |
--------------------------------------------------------------------------------
/tests/test0141.ctr:
--------------------------------------------------------------------------------
1 | #NOAST
2 | #Test stacktrace over multiple files
3 | Pen write: 'Test Stack trace over multiple files.', brk.
4 | File new: 'tests/test0140.ctr', include.
5 |
--------------------------------------------------------------------------------
/tests/test0182.exp:
--------------------------------------------------------------------------------
1 | 1.6
2 | True
3 | Number
4 | Boolean
5 | 1.6
6 | True
7 | Number
8 | Boolean
9 | 1.6
10 | True
11 | Number
12 | Boolean
13 | Leaking memory...
14 |
--------------------------------------------------------------------------------
/examples/serialization/serializing.rb:
--------------------------------------------------------------------------------
1 | require 'json'
2 |
3 | data = JSON.parse(File.read('generated (1).json'))
4 | stri = JSON.unparse(data)
5 | stri #Ruby's not lazy either!
6 |
--------------------------------------------------------------------------------
/integration/jupyter_kernel/citronkernel/.ipynb_checkpoints/Untitled-checkpoint.ipynb:
--------------------------------------------------------------------------------
1 | {
2 | "cells": [],
3 | "metadata": {},
4 | "nbformat": 4,
5 | "nbformat_minor": 2
6 | }
7 |
--------------------------------------------------------------------------------
/misc/isgood.bash:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | result=`./ctr $1`
3 | dest="${1:0: -4}.exp"
4 | touch $dest
5 | echo "$result" > $dest
6 | echo "Stored result of program in expectation file."
7 |
--------------------------------------------------------------------------------
/tests/plg.ctr:
--------------------------------------------------------------------------------
1 | Broom autoAlloc: True.
2 | BigInteger.
3 | x is 2 toBigInt.
4 | 21 times: { x *=: x. }.
5 | Pen writeln: '21 times x*=:x xi=2 has %s digits' % [(x toString length)].
6 |
--------------------------------------------------------------------------------
/examples/serialization/serializing.py:
--------------------------------------------------------------------------------
1 | import json
2 | with open("generated (1).json") as js:
3 | ldd = json.load(js)
4 | (json.dumps(ldd)) #Python is not lazy, so this is fine
5 |
6 |
--------------------------------------------------------------------------------
/tests/test0191.ctr:
--------------------------------------------------------------------------------
1 | #after a return statement, no statements may be executed
2 | Pen write: ( {
3 | Pen write: 'START', brk.
4 | ^ 'END'.
5 | Pen write: 'DONT', brk.
6 | } run ), brk.
--------------------------------------------------------------------------------
/tests/test0236.ctr:
--------------------------------------------------------------------------------
1 | #Using Slurp for integration of other languages...
2 | query is Slurp new.
3 | query select: '*', from users where: 'id = 2'.
4 | Pen write: (query obtain), brk.
5 |
--------------------------------------------------------------------------------
/autohell/examples/serialization/serializing.rb:
--------------------------------------------------------------------------------
1 | require 'json'
2 |
3 | data = JSON.parse(File.read('generated (1).json'))
4 | stri = JSON.unparse(data)
5 | stri #Ruby's not lazy either!
6 |
--------------------------------------------------------------------------------
/examples/shit.ctr:
--------------------------------------------------------------------------------
1 | var *** is Pen.
2 | *** on: '****:' do: {:s me `write: s.}.
3 | *** on: '*****' do: {me `brk.}.
4 | var ****** is {:*** *** ****: **, *****. }.
5 | ****** applyTo: 'lol'.
6 |
--------------------------------------------------------------------------------
/tests/test0087.ctr:
--------------------------------------------------------------------------------
1 | #Test Closure
2 | multiplier is { :m ^ { :x ^ (my f * x). } set: 'f' value: m. }.
3 | double is multiplier applyTo: 2.
4 | q is double applyTo: 9.
5 | Pen write: q. #18
6 |
--------------------------------------------------------------------------------
/tests/test0166.exp:
--------------------------------------------------------------------------------
1 | You should be able to append something to a string!You should be able to append something to a string!You should be able to append something to a string!Leaking memory...
2 |
--------------------------------------------------------------------------------
/tests/test0271.ctr:
--------------------------------------------------------------------------------
1 | Pen
2 | red write: 'H',
3 | yellow write: 'e',
4 | green write: 'l',
5 | cyan write: 'l',
6 | blue write: 'o',
7 | purple write: '!',
8 | resetColor tab line brk.
9 |
--------------------------------------------------------------------------------
/autohell/examples/serialization/serializing.py:
--------------------------------------------------------------------------------
1 | import json
2 | with open("generated (1).json") as js:
3 | ldd = json.load(js)
4 | (json.dumps(ldd)) #Python is not lazy, so this is fine
5 |
6 |
--------------------------------------------------------------------------------
/tests/test0122.ctr:
--------------------------------------------------------------------------------
1 | #Test multiplyBy and divideBy
2 | x is 10.
3 | x /=: 2.
4 | Pen write: '10 / 2 = '.
5 | Pen write: x, brk.
6 | x *=: 2.
7 | Pen write: ' * 2 makes... '.
8 | Pen write: x, brk.
9 |
--------------------------------------------------------------------------------
/autohell/examples/shit.ctr:
--------------------------------------------------------------------------------
1 | var *** is Pen.
2 | *** on: '****:' do: {:s me `write: s.}.
3 | *** on: '*****' do: {me `brk.}.
4 | var ****** is {:*** *** ****: **, *****. }.
5 | ****** applyTo: 'lol'.
6 |
--------------------------------------------------------------------------------
/examples/shit/test.txt:
--------------------------------------------------------------------------------
1 | POST /149v5mv1 HTTP/1.1
2 | DICKHERE<<<
3 | Content-Disposition: form-data; name="upload"; filename="test"
4 | Content-Type: text/plain
5 | lol
6 | #RAD
7 |
8 | DICKHERE<<<
9 |
--------------------------------------------------------------------------------
/tests/test0030.ctr:
--------------------------------------------------------------------------------
1 | #test assignment, strings etc copied by value: HelloHelloWorld
2 | a is 'Hello'.
3 | c is a.
4 | Pen write: a.
5 | c is 'World'.
6 | Pen write: a.
7 | a is '!'.
8 | Pen write: c.
9 |
--------------------------------------------------------------------------------
/tests/test0112.ctr:
--------------------------------------------------------------------------------
1 | #Nil error should not be caught.
2 | {
3 | Pen write: 'Block 1.\n'.
4 | True break.
5 | Pen write: 'No'.
6 | } catch: {
7 | Pen write: 'You should not see me\n'.
8 | }, run.
9 |
--------------------------------------------------------------------------------
/tests/test0222.ctr:
--------------------------------------------------------------------------------
1 | #Replace the sequences ell and rl with a * --> h*o wo*d
2 | var newString is ('hello world' findPattern: '([eor])([l]+)' do: { :match
3 | ^ '*'.
4 | }).
5 | Pen write: newString,brk.
--------------------------------------------------------------------------------
/tests/test0257.ctr:
--------------------------------------------------------------------------------
1 | #Child may not join.
2 | x is Program new: { :child
3 | Pen write: 'hello1\n'.
4 | child join.
5 | Pen write: 'hello2\n'.
6 | }.
7 |
8 | x join.
9 | Program join.
10 |
--------------------------------------------------------------------------------
/integration/jupyter_kernel/citronkernel/__main__.py:
--------------------------------------------------------------------------------
1 | from ipykernel.kernelapp import IPKernelApp
2 | from .citronkernel import CitronKernel
3 |
4 | IPKernelApp.launch_instance(kernel_class=CitronKernel)
5 |
--------------------------------------------------------------------------------
/autohell/examples/shit/test.txt:
--------------------------------------------------------------------------------
1 | POST /149v5mv1 HTTP/1.1
2 | DICKHERE<<<
3 | Content-Disposition: form-data; name="upload"; filename="test"
4 | Content-Type: text/plain
5 | lol
6 | #RAD
7 |
8 | DICKHERE<<<
9 |
--------------------------------------------------------------------------------
/plugins/ffi/test/test.c:
--------------------------------------------------------------------------------
1 | #include Hello this is a . Pen write: 'test!'. ?> The string ' write: x. ?>' has: . Pen write: (x length) + ' code points'. ?>...
8 | . (x length) times: { :i
9 | ?>
12 |
13 |
14 |
--------------------------------------------------------------------------------
/tests/test0193.exp:
--------------------------------------------------------------------------------
1 | Uncaught error has occurred.
2 | Key not found: me
3 | #3 me (tests/test0193.ctr: 4)
4 | #2 + (tests/test0193.ctr: 4)
5 | #1 write:grep: (tests/test0193.ctr: 4)
6 | ------------------------------------
7 | The probable cause of the exception:
8 | 2 |
9 | 3 | line number 4... '.
10 | 4 | Pen write: 'testje.ctr' + grep: 'Shell'.
11 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^
12 |
--------------------------------------------------------------------------------
/tests/test0253.exp:
--------------------------------------------------------------------------------
1 | 2017-07-13 20:00:00
2 | 2017-07-13 21:00:00
3 | 2017-07-13 21:19:00
4 | 2017-07-13 21:20:00
5 | 2017-07-13 21:21:00
6 | 2017-07-13 21:21:19
7 | 2017-07-13 21:21:20
8 | 2017-07-13 21:21:21
9 | 2019-07-13 21:21:21
10 | 2020-07-13 21:21:21
11 | 2020-12-13 20:21:21
12 | 2021-01-13 20:21:21
13 | 2021-02-01 20:21:21
14 | 2021-02-01 21:21:21
15 | 2021-02-01 21:21:21
16 |
--------------------------------------------------------------------------------
/autohell/examples/boolean.ctr:
--------------------------------------------------------------------------------
1 | # Smalltalkish Boolean
2 |
3 | Boolean on: 'ifTrue:ifFalse:' do: { :trueBlock :falseBlock
4 | me ifTrue: trueBlock.
5 | me ifFalse: falseBlock.
6 | }.
7 |
8 | 1 to: 10 step: 1 do: { :i
9 | i % 2 = 0 ifTrue: {
10 | Pen write: i, write: ' is an even number.\n'.
11 | } ifFalse: {
12 | Pen write: i, write: ' is an odds number.\n'.
13 | }.
14 | }.
15 |
--------------------------------------------------------------------------------
/autohell/examples/mp.ctr:
--------------------------------------------------------------------------------
1 | File new: 'extensions/fileutils.ctr', include.
2 | ImportLib import: 'Multiprocessing' as: 'mp'.
3 |
4 |
5 | var children is mp from: 0 to: 16 numProcs: 15 do: { :i :pnum
6 | Pen write: 'test $$i', brk.
7 | } options: 'v'.
8 |
9 | (children count) times: { :i
10 | (children @ i) message: 'run'.
11 | }.
12 |
13 | (children @ ((children count) - 1)) join.
14 |
--------------------------------------------------------------------------------
/tests/test0058.ctr:
--------------------------------------------------------------------------------
1 | #GC should not destroy blocks that have a reference
2 | Pen write: 'hi!'.
3 | a is 2.
4 | x is 2.
5 | { var c is 3. Pen write: 'x'. var t is 1. Broom sweep. } run.
6 | Broom sweep.
7 | q is 2.
8 | a is 22.
9 | t is { var d is 3. var z is 'hello'. Pen write: z.}.
10 | t run.
11 | Broom sweep.
12 | Pen write: ' a = ' + a + ' and q = ' + q + ' and x = ' + x.
13 | t run.
14 |
--------------------------------------------------------------------------------
/tests/test0104.ctr:
--------------------------------------------------------------------------------
1 | #Test regular numeric for-loop
2 |
3 | 1 to: 6 step: 1 do: { :i
4 | Pen write: 'This is step #' + i, brk.
5 | }.
6 |
7 | 3 to: -2 step: -1 do: { :i
8 | Pen write: 'This is step #' + i, brk.
9 | }.
10 |
11 | 0 to: 0 step: 1 do: { :i
12 | Pen write: 'NEVER!', brk.
13 | }.
14 |
15 | -3 to: 2 step: 0.5 do: { :i
16 | Pen write: 'This is step #' + i, brk.
17 | }.
18 |
--------------------------------------------------------------------------------
/tests/test0277.ctr:
--------------------------------------------------------------------------------
1 | var Person is Object new.
2 |
3 | Person on: 'greetingFor:' do: {:person ^'Hello, ' + person toString.}.
4 | Person on: 'introduce' do: {^'Hello.'.}.
5 |
6 | var Semicolon is Person new.
7 | Semicolon on: 'introduce' do: {^'I\'m AnotherTest and I\'m an alcoholoc.'.}.
8 |
9 |
10 | Pen write: (Semicolon greetingFor: 'Everyone') + '. ' + Semicolon introduce, brk.
11 |
--------------------------------------------------------------------------------
/tests/test0049.ctr:
--------------------------------------------------------------------------------
1 | f1 is File new: 'notafile'.
2 | f2 is File new: '/tmp/test.txt'.
3 | (f2 exists) ifTrue: { f2 delete.}.
4 | Pen write: f2 path.
5 | f2 write: 'Hello!'.
6 | f2 append: 'World!'.
7 | Pen write: f2 read.
8 | (f2 exists) ifTrue: { Pen write: '!'. }.
9 | (f1 exists) ifTrue: { Pen write: '!'. }.
10 | Pen write: f2 size, write: f1 size.
11 | f2 delete. Pen write: f2 size.
12 |
13 |
--------------------------------------------------------------------------------
/tests/test0256.ctr:
--------------------------------------------------------------------------------
1 | #Can we fork multiple childs and send them messages?
2 | children is Array new.
3 | 5 times: { :i
4 | var q is Program new: { :pro
5 | Clock wait: 1.
6 | pro listen: { :message
7 | Pen write: 'Child says: ' + message, brk.
8 | }.
9 |
10 | }.
11 | children push: q.
12 | }.
13 | children each: { :i :child
14 | child message: 'hello'.
15 | child join.
16 | }.
17 |
--------------------------------------------------------------------------------
/Library/Control/Class/Classes.ctr:
--------------------------------------------------------------------------------
1 | # import main.
2 |
3 | var Classes is Map new.
4 | Classes on: 'new:contract:' do: {:name :contract
5 | me at: name, isNil ifFalse: {thisBlock error: 'Redefintion of existing class $$name'.}.
6 | me put: (Class new init: contract) at: name.
7 | }.
8 |
9 | Classes on: 'respondTo:' do: {:name ^me at: name.}.
10 |
11 | import export: Classes as: 'Classes'.
12 |
--------------------------------------------------------------------------------
/tests/test0088.ctr:
--------------------------------------------------------------------------------
1 | #Test scope, common scenarios
2 | santaLaugh is 'ho'.
3 | laugh is ''.
4 | 3 times: { laugh is laugh + santaLaugh. }.#This should capture and modify dynamically
5 | Pen write: laugh, brk.
6 |
7 | locked is False.
8 | security is True.
9 | security ifTrue: { locked is True. }.
10 | Pen write: locked, brk.
11 |
12 | n is 7.
13 | (True) ifTrue: { n is 9. }.
14 | Pen write: n.
15 |
--------------------------------------------------------------------------------
/tests/test0127.exp:
--------------------------------------------------------------------------------
1 | Confirmed. Target file does not exist.
2 | hello world
3 | Uncaught error has occurred.
4 | Unknown method Object::'open' was called
5 | #1 open (tests/test0127.ctr: 19)
6 | ------------------------------------
7 | The probable cause of the exception:
8 | 17 |
9 | 18 |
10 | 19 | f open. #not good
11 | ~~~~~~~~~^
12 | 20 | q is f readBytes: 1. #but should not cause segfault
13 |
--------------------------------------------------------------------------------
/tests/test0257.exp:
--------------------------------------------------------------------------------
1 | hello1
2 | Uncaught error has occurred.
3 | a child process can not join.
4 | #3 join (tests/test0257.ctr: 4)
5 | #2 new: (tests/test0257.ctr: 2)
6 | #1 x (tests/test0257.ctr: 2)
7 | ------------------------------------
8 | The probable cause of the exception:
9 | 2 |
10 | 3 | Pen write: 'hello1\n'.
11 | 4 | child join.
12 | ~~~~~~~~~~~~~^
13 | 5 | Pen write: 'hello2\n'.
14 |
--------------------------------------------------------------------------------
/Library/Foreign/C/Storable/main.ctr:
--------------------------------------------------------------------------------
1 | import Library/Foreign/C/C_Types: ['c_uint8', 'c_ptr', 'load_library'].
2 |
3 | var thisexec is load_library applyTo: 'thisexec'.
4 |
5 | var cache is c_uint8.
6 |
7 | var readMem is \:p:sz p readBytes: sz. #Read sz bytes starting at p
8 | var writeMem is \:p:bytes bytes each_v: \:byte p derefSet: (cache set: byte). #Write all the bytes in @bytes into memory starting at p
9 |
--------------------------------------------------------------------------------
/autohell/scripts/Makefile.am:
--------------------------------------------------------------------------------
1 | extensiondir = $(datadir)/@PACKAGE@/extensions
2 | extension_DATA = *.ctr
3 | bin_SCRIPTS = citron
4 | install-data-local:
5 | rm -rf $(datadir)/@PACKAGE@/Library
6 | rm -rf $(datadir)/@PACKAGE@/mods
7 | rm -rf $(datadir)/@PACKAGE@/basemods
8 | cp -Lrf mods $(datadir)/@PACKAGE@/
9 | cp -Lrf Library $(datadir)/@PACKAGE@/
10 | cp -Lrf basemods $(datadir)/@PACKAGE@/
11 |
--------------------------------------------------------------------------------
/tests/test0020.ctr:
--------------------------------------------------------------------------------
1 | (Nil = Nil) ifTrue: { Pen write: 'Nil is Nil!'.}.
2 | (2 > 1) ifTrue: { Pen write: 'YES'. }.
3 | (2 > 3) ifTrue: { Pen write: 'NO'. }.
4 | (2 > 3) ifFalse: { Pen write: 'Nonono..'.}.
5 | True ifTrue: { Pen write: 'TRUE is TRUE!'. }.
6 | (True) ifTrue: { Pen write: 'TRUE is TRUE!'. }.
7 | False ifFalse: { Pen write: 'FALSE is FALSE!'. }.
8 | (False) ifFalse: { Pen write: 'FALSE is FALSE!'. }.
9 |
--------------------------------------------------------------------------------
/tests/test0036.ctr:
--------------------------------------------------------------------------------
1 | Broom autoAlloc: True.
2 |
3 | 1000 times: {
4 | var a is 'First'.
5 | var b is 'Second'.
6 | a is b.
7 | var garbageMaker is Object new.
8 | garbageMaker on: 'putGarbageOnScreen' do: {
9 | var x is 1.
10 | var y is 2.
11 | Broom sweep.
12 | }.
13 | garbageMaker putGarbageOnScreen.
14 | Pen write: a.
15 | #dont remove your own code block.
16 | Broom sweep.
17 | }.
18 |
--------------------------------------------------------------------------------
/tests/test0008.ctr:
--------------------------------------------------------------------------------
1 | Greeter is Object new.
2 | Greeter on: 'make' do: {
3 | var greeter is Object new.
4 | greeter on: 'name:' do: { :name
5 | Pen write: 'setting a name'.
6 | my myName is name.
7 | }.
8 | greeter on: 'greet' do: {
9 | Pen write: 'Hello'.
10 | Pen write: my myName.
11 | }.
12 | ^greeter.
13 | }.
14 | greeter is Greeter make.
15 | greeter name: 'sunshine!'.
16 | greeter greet.
17 |
--------------------------------------------------------------------------------
/tests/test0026.ctr:
--------------------------------------------------------------------------------
1 | Pen write: 'Hello' bytes.
2 | Pen write: 'Great' bytes + 5.
3 | Pen write: '象形' bytes - '象形' length.
4 | Pen write: ('Hello!' from: 1 to: 4).
5 | Pen write: ('Hello!' from: 2 to: 5).
6 | a is 2.
7 | b is 5.
8 | Pen write: ('Hello!' from: a to: b).
9 | Pen write: ('形声字形聲字' from: 2 to: 5).
10 | Pen write: '形声字形聲字' length.
11 | Pen write: '形声a' length.
12 | Pen write: 'Organ' + 'Works'.
13 |
--------------------------------------------------------------------------------
/tests/test0174.exp:
--------------------------------------------------------------------------------
1 | number of RGB codes in palette: 3
2 | RGB code of green is: #0F0
3 | All colors in palette: blue:#00Fgreen:#0F0red:#F00
4 | number of RGB codes in palette: 3
5 | RGB code of green is: #0F0
6 | All colors in palette: blue:#00Fgreen:#0F0red:#F00
7 | number of RGB codes in palette: 3
8 | RGB code of green is: #0F0
9 | All colors in palette: blue:#00Fgreen:#0F0red:#F00
10 | Leaking memory...
11 |
--------------------------------------------------------------------------------
/tests/test0186.exp:
--------------------------------------------------------------------------------
1 | False
2 | True
3 | False
4 | True
5 | False
6 | True
7 | False
8 | True
9 | False
10 | True
11 | False
12 | True
13 | False
14 | True
15 | False
16 | True
17 | False
18 | True
19 | False
20 | True
21 | False
22 | True
23 | False
24 | True
25 | False
26 | True
27 | False
28 | True
29 | False
30 | True
31 | False
32 | True
33 | False
34 | True
35 | False
36 | True
37 | Leaking memory...
38 |
--------------------------------------------------------------------------------
/Library/AST/main.ctr:
--------------------------------------------------------------------------------
1 | var PLAIN_TYPES is ['LTRSTRING', 'LTRNIL', 'LTRNUM', 'LTRBOOLTRUE', 'LTRBOOLFALSE', 'REFERENCE'].
2 |
3 | AST on: 'dump' do: {
4 | var dump is Array < [(me type), (me)].
5 | (me count = 0) & (const PLAIN_TYPES contains: me type) ifTrue: { ^[(me type), me]. }.
6 | me each_v: {:ast
7 | dump push: ast dump.
8 | }.
9 | ^dump.
10 | }.
11 |
12 | import constructors.#, descriptors.
13 |
--------------------------------------------------------------------------------
/examples/shared.ctr:
--------------------------------------------------------------------------------
1 | var ra is Reflect newSharedObject.
2 | var i is Reflect newSharedObject.
3 | Reflect link: i to: 1.
4 | Pen write: i, brk.
5 |
6 | ra on: 'test' do: {i +=: 1. Pen write: 'test' + i, brk.}.
7 |
8 | var c is Program new: {:c Pen write: 'in child: $$i', brk. ra test. Pen write: 'in child after test: $$i', brk.}.
9 |
10 | c join.
11 |
12 | Pen write: 'in parent: $$i', brk.
13 | Broom sweep.
14 |
--------------------------------------------------------------------------------
/plugins/tcl/makefile:
--------------------------------------------------------------------------------
1 | default: all
2 |
3 | all: compile copy
4 |
5 | compile:
6 | gcc ${EXTRAS} -I/software/tcl-7.4/include -I/software/tk-4.0/include -I/software/x11r5_dev/Include -L/software/tcl-7.4/lib -L/software/tk-4.0/lib -L/software/x11r5_dev/lib -ltk -ltcl -lX11 -lcitron -rdynamic -fpic -shared tcl.c -o libctrtcl.so
7 |
8 | copy:
9 | mkdir -p ../../mods/tcl
10 | cp -f libctrtcl.so ../../mods/tcl
11 |
--------------------------------------------------------------------------------
/tests/ptest/test.ctr:
--------------------------------------------------------------------------------
1 | var th is Thread new: {
2 | Pen writeln: '\nThread %s finished in %s ticks' % [(Thread name), (Clock timeExecutionOf: {
3 | 500 times: {:i
4 | Pen write: i + ', '.
5 | }.
6 | })].
7 | }.
8 | Pen writeln: 'Thread %s finished in %s ticks.' % [(Thread name), (Clock timeExecutionOf: {
9 | th run.
10 | Clock wait: 300000.
11 | th join.
12 | })].
13 |
--------------------------------------------------------------------------------
/tests/test0192.ctr:
--------------------------------------------------------------------------------
1 | #Like test 75 but with continous GC (mode 4) to test for GC regressions.
2 |
3 | Broom mode: 4.
4 |
5 | i is 0.
6 | Pen write: 'Can we count to 10 using a whileTrue loop ?', brk.
7 | { i +=: 1. ^ (i <=: 10). } whileTrue: { Pen write: i, brk. }.
8 | Pen write: 'Can we count back from 10 to 0 using a whileFalse loop ?', brk.
9 | { i -=: 1. ^ (i >=: 0). } whileTrue: { Pen write: i, brk. }.
10 |
--------------------------------------------------------------------------------
/Library/Functional/TypeClass/Category.ctr:
--------------------------------------------------------------------------------
1 | import Library/Control/Error/NotImplementedError.
2 | var Category is Object new.
3 | Category on: 'compose:' do: {
4 | thisBlock error: (NotImplementedError $ 'Category#compose:').
5 | },
6 | on: 'id' do: {
7 | thisBlock error: (NotImplementedError $ 'Category#id').
8 | },
9 | on: '<' do: {:o
10 | ^me compose: o.
11 | }.
12 |
13 | import export: Category as: 'Category'.
14 |
--------------------------------------------------------------------------------
/autohell/examples/shared.ctr:
--------------------------------------------------------------------------------
1 | var ra is Reflect newSharedObject.
2 | var i is Reflect newSharedObject.
3 | Reflect link: i to: 1.
4 | Pen write: i, brk.
5 |
6 | ra on: 'test' do: {i +=: 1. Pen write: 'test' + i, brk.}.
7 |
8 | var c is Program new: {:c Pen write: 'in child: $$i', brk. ra test. Pen write: 'in child after test: $$i', brk.}.
9 |
10 | c join.
11 |
12 | Pen write: 'in parent: $$i', brk.
13 | Broom sweep.
14 |
--------------------------------------------------------------------------------
/tests/test0041.exp:
--------------------------------------------------------------------------------
1 | Uncaught error has occurred.
2 | Unknown method Object::'nonexistantmessage' was called
3 | #1 nonexistantmessage (tests/test0041.ctr: 2)
4 | ------------------------------------
5 | The probable cause of the exception:
6 | 1 | #a non existing message should not trigger an error or produce any output.
7 | 2 | Pen nonexistantmessage.
8 | ~~~~~~~~~~~~~~~~~~~~~~~~^
9 | 3 | Pen nonexistantmessage: 'b'.
10 |
--------------------------------------------------------------------------------
/tests/test0044.ctr:
--------------------------------------------------------------------------------
1 | list is Array new.
2 | list push: 'hello'.
3 | Pen write: list count.
4 | list push: 'world'.
5 | Pen write: list count.
6 | Pen write: list pop, write: list count.
7 | list push: 'there'.
8 | Pen write: list count.
9 | Pen write: (list at: 0), write: (list at: 1).
10 | list put: 'xmas' at: 1.
11 | list put: 'merry' at: 0.
12 | Pen write: list count.
13 | Pen write: (list at: 0), write: (list at: 1).
14 |
--------------------------------------------------------------------------------
/tests/test0108.ctr:
--------------------------------------------------------------------------------
1 | #Test odd an even messages.
2 | (7 odd) ifTrue: { Pen write: '7 is an ODD NUMBER', brk. }, else: { Pen write: 'WRONG!'. }.
3 | (4 even) ifTrue: { Pen write: '4 is an EVEN NUMBER', brk. }, else: { Pen write: 'WRONG!'. }.
4 | (5 even) ifTrue: { Pen write: 'WRONG!'. }, else: { Pen write: '5 is NOT AN EVEN NUMBER', brk. }.
5 | (6 odd) ifTrue: { Pen write: 'WRONG!'. }, else: { Pen write: '6 is NOT AN ODD NUMBER', brk. }.
6 |
--------------------------------------------------------------------------------
/tests/test0232.exp:
--------------------------------------------------------------------------------
1 | + 3
2 | echo Hello world
3 | Uncaught error has occurred.
4 | Unknown method Object::'tellme:and:' was called
5 | #1 tellme:and: (tests/test0232.ctr: 7)
6 | ------------------------------------
7 | The probable cause of the exception:
8 | 5 |
9 | 6 | Pen write: (x obtain), brk.
10 | 7 | x tellme: 123 and: 987. #This should fail...maybe change that?
11 | ~~~~~~~~~~^
12 | 8 | Pen write: (x obtain), brk.
13 |
--------------------------------------------------------------------------------
/tests/test0248.exp:
--------------------------------------------------------------------------------
1 | String
2 | Array ← ((Map new) put:(Array ← ((Map new) put:'2017-01-01' at:'created', put:'' at:'body', put:'home' at:'title') ; ((Map new) put:'