Ask any question about EPFL courses, lectures, exercises, research, news, etc. or try the example questions below.
DISCLAIMER: The Graph Chatbot is not programmed to provide explicit or categorical answers to your questions. Rather, it transforms your questions into API requests that are distributed across the various IT services officially administered by EPFL. Its purpose is solely to collect and recommend relevant references to content that you can explore to help you answer your questions.
A property, in some object-oriented programming languages, is a special sort of class member, intermediate in functionality between a field (or data member) and a method. The syntax for reading and writing of properties is like for fields, but property reads and writes are (usually) translated to 'getter' and 'setter' method calls. The field-like syntax is easier to read and write than many method calls, yet the interposition of method calls "under the hood" allows for data validation, active updating (e.g., of GUI elements), or implementation of what may be called "read-only fields". Programming languages that support properties include ActionScript 3, C#, D, Delphi/Free Pascal, eC, F#, Kotlin, JavaScript, Objective-C 2.0, Python, Scala, Swift, Lua, and Visual Basic. Some object-oriented languages, such as Java and C++, do not support properties, requiring the programmer to define a pair of accessor and mutator methods instead. Oberon-2 provides an alternative mechanism using object variable visibility flags. Other languages designed for the Java Virtual Machine, such as Groovy, natively support properties. While C++ does not have first class properties, they can be emulated with operator overloading. Also note that some C++ compilers support first class properties as language extensions. In Microsoft Visual Studio, GCC, and llvm/clang, the __declspec(property) creates properties similar to C#. Borland C++ and Borland/CodeGear/Embarcadero C++Builder use the __property keyword. In many object oriented languages properties are implemented as a pair of accessor/mutator methods, but accessed using the same syntax as for public fields. Omitting a method from the pair yields a read-only or an uncommon write-only property. In some languages with no built-in support for properties, a similar construct can be implemented as a single method that either returns or changes the underlying data, depending on the context of its invocation. Such techniques are used e.g. in Perl.
[2]Paolo Prandoni, [3]LCAV, EPFL
In this notebook we will use the adaptive LMS filter to estimate the
impulse response of a reverberating room.
A typical use case is handsfree telephony: since the received signal,
amplified and played by the speaker, is picked up by the microphone, we
need to eliminate it from the signal that is transmitted back in order
to avoid a feedback loop. The signal picked up by the microph