![oberon system lines of code oberon system lines of code](https://image3.slideserve.com/5398044/slide14-l.jpg)
If there is no code in your link, it probably doesn't belong here. Just because it has a computer in it doesn't make it programming.That means no image posts, no memes, no politics.Please keep submissions on topic and of high quality.> Oberon at ./r/programming is a reddit for discussion and news about computer programming > Oberon at mailing list for ETH Oberon and related systems (The relevant lines of the report are quoted in my original post). > The report explicitely explains that assigning a string (literal) to a var of type ARRAY OF CHAR (which apparently is the only type a var can have to be assigned a string) automagically adds 0X after the string's characters. It is implementation specific whether some "string" manipulation functions always result in a new "string" (0X-terminated character sequence) or not. > In the meanwhile, I'll have a look at the source of A2's String type if it's written in Oberon itself & I can find it. My aim is to find the corresponding feature in Oberon-2, or a way to construct such a handy representation myself. > In flexible languages, and in most Pascal variants, there is a type corresponding to the notion of a-piece-of-text and to literals denoting instances of it. On the other hand, bounded ARRAYs size OF CHAR are not proper types for strings, since very few string variables and return values have a predefined size (indeed, they are the result of input or computation). ARRAY OF CHAR is an obvious answer but does not hold in practice, since it cannot be the type of a VAR or of a return value. > If not, the point is then: how are Oberon programmers supposed to deal with strings. In A2, the text system represents characters as LONGINT (Unicode) and strings therefore as ARRAY OF LONGINT. The simplest one is ARRAY OF CHAR for ASCII strings or UTF-8 encoded strings.
![oberon system lines of code oberon system lines of code](http://www.progtools.org/compilers/tutorials/oberon/install-confirmation.png)
> Actually, there are several ways how strings are represented. > If yes, I have a first question: strings are defined as sequences of characters. > What I'm looking for is a convenient static and compiled language for a project of mine (actually, a language, too -) and to build various tools, mainly for the said project. I may switch to ActiveOberon, again only the language, in a far future, if ever I need to address parallel processing issues, but this is completely outside my field of interests today. What is A2, actually? The first sentence of the quickstart guide reads "This is a brief introduction to the programming language Active Oberon and the operating system A2." Implementations including the system or a simulation of it on top of another cannot fit my needs. I use either 002c or obc to compile for the moment. > The core of my interest, as of now, is the *language* Oberon as defined in the Oberon-2 report. Also, mailing list are far more practicle for me. Actually I knew about the forums, but the one ypu mention does not seem very "active": >. Last but not least, there is a lot of code around. On you'll find some "Programming in Oberon" books. Also, there is an Oberon & Active Oberon board on our forum ( ). > Be sure you don't miss the A2 Programming Quickstart Guide ( ). learning the *language* and to talk about it? > Von: oberon-bounces at Im Auftrag von spir Even more advanced features as text representation are again part of the implementation.
![oberon system lines of code oberon system lines of code](http://www.progtools.org/compilers/tutorials/oberon/skins.png)
> More advanced string manipulation features as appending a string to another, for example, are implemented as library (as Strings.Mod in Native Oberon/A2). > - Operators: = # >= also work on 0X-terminated "strings" > The only things the Oberon language provides: ) I've seen, string representation and manipulation is mainly part of the Oberon "system", not the Oberon language. So, I guess there may well be various string representations (and/or types for them) in a given implementation, but they belong to the implementation. There is no mention of a string type (unlike CHAR). But the report only seems to use "string" to denote the result of evaluating literal notations like 'abc'. On Tue, at 10:19 AM, Stauber Sven Philipp PROCEDURE (VAR pos:Position) text(): StringPtr Pointer assignment, and the pointer then dereferenced. So the following code is as close as I can get, with a It is not possible to de-reference a pointer returned by a function inĪn expression.