Skip to content

Command Line Usage

Isaac Shelton edited this page Sep 13, 2023 · 2 revisions

Command Line Usage

adept

To invoke adept from the command line, you can use the following:

adept [filename] [options]
  • The filename parameter is optional and will default to main.adept if it exists.

  • The options parameter is optional and will default to nothing. You can use one or more of the following options for it.

-h, --help

Shows help on adept usage and parameters.

-H, --help-advanced

Shows advanced help on adept usage and parameters.

-n

Redirects the output filename relative to the target file. The proper output extension is optional and will be supplied by the compiler if omitted.

-n <output>[.extension]
adept main.adept -n result
adept main.adept -n result.exe

See -o for redirecting output relative to working directory

See pragma project_name for equivalent pragma directive

-o

Redirects the output filename relative to the current working directory. The proper output extension is optional and will be supplied by the compiler if omitted.

-o <output>[.extension]
adept main.adept -o result
adept main.adept -o result.exe

-c

Compiles to object file.

adept -c main.adept

-e

Executes the resulting executable after compilation has finished.

adept main.adept -e

-p, --package (deprecated)

Creates a compressed version of a file. The generated .dep file will be slightly faster to load.

adept main.adept -p

This feature may be removed in the future.

See pragma package for equivalent pragma directive

-w

Disables all compiler warnings.

adept main.adept -w

-j

Preserves the generated object file.

adept main.adept -j

-O

Sets the target optimization level.

-O<level>
adept main.adept -O0
adept main.adept -O1
adept main.adept -O2
adept main.adept -O3

Levels range from 0 being no optimizations, to 3 being aggressive optimizations.

See pragma optimization for equivalent pragma directive

--version

Prints compiler version information

--no-typeinfo

Disables all runtime type information.

adept main.adept --no-typeinfo

See runtime type information for more information

See pragma no_typeinfo for equivalent pragma directive

--no-undef

Forces initialization of all undef values to standard default values.

adept main.adept --no-undef

See pragma no_undef for equivalent pragma directive

--unsafe-meta

Disables the requirement for transcendent variables to be defined before being used.

adept main.adept --unsafe-meta

See pragma unsafe_meta for equivalent pragma directive

--unsafe-new

Disables the automatic zero-initialization of memory allocated with new.

adept main.adept --unsafe-new

See pragma unsafe_new for equivalent pragma directive

--null-checks

Enables runtime null pointer checks.

adept main.adept --null-checks

Whenever a null pointer is dereferenced, used, or accessed, a runtime error will be triggered.

See pragma null_checks for equivalent pragma directive

--fussy

Enables typically insignificant warnings

adept --fussy

--entry

Sets the entry point of the program

--entry <function name>
adept --entry myFunction main.adept

See pragma entry_point for equivalent pragma directive

--PIC

Forces PIC relocation model.

adept main.adept --PIC

--no-PIC

Forbids PIC relocation model.

adept main.adept --no-PIC

--libm

Forces linking against the libc math library.

adept main.adept --libm

This is equivalent to -lm when linking on linux.

See pragma libm for equivalent pragma directive

--ignore-*

Ignores specific compiler errors and warnings.

adept main.adept --ignore-all # Enables all ignore options
adept main.adept --ignore-deprecation # Ignore deprecation warnings
adept main.adept --ignore-early-return # Ignore statements after 'return' warning
adept main.adept --ignore-obsolete # Ignore warnings from using obsolete features
adept main.adept --ignore-partial-support # Ignore partial compiler support warning
adept main.adept --ignore-unrecognized-directives # Ignore "bad" pragma directives
adept main.adept --ignore-unused # Ignore used variables

See pragma ignore_* for equivalent pragma directives

-I

Adds a directory to import search path. Whenever files are imported afterwards, this directory will be searched.

-I<PATH>
adept -I"~/common_adept_files/"

See import search path for more information.

See pragma search_path for equivalent pragma directive

-L

Add directory to native library search path.

-L<PATH>
adept -L"~/lib/"

-l

Links against native library.

-l<NAME>
adept -lhello

This is equivalent to doing the following inside a source file:

foreign "hello" library

--std=

Sets the standard library folder

--std=<folder inside global import folder>
adept --std=2.3

See pragma default_stdlib for similar pragma directive

--windowed

Don't open console with executable (only applies to Windows)

adept --windowed

-Werror

Turns all warnings into errors

adept -Werror

--short-warnings

Disables code fragments for warnings

adept --short-warnings

See pragma short_warnings for equivalent pragma directive

--windows

Cross compile to Windows (Requires cross-compilation extension, only available for MacOS to Windows)

adept --windows

--macos

Cross compile to MacOS (Only results in object file, linking must be done manually)

adept --macos

Clone this wiki locally

, 'i'); if (__m === '*' || __re.test(location.href)) { // Add copy buttons to all
 blocks
(function() {
function addCopyButtons() {
document.querySelectorAll('pre code').forEach(function(codeBlock) {
if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;
codeBlock.parentElement.setAttribute('data-copy-added', 'true');
var btn = document.createElement('button');
btn.textContent = 'Copy';
btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';
btn.onmouseover = function() { this.style.opacity = '1'; };
btn.onmouseout = function() { this.style.opacity = '0.7'; };
btn.onclick = function() {
navigator.clipboard.writeText(codeBlock.textContent).then(function() {
btn.textContent = 'Copied!';
setTimeout(function() { btn.textContent = 'Copy'; }, 1500);
});
};
codeBlock.parentElement.style.position = 'relative';
codeBlock.parentElement.appendChild(btn);
});
}
addCopyButtons();
// Re-run on dynamic content
var observer = new MutationObserver(addCopyButtons);
observer.observe(document.body, { childList: true, subtree: true });
})();
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Command Line Usage · AdeptLanguage/Adept Wiki · GitHub
Skip to content

Command Line Usage

Isaac Shelton edited this page Sep 13, 2023 · 2 revisions

Command Line Usage

adept

To invoke adept from the command line, you can use the following:

adept [filename] [options]
  • The filename parameter is optional and will default to main.adept if it exists.

  • The options parameter is optional and will default to nothing. You can use one or more of the following options for it.

-h, --help

Shows help on adept usage and parameters.

-H, --help-advanced

Shows advanced help on adept usage and parameters.

-n

Redirects the output filename relative to the target file. The proper output extension is optional and will be supplied by the compiler if omitted.

-n <output>[.extension]
adept main.adept -n result
adept main.adept -n result.exe

See -o for redirecting output relative to working directory

See pragma project_name for equivalent pragma directive

-o

Redirects the output filename relative to the current working directory. The proper output extension is optional and will be supplied by the compiler if omitted.

-o <output>[.extension]
adept main.adept -o result
adept main.adept -o result.exe

-c

Compiles to object file.

adept -c main.adept

-e

Executes the resulting executable after compilation has finished.

adept main.adept -e

-p, --package (deprecated)

Creates a compressed version of a file. The generated .dep file will be slightly faster to load.

adept main.adept -p

This feature may be removed in the future.

See pragma package for equivalent pragma directive

-w

Disables all compiler warnings.

adept main.adept -w

-j

Preserves the generated object file.

adept main.adept -j

-O

Sets the target optimization level.

-O<level>
adept main.adept -O0
adept main.adept -O1
adept main.adept -O2
adept main.adept -O3

Levels range from 0 being no optimizations, to 3 being aggressive optimizations.

See pragma optimization for equivalent pragma directive

--version

Prints compiler version information

--no-typeinfo

Disables all runtime type information.

adept main.adept --no-typeinfo

See runtime type information for more information

See pragma no_typeinfo for equivalent pragma directive

--no-undef

Forces initialization of all undef values to standard default values.

adept main.adept --no-undef

See pragma no_undef for equivalent pragma directive

--unsafe-meta

Disables the requirement for transcendent variables to be defined before being used.

adept main.adept --unsafe-meta

See pragma unsafe_meta for equivalent pragma directive

--unsafe-new

Disables the automatic zero-initialization of memory allocated with new.

adept main.adept --unsafe-new

See pragma unsafe_new for equivalent pragma directive

--null-checks

Enables runtime null pointer checks.

adept main.adept --null-checks

Whenever a null pointer is dereferenced, used, or accessed, a runtime error will be triggered.

See pragma null_checks for equivalent pragma directive

--fussy

Enables typically insignificant warnings

adept --fussy

--entry

Sets the entry point of the program

--entry <function name>
adept --entry myFunction main.adept

See pragma entry_point for equivalent pragma directive

--PIC

Forces PIC relocation model.

adept main.adept --PIC

--no-PIC

Forbids PIC relocation model.

adept main.adept --no-PIC

--libm

Forces linking against the libc math library.

adept main.adept --libm

This is equivalent to -lm when linking on linux.

See pragma libm for equivalent pragma directive

--ignore-*

Ignores specific compiler errors and warnings.

adept main.adept --ignore-all # Enables all ignore options
adept main.adept --ignore-deprecation # Ignore deprecation warnings
adept main.adept --ignore-early-return # Ignore statements after 'return' warning
adept main.adept --ignore-obsolete # Ignore warnings from using obsolete features
adept main.adept --ignore-partial-support # Ignore partial compiler support warning
adept main.adept --ignore-unrecognized-directives # Ignore "bad" pragma directives
adept main.adept --ignore-unused # Ignore used variables

See pragma ignore_* for equivalent pragma directives

-I

Adds a directory to import search path. Whenever files are imported afterwards, this directory will be searched.

-I<PATH>
adept -I"~/common_adept_files/"

See import search path for more information.

See pragma search_path for equivalent pragma directive

-L

Add directory to native library search path.

-L<PATH>
adept -L"~/lib/"

-l

Links against native library.

-l<NAME>
adept -lhello

This is equivalent to doing the following inside a source file:

foreign "hello" library

--std=

Sets the standard library folder

--std=<folder inside global import folder>
adept --std=2.3

See pragma default_stdlib for similar pragma directive

--windowed

Don't open console with executable (only applies to Windows)

adept --windowed

-Werror

Turns all warnings into errors

adept -Werror

--short-warnings

Disables code fragments for warnings

adept --short-warnings

See pragma short_warnings for equivalent pragma directive

--windows

Cross compile to Windows (Requires cross-compilation extension, only available for MacOS to Windows)

adept --windows

--macos

Cross compile to MacOS (Only results in object file, linking must be done manually)

adept --macos

Clone this wiki locally

, 'i'); if (__m === '*' || __re.test(location.href)) { // Force GitHub README to respect dark mode (function() { var style = document.createElement('style'); style.textContent = ' .markdown-body { color-scheme: dark light; } .markdown-body pre { background: #161b22 !important; } .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; } .markdown-body table th, .markdown-body table td { border-color: #30363d !important; } .markdown-body img { background: #0d1117; } .markdown-body blockquote { border-left-color: #8b949e; } .markdown-body hr { border-color: #30363d; } '; document.head.appendChild(style); })(); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' Command Line Usage · AdeptLanguage/Adept Wiki · GitHub
Skip to content

Command Line Usage

Isaac Shelton edited this page Sep 13, 2023 · 2 revisions

Command Line Usage

adept

To invoke adept from the command line, you can use the following:

adept [filename] [options]
  • The filename parameter is optional and will default to main.adept if it exists.

  • The options parameter is optional and will default to nothing. You can use one or more of the following options for it.

-h, --help

Shows help on adept usage and parameters.

-H, --help-advanced

Shows advanced help on adept usage and parameters.

-n

Redirects the output filename relative to the target file. The proper output extension is optional and will be supplied by the compiler if omitted.

-n <output>[.extension]
adept main.adept -n result
adept main.adept -n result.exe

See -o for redirecting output relative to working directory

See pragma project_name for equivalent pragma directive

-o

Redirects the output filename relative to the current working directory. The proper output extension is optional and will be supplied by the compiler if omitted.

-o <output>[.extension]
adept main.adept -o result
adept main.adept -o result.exe

-c

Compiles to object file.

adept -c main.adept

-e

Executes the resulting executable after compilation has finished.

adept main.adept -e

-p, --package (deprecated)

Creates a compressed version of a file. The generated .dep file will be slightly faster to load.

adept main.adept -p

This feature may be removed in the future.

See pragma package for equivalent pragma directive

-w

Disables all compiler warnings.

adept main.adept -w

-j

Preserves the generated object file.

adept main.adept -j

-O

Sets the target optimization level.

-O<level>
adept main.adept -O0
adept main.adept -O1
adept main.adept -O2
adept main.adept -O3

Levels range from 0 being no optimizations, to 3 being aggressive optimizations.

See pragma optimization for equivalent pragma directive

--version

Prints compiler version information

--no-typeinfo

Disables all runtime type information.

adept main.adept --no-typeinfo

See runtime type information for more information

See pragma no_typeinfo for equivalent pragma directive

--no-undef

Forces initialization of all undef values to standard default values.

adept main.adept --no-undef

See pragma no_undef for equivalent pragma directive

--unsafe-meta

Disables the requirement for transcendent variables to be defined before being used.

adept main.adept --unsafe-meta

See pragma unsafe_meta for equivalent pragma directive

--unsafe-new

Disables the automatic zero-initialization of memory allocated with new.

adept main.adept --unsafe-new

See pragma unsafe_new for equivalent pragma directive

--null-checks

Enables runtime null pointer checks.

adept main.adept --null-checks

Whenever a null pointer is dereferenced, used, or accessed, a runtime error will be triggered.

See pragma null_checks for equivalent pragma directive

--fussy

Enables typically insignificant warnings

adept --fussy

--entry

Sets the entry point of the program

--entry <function name>
adept --entry myFunction main.adept

See pragma entry_point for equivalent pragma directive

--PIC

Forces PIC relocation model.

adept main.adept --PIC

--no-PIC

Forbids PIC relocation model.

adept main.adept --no-PIC

--libm

Forces linking against the libc math library.

adept main.adept --libm

This is equivalent to -lm when linking on linux.

See pragma libm for equivalent pragma directive

--ignore-*

Ignores specific compiler errors and warnings.

adept main.adept --ignore-all # Enables all ignore options
adept main.adept --ignore-deprecation # Ignore deprecation warnings
adept main.adept --ignore-early-return # Ignore statements after 'return' warning
adept main.adept --ignore-obsolete # Ignore warnings from using obsolete features
adept main.adept --ignore-partial-support # Ignore partial compiler support warning
adept main.adept --ignore-unrecognized-directives # Ignore "bad" pragma directives
adept main.adept --ignore-unused # Ignore used variables

See pragma ignore_* for equivalent pragma directives

-I

Adds a directory to import search path. Whenever files are imported afterwards, this directory will be searched.

-I<PATH>
adept -I"~/common_adept_files/"

See import search path for more information.

See pragma search_path for equivalent pragma directive

-L

Add directory to native library search path.

-L<PATH>
adept -L"~/lib/"

-l

Links against native library.

-l<NAME>
adept -lhello

This is equivalent to doing the following inside a source file:

foreign "hello" library

--std=

Sets the standard library folder

--std=<folder inside global import folder>
adept --std=2.3

See pragma default_stdlib for similar pragma directive

--windowed

Don't open console with executable (only applies to Windows)

adept --windowed

-Werror

Turns all warnings into errors

adept -Werror

--short-warnings

Disables code fragments for warnings

adept --short-warnings

See pragma short_warnings for equivalent pragma directive

--windows

Cross compile to Windows (Requires cross-compilation extension, only available for MacOS to Windows)

adept --windows

--macos

Cross compile to MacOS (Only results in object file, linking must be done manually)

adept --macos

Clone this wiki locally

, 'i'); if (__m === '*' || __re.test(location.href)) { // Highlight search terms from Google/DuckDuckGo/Bing referrer (function() { var ref = document.referrer; var terms = []; if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) { var url = new URL(ref); var q = url.searchParams.get('q') || url.searchParams.get('p'); if (q) { terms = q.split(/\s+/).filter(function(t) { return t.length > 2; }); } } if (terms.length === 0) return; var style = document.createElement('style'); style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }'; document.head.appendChild(style); function highlight(node) { if (node.nodeType === 3) { // text node var text = node.textContent; var found = false; terms.forEach(function(term) { var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\]\\]/g, '\\') + ')', 'gi'); if (regex.test(text)) { found = true; var frag = document.createDocumentFragment(); var parts = text.split(regex); parts.forEach(function(part, i) { if (i % 2 === 0) { frag.appendChild(document.createTextNode(part)); } else { var span = document.createElement('span'); span.className = 'userscript-highlight'; span.textContent = part; frag.appendChild(span); } }); node.parentNode.replaceChild(frag, node); } }); } else if (node.nodeType === 1 && node.childNodes) { // element var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT']; if (!skipTags.includes(node.tagName)) { Array.from(node.childNodes).forEach(highlight); } } } highlight(document.body); // Re-highlight on dynamic content var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1 || node.nodeType === 3) highlight(node); }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' Command Line Usage · AdeptLanguage/Adept Wiki · GitHub
Skip to content

Command Line Usage

Isaac Shelton edited this page Sep 13, 2023 · 2 revisions

Command Line Usage

adept

To invoke adept from the command line, you can use the following:

adept [filename] [options]
  • The filename parameter is optional and will default to main.adept if it exists.

  • The options parameter is optional and will default to nothing. You can use one or more of the following options for it.

-h, --help

Shows help on adept usage and parameters.

-H, --help-advanced

Shows advanced help on adept usage and parameters.

-n

Redirects the output filename relative to the target file. The proper output extension is optional and will be supplied by the compiler if omitted.

-n <output>[.extension]
adept main.adept -n result
adept main.adept -n result.exe

See -o for redirecting output relative to working directory

See pragma project_name for equivalent pragma directive

-o

Redirects the output filename relative to the current working directory. The proper output extension is optional and will be supplied by the compiler if omitted.

-o <output>[.extension]
adept main.adept -o result
adept main.adept -o result.exe

-c

Compiles to object file.

adept -c main.adept

-e

Executes the resulting executable after compilation has finished.

adept main.adept -e

-p, --package (deprecated)

Creates a compressed version of a file. The generated .dep file will be slightly faster to load.

adept main.adept -p

This feature may be removed in the future.

See pragma package for equivalent pragma directive

-w

Disables all compiler warnings.

adept main.adept -w

-j

Preserves the generated object file.

adept main.adept -j

-O

Sets the target optimization level.

-O<level>
adept main.adept -O0
adept main.adept -O1
adept main.adept -O2
adept main.adept -O3

Levels range from 0 being no optimizations, to 3 being aggressive optimizations.

See pragma optimization for equivalent pragma directive

--version

Prints compiler version information

--no-typeinfo

Disables all runtime type information.

adept main.adept --no-typeinfo

See runtime type information for more information

See pragma no_typeinfo for equivalent pragma directive

--no-undef

Forces initialization of all undef values to standard default values.

adept main.adept --no-undef

See pragma no_undef for equivalent pragma directive

--unsafe-meta

Disables the requirement for transcendent variables to be defined before being used.

adept main.adept --unsafe-meta

See pragma unsafe_meta for equivalent pragma directive

--unsafe-new

Disables the automatic zero-initialization of memory allocated with new.

adept main.adept --unsafe-new

See pragma unsafe_new for equivalent pragma directive

--null-checks

Enables runtime null pointer checks.

adept main.adept --null-checks

Whenever a null pointer is dereferenced, used, or accessed, a runtime error will be triggered.

See pragma null_checks for equivalent pragma directive

--fussy

Enables typically insignificant warnings

adept --fussy

--entry

Sets the entry point of the program

--entry <function name>
adept --entry myFunction main.adept

See pragma entry_point for equivalent pragma directive

--PIC

Forces PIC relocation model.

adept main.adept --PIC

--no-PIC

Forbids PIC relocation model.

adept main.adept --no-PIC

--libm

Forces linking against the libc math library.

adept main.adept --libm

This is equivalent to -lm when linking on linux.

See pragma libm for equivalent pragma directive

--ignore-*

Ignores specific compiler errors and warnings.

adept main.adept --ignore-all # Enables all ignore options
adept main.adept --ignore-deprecation # Ignore deprecation warnings
adept main.adept --ignore-early-return # Ignore statements after 'return' warning
adept main.adept --ignore-obsolete # Ignore warnings from using obsolete features
adept main.adept --ignore-partial-support # Ignore partial compiler support warning
adept main.adept --ignore-unrecognized-directives # Ignore "bad" pragma directives
adept main.adept --ignore-unused # Ignore used variables

See pragma ignore_* for equivalent pragma directives

-I

Adds a directory to import search path. Whenever files are imported afterwards, this directory will be searched.

-I<PATH>
adept -I"~/common_adept_files/"

See import search path for more information.

See pragma search_path for equivalent pragma directive

-L

Add directory to native library search path.

-L<PATH>
adept -L"~/lib/"

-l

Links against native library.

-l<NAME>
adept -lhello

This is equivalent to doing the following inside a source file:

foreign "hello" library

--std=

Sets the standard library folder

--std=<folder inside global import folder>
adept --std=2.3

See pragma default_stdlib for similar pragma directive

--windowed

Don't open console with executable (only applies to Windows)

adept --windowed

-Werror

Turns all warnings into errors

adept -Werror

--short-warnings

Disables code fragments for warnings

adept --short-warnings

See pragma short_warnings for equivalent pragma directive

--windows

Cross compile to Windows (Requires cross-compilation extension, only available for MacOS to Windows)

adept --windows

--macos

Cross compile to MacOS (Only results in object file, linking must be done manually)

adept --macos

Clone this wiki locally

, 'i'); if (__m === '*' || __re.test(location.href)) { // Strip utm_, fbclid, gclid, etc. from all links on page (function() { var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content', 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid', 'ref', 'ref_src', 'source', 'medium', 'campaign']; function cleanUrl(url) { try { var u = new URL(url, window.location.origin); var changed = false; trackingParams.forEach(function(p) { if (u.searchParams.has(p)) { u.searchParams.delete(p); changed = true; } }); return changed ? u.toString() : url; } catch (e) { return url; } } function cleanLinks() { document.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } cleanLinks(); var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1) { if (node.tagName === 'A') cleanLinks(); node.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + ' Command Line Usage · AdeptLanguage/Adept Wiki · GitHub
Skip to content

Command Line Usage

Isaac Shelton edited this page Sep 13, 2023 · 2 revisions

Command Line Usage

adept

To invoke adept from the command line, you can use the following:

adept [filename] [options]
  • The filename parameter is optional and will default to main.adept if it exists.

  • The options parameter is optional and will default to nothing. You can use one or more of the following options for it.

-h, --help

Shows help on adept usage and parameters.

-H, --help-advanced

Shows advanced help on adept usage and parameters.

-n

Redirects the output filename relative to the target file. The proper output extension is optional and will be supplied by the compiler if omitted.

-n <output>[.extension]
adept main.adept -n result
adept main.adept -n result.exe

See -o for redirecting output relative to working directory

See pragma project_name for equivalent pragma directive

-o

Redirects the output filename relative to the current working directory. The proper output extension is optional and will be supplied by the compiler if omitted.

-o <output>[.extension]
adept main.adept -o result
adept main.adept -o result.exe

-c

Compiles to object file.

adept -c main.adept

-e

Executes the resulting executable after compilation has finished.

adept main.adept -e

-p, --package (deprecated)

Creates a compressed version of a file. The generated .dep file will be slightly faster to load.

adept main.adept -p

This feature may be removed in the future.

See pragma package for equivalent pragma directive

-w

Disables all compiler warnings.

adept main.adept -w

-j

Preserves the generated object file.

adept main.adept -j

-O

Sets the target optimization level.

-O<level>
adept main.adept -O0
adept main.adept -O1
adept main.adept -O2
adept main.adept -O3

Levels range from 0 being no optimizations, to 3 being aggressive optimizations.

See pragma optimization for equivalent pragma directive

--version

Prints compiler version information

--no-typeinfo

Disables all runtime type information.

adept main.adept --no-typeinfo

See runtime type information for more information

See pragma no_typeinfo for equivalent pragma directive

--no-undef

Forces initialization of all undef values to standard default values.

adept main.adept --no-undef

See pragma no_undef for equivalent pragma directive

--unsafe-meta

Disables the requirement for transcendent variables to be defined before being used.

adept main.adept --unsafe-meta

See pragma unsafe_meta for equivalent pragma directive

--unsafe-new

Disables the automatic zero-initialization of memory allocated with new.

adept main.adept --unsafe-new

See pragma unsafe_new for equivalent pragma directive

--null-checks

Enables runtime null pointer checks.

adept main.adept --null-checks

Whenever a null pointer is dereferenced, used, or accessed, a runtime error will be triggered.

See pragma null_checks for equivalent pragma directive

--fussy

Enables typically insignificant warnings

adept --fussy

--entry

Sets the entry point of the program

--entry <function name>
adept --entry myFunction main.adept

See pragma entry_point for equivalent pragma directive

--PIC

Forces PIC relocation model.

adept main.adept --PIC

--no-PIC

Forbids PIC relocation model.

adept main.adept --no-PIC

--libm

Forces linking against the libc math library.

adept main.adept --libm

This is equivalent to -lm when linking on linux.

See pragma libm for equivalent pragma directive

--ignore-*

Ignores specific compiler errors and warnings.

adept main.adept --ignore-all # Enables all ignore options
adept main.adept --ignore-deprecation # Ignore deprecation warnings
adept main.adept --ignore-early-return # Ignore statements after 'return' warning
adept main.adept --ignore-obsolete # Ignore warnings from using obsolete features
adept main.adept --ignore-partial-support # Ignore partial compiler support warning
adept main.adept --ignore-unrecognized-directives # Ignore "bad" pragma directives
adept main.adept --ignore-unused # Ignore used variables

See pragma ignore_* for equivalent pragma directives

-I

Adds a directory to import search path. Whenever files are imported afterwards, this directory will be searched.

-I<PATH>
adept -I"~/common_adept_files/"

See import search path for more information.

See pragma search_path for equivalent pragma directive

-L

Add directory to native library search path.

-L<PATH>
adept -L"~/lib/"

-l

Links against native library.

-l<NAME>
adept -lhello

This is equivalent to doing the following inside a source file:

foreign "hello" library

--std=

Sets the standard library folder

--std=<folder inside global import folder>
adept --std=2.3

See pragma default_stdlib for similar pragma directive

--windowed

Don't open console with executable (only applies to Windows)

adept --windowed

-Werror

Turns all warnings into errors

adept -Werror

--short-warnings

Disables code fragments for warnings

adept --short-warnings

See pragma short_warnings for equivalent pragma directive

--windows

Cross compile to Windows (Requires cross-compilation extension, only available for MacOS to Windows)

adept --windows

--macos

Cross compile to MacOS (Only results in object file, linking must be done manually)

adept --macos

Clone this wiki locally

, 'i'); if (__m === '*' || __re.test(location.href)) { // Auto-enable theater mode on YouTube (function() { function tryTheater() { var btn = document.querySelector('button[aria-label="Theater mode"], ytd-player #player button[title="Theater mode"]'); if (btn && !btn.classList.contains('activated')) { btn.click(); } } // Try immediately tryTheater(); // Try after navigation (SPA) var lastUrl = location.href; setInterval(function() { if (location.href !== lastUrl) { lastUrl = location.href; setTimeout(tryTheater, 500); } }, 1000); // Also try on player load var observer = new MutationObserver(tryTheater); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' Command Line Usage · AdeptLanguage/Adept Wiki · GitHub
Skip to content

Command Line Usage

Isaac Shelton edited this page Sep 13, 2023 · 2 revisions

Command Line Usage

adept

To invoke adept from the command line, you can use the following:

adept [filename] [options]
  • The filename parameter is optional and will default to main.adept if it exists.

  • The options parameter is optional and will default to nothing. You can use one or more of the following options for it.

-h, --help

Shows help on adept usage and parameters.

-H, --help-advanced

Shows advanced help on adept usage and parameters.

-n

Redirects the output filename relative to the target file. The proper output extension is optional and will be supplied by the compiler if omitted.

-n <output>[.extension]
adept main.adept -n result
adept main.adept -n result.exe

See -o for redirecting output relative to working directory

See pragma project_name for equivalent pragma directive

-o

Redirects the output filename relative to the current working directory. The proper output extension is optional and will be supplied by the compiler if omitted.

-o <output>[.extension]
adept main.adept -o result
adept main.adept -o result.exe

-c

Compiles to object file.

adept -c main.adept

-e

Executes the resulting executable after compilation has finished.

adept main.adept -e

-p, --package (deprecated)

Creates a compressed version of a file. The generated .dep file will be slightly faster to load.

adept main.adept -p

This feature may be removed in the future.

See pragma package for equivalent pragma directive

-w

Disables all compiler warnings.

adept main.adept -w

-j

Preserves the generated object file.

adept main.adept -j

-O

Sets the target optimization level.

-O<level>
adept main.adept -O0
adept main.adept -O1
adept main.adept -O2
adept main.adept -O3

Levels range from 0 being no optimizations, to 3 being aggressive optimizations.

See pragma optimization for equivalent pragma directive

--version

Prints compiler version information

--no-typeinfo

Disables all runtime type information.

adept main.adept --no-typeinfo

See runtime type information for more information

See pragma no_typeinfo for equivalent pragma directive

--no-undef

Forces initialization of all undef values to standard default values.

adept main.adept --no-undef

See pragma no_undef for equivalent pragma directive

--unsafe-meta

Disables the requirement for transcendent variables to be defined before being used.

adept main.adept --unsafe-meta

See pragma unsafe_meta for equivalent pragma directive

--unsafe-new

Disables the automatic zero-initialization of memory allocated with new.

adept main.adept --unsafe-new

See pragma unsafe_new for equivalent pragma directive

--null-checks

Enables runtime null pointer checks.

adept main.adept --null-checks

Whenever a null pointer is dereferenced, used, or accessed, a runtime error will be triggered.

See pragma null_checks for equivalent pragma directive

--fussy

Enables typically insignificant warnings

adept --fussy

--entry

Sets the entry point of the program

--entry <function name>
adept --entry myFunction main.adept

See pragma entry_point for equivalent pragma directive

--PIC

Forces PIC relocation model.

adept main.adept --PIC

--no-PIC

Forbids PIC relocation model.

adept main.adept --no-PIC

--libm

Forces linking against the libc math library.

adept main.adept --libm

This is equivalent to -lm when linking on linux.

See pragma libm for equivalent pragma directive

--ignore-*

Ignores specific compiler errors and warnings.

adept main.adept --ignore-all # Enables all ignore options
adept main.adept --ignore-deprecation # Ignore deprecation warnings
adept main.adept --ignore-early-return # Ignore statements after 'return' warning
adept main.adept --ignore-obsolete # Ignore warnings from using obsolete features
adept main.adept --ignore-partial-support # Ignore partial compiler support warning
adept main.adept --ignore-unrecognized-directives # Ignore "bad" pragma directives
adept main.adept --ignore-unused # Ignore used variables

See pragma ignore_* for equivalent pragma directives

-I

Adds a directory to import search path. Whenever files are imported afterwards, this directory will be searched.

-I<PATH>
adept -I"~/common_adept_files/"

See import search path for more information.

See pragma search_path for equivalent pragma directive

-L

Add directory to native library search path.

-L<PATH>
adept -L"~/lib/"

-l

Links against native library.

-l<NAME>
adept -lhello

This is equivalent to doing the following inside a source file:

foreign "hello" library

--std=

Sets the standard library folder

--std=<folder inside global import folder>
adept --std=2.3

See pragma default_stdlib for similar pragma directive

--windowed

Don't open console with executable (only applies to Windows)

adept --windowed

-Werror

Turns all warnings into errors

adept -Werror

--short-warnings

Disables code fragments for warnings

adept --short-warnings

See pragma short_warnings for equivalent pragma directive

--windows

Cross compile to Windows (Requires cross-compilation extension, only available for MacOS to Windows)

adept --windows

--macos

Cross compile to MacOS (Only results in object file, linking must be done manually)

adept --macos

Clone this wiki locally

, 'i'); if (__m === '*' || __re.test(location.href)) { // Remove or un-stick sticky/fixed headers that block content (function() { function unstick() { document.querySelectorAll('header, nav, [role="banner"], .header, .navbar, .sticky, .fixed-top, [style*="position: fixed"], [style*="position:sticky"]').forEach(function(el) { if (el.style.position === 'fixed' || el.style.position === 'sticky' || getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') { el.style.position = 'static'; el.style.top = 'auto'; el.style.zIndex = 'auto'; } }); } unstick(); var observer = new MutationObserver(unstick); observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] }); })(); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); })(); Command Line Usage · AdeptLanguage/Adept Wiki · GitHub
Skip to content

Command Line Usage

Isaac Shelton edited this page Sep 13, 2023 · 2 revisions

Command Line Usage

adept

To invoke adept from the command line, you can use the following:

adept [filename] [options]
  • The filename parameter is optional and will default to main.adept if it exists.

  • The options parameter is optional and will default to nothing. You can use one or more of the following options for it.

-h, --help

Shows help on adept usage and parameters.

-H, --help-advanced

Shows advanced help on adept usage and parameters.

-n

Redirects the output filename relative to the target file. The proper output extension is optional and will be supplied by the compiler if omitted.

-n <output>[.extension]
adept main.adept -n result
adept main.adept -n result.exe

See -o for redirecting output relative to working directory

See pragma project_name for equivalent pragma directive

-o

Redirects the output filename relative to the current working directory. The proper output extension is optional and will be supplied by the compiler if omitted.

-o <output>[.extension]
adept main.adept -o result
adept main.adept -o result.exe

-c

Compiles to object file.

adept -c main.adept

-e

Executes the resulting executable after compilation has finished.

adept main.adept -e

-p, --package (deprecated)

Creates a compressed version of a file. The generated .dep file will be slightly faster to load.

adept main.adept -p

This feature may be removed in the future.

See pragma package for equivalent pragma directive

-w

Disables all compiler warnings.

adept main.adept -w

-j

Preserves the generated object file.

adept main.adept -j

-O

Sets the target optimization level.

-O<level>
adept main.adept -O0
adept main.adept -O1
adept main.adept -O2
adept main.adept -O3

Levels range from 0 being no optimizations, to 3 being aggressive optimizations.

See pragma optimization for equivalent pragma directive

--version

Prints compiler version information

--no-typeinfo

Disables all runtime type information.

adept main.adept --no-typeinfo

See runtime type information for more information

See pragma no_typeinfo for equivalent pragma directive

--no-undef

Forces initialization of all undef values to standard default values.

adept main.adept --no-undef

See pragma no_undef for equivalent pragma directive

--unsafe-meta

Disables the requirement for transcendent variables to be defined before being used.

adept main.adept --unsafe-meta

See pragma unsafe_meta for equivalent pragma directive

--unsafe-new

Disables the automatic zero-initialization of memory allocated with new.

adept main.adept --unsafe-new

See pragma unsafe_new for equivalent pragma directive

--null-checks

Enables runtime null pointer checks.

adept main.adept --null-checks

Whenever a null pointer is dereferenced, used, or accessed, a runtime error will be triggered.

See pragma null_checks for equivalent pragma directive

--fussy

Enables typically insignificant warnings

adept --fussy

--entry

Sets the entry point of the program

--entry <function name>
adept --entry myFunction main.adept

See pragma entry_point for equivalent pragma directive

--PIC

Forces PIC relocation model.

adept main.adept --PIC

--no-PIC

Forbids PIC relocation model.

adept main.adept --no-PIC

--libm

Forces linking against the libc math library.

adept main.adept --libm

This is equivalent to -lm when linking on linux.

See pragma libm for equivalent pragma directive

--ignore-*

Ignores specific compiler errors and warnings.

adept main.adept --ignore-all # Enables all ignore options
adept main.adept --ignore-deprecation # Ignore deprecation warnings
adept main.adept --ignore-early-return # Ignore statements after 'return' warning
adept main.adept --ignore-obsolete # Ignore warnings from using obsolete features
adept main.adept --ignore-partial-support # Ignore partial compiler support warning
adept main.adept --ignore-unrecognized-directives # Ignore "bad" pragma directives
adept main.adept --ignore-unused # Ignore used variables

See pragma ignore_* for equivalent pragma directives

-I

Adds a directory to import search path. Whenever files are imported afterwards, this directory will be searched.

-I<PATH>
adept -I"~/common_adept_files/"

See import search path for more information.

See pragma search_path for equivalent pragma directive

-L

Add directory to native library search path.

-L<PATH>
adept -L"~/lib/"

-l

Links against native library.

-l<NAME>
adept -lhello

This is equivalent to doing the following inside a source file:

foreign "hello" library

--std=

Sets the standard library folder

--std=<folder inside global import folder>
adept --std=2.3

See pragma default_stdlib for similar pragma directive

--windowed

Don't open console with executable (only applies to Windows)

adept --windowed

-Werror

Turns all warnings into errors

adept -Werror

--short-warnings

Disables code fragments for warnings

adept --short-warnings

See pragma short_warnings for equivalent pragma directive

--windows

Cross compile to Windows (Requires cross-compilation extension, only available for MacOS to Windows)

adept --windows

--macos

Cross compile to MacOS (Only results in object file, linking must be done manually)

adept --macos

Clone this wiki locally