Lua's bytecode specification [closed] - documentation

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 5 years ago.
Improve this question
Can anyone tell me where to find Lua's bytecode specification? I've been searching for 15 minutes, and I can't find anything.

The official definition is in lopcodes.h.

Maybe A No-Frills Introduction to Lua 5.1 VM Instructions contains what you're looking for?
There is also a table of the Lua 5.0 instruction set (Figure 5) in:
Ierusalimschy, R.; Figueiredo, L. H.; Celes, W. (2005), "The implementation of Lua 5.0", J. of Universal Comp. Sci. 11 (7): 1159-1176
You can find the full text with a search on Google Scholar and I believe it's on lua.org as well. This reference is used by the Lua page on Wikipedia, which is always a good place to look for such things. :-)

The only specifications for Lua are the language, standard libraries, and the C API. The creators of Lua intentionally left the VM unspecified for a couple main reasons:
Lua can be fully implemented with any underlying architecture (VM, interpreter, compiler, etc.)
The official Lua distribution doesn't have to worry about maintaining VM compatibility between versions
This means, for example, that you generally shouldn't use the Lua VM as a target for a compiler. If you'd like to know how the official Lua distribution's VM works as an example for your own curiosity, see the other answers.

You can read The Implementation of Lua 5.0 online.

Related

Which is the best (and free) APL interpreter? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 8 years ago.
Improve this question
I need an APL implementation to test some expressions, do your know which is the best interpreter for the language ?
It would be great if it is free and it runs on Linux.
You can test simple expressions with my APL interpreter, it runs on JavaScript in the browser: http://ngn.github.com/apl/web/index.html https://n9n.gitlab.io/apl/web/index.html
Try GNU APL. Version 1.0 was released September 27, 2013.
Also, if you want to try something, why not go to http://tryapl.org ? :)
And, finally, Dyalog Ltd. offers free version of their interpreter (the best you can get, IMHO) - which is free for personal, non-commercial use - which sounds like what you do..
And while TryAPL gives you a protected environment in which certain "potentially harmful" statements are not allowed, there is a new service available which gives you a complete sandboxed Dyalog APL environment that can execute scripted commands at https://tio.run/#apl-dyalog
Try APLX for Linux (Personal Edition) Version 1.1 from MicroAPL.
The best for PC are>
APL2 IBM but free only a trial period.
APLX is very good but some different to APL2.seems to be Eternal Life inside APL.

Lisp on embedded platforms [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 3 years ago.
Improve this question
Are there any open source Lisp compilers suitable for real-time embedded applications? I.e. with incremental garbage collection, customisable memory handling, small footprint, etc.
Edit:
To clarify, by "compiler" I meant native code, not bytecode interpreter (though the suggested interpreting implementations for microcontrollers are interesting for being a lot smaller than what I thought possible!).
Take a look at Picobit and the code, which is a Scheme for microcontrollers. There is also tinyscheme, but I don't know how suitable it is for embedding into smaller processors.
There are some implementations that compile to C code, e.g. ECL (Embeddable Common Lisp). There is also a very recent library that compiles a subset of Common Lisp to a subset of C++ for the Arduino.
You mentioned "real-time" so nonchalantly, but getting real-time with garbage collection is not trivial. There do exist real-time garbage collectors, but I am not aware of any Lisp implementations using them yet.
There is also Hedgehog Lisp from Oliotalo, licensed under LGPLv2.1, with standard library licensed under BSD.

Favorite Documentation Generator system? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 6 years ago.
Improve this question
I'm a jack-of-all-trades-master-of-none programmer and as I jump around languages, quality consistent documentation is becoming more and more important to me. I've recently been using Doxygen, but Wikipedia reveals the usual ridiculous list of similar frameworks.
What is your favorite documentation generator and why? (Vote where you agree to keep it tidy!)
I use different files written in MediaWiki MarkUp, since this is easy to learn for everyone. I convert this to HTML and a CHM file, and to LaTeX for the PDF documentation.
This was the most painless way for me to generate Online documentation AND printable documentation in one strike with a simple way of input.
The tools I use are org.eclipse.mylyn.wikitext with a custom DocumentBuilder for LaTeX, the Microsoft Help compiler (which sadly only runs on windows), and a LaTeX distribution.
EDIT: I managed to get the Microsoft Help compiler running with Wine, so my Linux build server is now able to create the whole documentation automatically.

CUDA: documentation of kernel CRT? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 5 years ago.
Improve this question
I'm trying to find the documentation for all of the functions available for the CUDA kernels.
The CUDA Reference manual seem to include only the host functions and the CUDA programming guide only includes some details such as the accuracy of these functions but not their documentation.
Am I missing something or does this piece of documentation simply doesn't exist?
Appendices B and C of the CUDA Programming Guide contain documentation for functions that can be executed within kernels. Mostly they are for things like texture fetches, atomic instructions, warp voting, synchronization, and C standard library mathematical operations.
The documentation is very sparse because the meaning of these functions is described elsewhere, in the C standard library documentation. Some of these functions are quite esoteric. The meaning of others can be guessed at from the name. For the ones that you do not recognize, you can google for the man page with a query such as "site:opengroup.org nextafter". If you are on a *nix machine and have the C library documentation installed, typing man nextafter will also work.

software documentation templates [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
Does anyone know any source of examples and templates for software requirements, build environment description and other kind of documentations that are common for software development?
Thanks!
The ReadySet templates from tigris are quite comprehensive though you need to know html or have a good html editor to use them.
The IEEE provides standards for software documentation. For instance, high level requirements are defined in IEEE 830-1993 Software Requirements Specification.
This is a standard I've learned in school (using a book called Software Engineering - an object oriented perspective by Eric J. Braude, but I would not specifically recommend it.) It's more suited to a traditional waterfall development model though.
Googling the standard number should get you a couple of interesting links.
(The IEEE 830-1993 standard is superseded by IEEE 830-1998.)
The arc42 project is about a free Software Architecture Documentation template similar to the Software Architecture Document of the Rational Unified Process (commercial).
The state of Texas has a fine framework for the whole system development cycle.