Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Dashrep is a versatile descriptive programming language based on hyphenated phrases being successively expanded into replacement text. It is a much more flexible alternative to using a template language. http://www.dashrep.org
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Language::Dashrep Dashrep is a programming language that is simple, powerful, and fast. See www.Dashrep.org for details. The Dashrep compiler is written in the Dashrep language. The current implementation of the Dashrep compiler generates Perl code that is directly executable as Perl code. In the future the runtime code will be changed to a combination of (mostly) C and (some) C++ code that is compiled by the Clang compiler. Version 3.03 RUNNING These instructions explain how to run the Dashrep compiler, and the compiled program, in the Windows environment. (Note: Running in the Linux environment is simpler, and does not require setting the "PerlPath".) In the Windows batch script, use this command to prepare to use the Perl "interpreter." Replace the "whatever" string as needed. set PerlPath=C:\whatever\ Optionally, verify that the needed files are available. dir %PerlPath%perl.exe dir %PerlPath%perl512.dll dir dashrep_compiler_executable.pl dir dashrep_test_code_joined_dashdefs.txt Use this command to compile the Dashrep code that tests the compiler. %PerlPath%perl -w dashrep_compiler_executable.pl < dashrep_test_code_joined_dashdefs.txt > output_log_from_dashrep_compiler.txt del executable_test_dashrep_compiler.pl rename output_from_dashrep_compiler.pl executable_test_dashrep_compiler.pl Run the compiled program, which generates an HTML file that shows the test results. %PerlPath%perl -w executable_test_dashrep_compiler.pl > output_results_from_dashrep_test.html Important: Some tests that expect the specific environments listed below may fail, even though the compiler is working correctly. * specific test folder names * specific test file contents * specific "cgi" values * specific webpage retrieved using "curl" utility HOW TO COMPILE THE COMPILER Note that the file "dashrep_compiler_source_code.txt" is not the original source code, rather it is a copy of the actual source code. The actual source code is in the many separate files within the "compiler_source" folder. (In a similar way, the source code for the test code is in the many files within the "test_dashrep_code" folder.) The utility "combine_listed_dashdefs.pl" combines separate source-code files into a single file that can be supplied to the compiler. To update the compiler, use the current compiler to generate a new compiler, and then use that new compiler to generate yet another new compiler. The second new compiler is a candidate for becoming the newest compiler. However, to test the newest compiler, it must be used to generate yet another version that should exactly match itself (the "newest" compiler). If an update passes this test and passes the usual compiler test (above), and passes other tests that are specific for the target application, then probably it can replace the "dashrep_compiler_executable.pl" file. If edits to the compiler code are done within some parts of the compiler source code, it might be necessary to manually edit the "first new" compiler before using it to generate the "newest" compiler. Yes, this is confusing. If you aren't sure what to do, please do not attempt to change the Dashrep compiler source code. SUPPORT AND DOCUMENTATION You can find documentation for the Dashrep language at: www.dashrep.org COPYRIGHT AND LICENCE Copyright (c) 2009-2018 Richard Fobes at www.Dashrep.org, all rights reserved. You can redistribute and/or modify the Dashrep-language code under the Perl Artistic License 2.0, a copy of which is included in the LICENSE file. Conversions of this code into other languages are also covered by the above license terms. The Dashrep (TM) name is trademarked by Richard Fobes at www.Dashrep.org to prevent the name from being co-opted. The Dashrep (TM) language is in the public domain.