I'm taking a "Programming Languages: Design and Implementation" course and want to know what "run-time representation" means in programming languages?
What does "run-time representation" means in programming languages"?
873 Views Asked by FortMax At
1
There are 1 best solutions below
Related Questions in RUNTIME
- Get height for RecyclerView child views at runtime
- Memory allocation of local variables within nested {}
- Runtime set property from a string
- Scala: binding time
- What is a runtime environment for supposedly "no-overhead" systems languages?
- iOS 7 runtime headers method invoke
- VBA Run-time error '13'
- Runtime.getRuntime().exec(__);
- how to start tomcat service as administrator
- Runtime Error Message Java
- How to change the delay of sleep/timer thread in android during runtime?
- How to prevent shutdown hook from getting deadlock?
- design application that can create instances of class while running
- Runtime.getRuntime.exec("color 0a") not working?
- Spring factory method
Related Questions in PROGRAMMING-LANGUAGES
- One argument referencing another in the argument list
- PHP to become ahead of time compiled language?
- What language the AI demo from Mark Zukerberg is written in?
- Sorting algorithms more efficient than bubble sort
- Why Do We have unsigned and signed int type in C?
- is this good to have pointers in programming languages such as golang,C or C++?
- Is there a term to refer to languages where variables are not preassigned a type?
- Bit slicing in verilog
- Is there a '#' operator in MaxJ? If so, what does it do?
- How Erlang is better than other language in doing concurrency?
- adjacency as an operator - can any lexer handle it?
- How do dynamically typed languages work?
- Practical uses for rotate carry left/right
- Evaluation relation In Pierce's book: meaning of "a relation satisfies a rule if ..."
- Protocols: Why is @ObjC required for conformance checking and optional requirements?
Related Questions in REPRESENTATION
- REST: not all representations immediately available
- Graph Querying on edge
- How to set color representation for a bitmap image in wpf
- Representation and naming of coordinates in n-dimensional space
- What does "run-time representation" means in programming languages"?
- Way to neatly represent array of objects with 2 values in JSON?
- representation of web page as browser see it
- Methods for Python classes representation
- Ball structuring element representation
- Select statement of a table SQL 2008
- Converting html to textual representation with preserved whitespace meaning of tags -- how?
- Construct a model of an electric circuit in java
- Plot to represent coverage of a sequence
- Converting Signed Int to Unsigned String value in Java
- How to store a polynomial?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
To understand it, you need to remember that (contemporary) computers only know integral numbers (in various lengths: 1, 2, 4 or 8 bytes), IEEE floating point numbers (4 or 8 bytes) and memory addresses (pointers, 4 or 8 bytes).
Thus when you want to have a list, for example, you (or, at least the compiler writer of the language you are using) need to think about how lists will be represented (!) in memory at runtime.
One possible representation for elements of singly linked lists:
The list node takes two adjacent pointer sized memory words, the first one points to the actual data, the second word points to the next list node.
There are two things to note here:
The representation is quite arbitrary. For example, we could switch the data and the next pointer, and this would be another representation that is as good as the former one.
Consider the run-time representation of a tuple or pair. It could be:
|________|________|
PtrFirst PtrSecond
that is, two memory words that hold pointers to the first and second component, respectively. Sounds familiar?
Well, how can we tell whether two subsequent words that hold pointers represent a pair or a list element? We can't! Many of our data abstraction will end up using the same run-time representation.