91 Matching Annotations
  1. Sep 2023
    1. I think "purely functional, not a single re-assigned variable" often introduces significant extra complexity, when Ruby is a language that embraces both functional and imperative programming.
    2. One of my favorite aspects of Ruby is how easy it is to write in a functional programming style, and including the scan operation would expand the number of use cases covered by functional methods.
  2. Aug 2023
  3. Jul 2023
    1. The notion of functional integration as a basis for biological identity was fully developed only in the 19th century, where it was transformed by the rise of both cell and evolutionary theory. Herbert Spencer
      • Herbert Spencer fully developed Digby's concept into the modern concept of functional integration
        • Spencer introduced the term "survival of the fittest"
        • ‘He tried to unite complex new findings about metabolism and organismic development with evolution and the seeming correspondence of organisms to their environments.
          • In The Principles of Biology (1864), Spencer wrote
            • a biological individual is one in which
            • the interdependence of the parts allows it to function and
            • respond to environmental change as a whole.
          • That is: ‘any concrete whole having a structure which enables it,
            • when placed in appropriate conditions,
        • to continuously adjust its internal relations to external relations, - so as to maintain the equilibrium of its functions.’
    2. Digby’s answer was to say that the wholeness comes from the system being functionally interdependent and integrated.
      • Digby’s answer to the fundamental question:
        • What is it that unites the parts of a system into a living individual? was the precursor to the biological concept of functional integration:
        • wholeness comes from the system being functionally interdependent and integrated.
          • the activities in one part of the system are brought about
          • by a cause external to the part where it occurs (interdependence);
          • and the mutual workings of the parts account for the behaviour of the system as a whole,
          • making this activity internal to the entire system (integration).
          • Here is an example using an Elephant
            • An elephant’s heart pumps blood only because it’s supplied with
              • energy from the digestive system,
              • oxygen from the respiratory system, and
              • support from the skeletal system.
            • All those bits working in tandem is what makes it possible for an elephant to walk around doing elephant things.
  4. Jun 2023
  5. Nov 2022
    1. Automated personalization, localization, recommendation, f iltering, classif ication, evaluation, aggregation, synthetization, or ad hoc generation of information are similarly pervasive practices that do not require explicit user input to select, sequence, arrange, or modulate some set of digital items
    2. Search has become a dominant means to access and order the masses of digital and dataf ied bits and pieces that clutter the environments we inhabit.
    1. ChIP

      Workflow 1. Cross-linking 2. Chromatin fragmentation 3. Immunoprecipitation of chromatin 4. DNA recovery and purification 5. Sequencing of DNA

    2. analyze protein interactions

      ChIP-seq is concerned with testing for protein DNA interactions.

  6. Sep 2022
  7. Jul 2022
  8. Jun 2022
    1. (2) The influence of the various concepts for the induction of lateral structure formation in lipid membranes on integral functional units like ionophores is demonstrated by analysing the single channel current fluctuations of gramicidin in bimolecular lipid membranes.
  9. Apr 2022
    1. Wine experts, meanwhile, know about surface-level characteristics like grapesand regions—but they think about wine in terms of function: wines that areluscious and fruity, good for pairing with spicy food; wines that are big and boldand can stand up to a hearty meal; wines that are fizzy and festive, fit for acelebration. “Luscious,” “Big,” and “Fizzy” are, in fact, three of the eightcategories Wesson devised for his stores (the others are “Soft,” “Fresh,” “Juicy,”“Smooth,” and “Sweet”).

      As an example of deep functional classification by experts, sommelier Joshua Wesson uses the functional categories luscious, big, fizzy, soft, fresh, juicy, smooth, and sweet to describe wines for customers rather than using the more straightforward and surface level grape varietal descriptors that are otherwise used to categorize wines in stores. These higher level functional classifications also assist in choosing a wine for pairing far more subtly than the extraneous grape types and regions which may carry little informational value to wine novices.

      Link to https://hypothes.is/a/uw_vPsHyEey1vX9dfqaNvA

  10. Jan 2022
    1. Douaud, G., Lee, S., Alfaro-Almagro, F., Arthofer, C., Wang, C., McCarthy, P., Lange, F., Andersson, J. L. R., Griffanti, L., Duff, E., Jbabdi, S., Taschler, B., Winkler, A. M., Nichols, T. E., Collins, R., Matthews, P. M., Allen, N., Miller, K. L., & Smith, S. M. (2021). Brain imaging before and after COVID-19 in UK Biobank (p. 2021.06.11.21258690). https://doi.org/10.1101/2021.06.11.21258690

    1. What does a Functional Design have to offer? https://en.itpedia.nl/2019/01/16/wat-heeft-een-functioneel-ontwerp-te-bieden/ A functional design is a specification of the functions of the software that the end_users have agreed to. Many companies have a software_developer handbook that describes what topics a functional design should cover. This article looks at the steps of functional design in the context of software development.

  11. Nov 2021
    1. (the VTA is also part ofthis system, but is too small to image with standard fMRImethods, but see [35] for successful imaging methods).

      All imaging studies face questions of validity and should (and many do) link to comprehensive details on instrumentation, methodology, and interpretation. Apparently, the professional consensus remains that, properly executed and interpreted, fMRI and other functional imaging techniques based on detection of oxygenation can lead to highly valid conclusions. (See Nautil.us article.)

  12. Oct 2021
    1. Another option is the use the functional library Ramda, while the syntax may be a bit different from the Ruby and Pure JS version, I find it to be more declarive: list = [null, "say", "kenglish", "co", null] R.reject(R.isNil, list) // return new array [ 'say', 'kenglish', 'co' ]
  13. Aug 2021
    1. We can also define these properties for data types that we do not control, for example providing a custom way of hashing a data type implemented by someone else
    1. However, there is a definite trade off in these three snippets. The first one is overly specific but is understandable to any Scala programmer. The last one is beautiful and elegant if you understand the necessary concepts but incomprehensible otherwise.
    2. ZIO ecosystem libraries generally do not directly expose any functional abstractions but still expose a highly compositional interface because their design is based on algebraic properties like this. Users don't have to learn about these abstractions unless they want to, they just get to benefit from better library design.
  14. Jul 2021
    1. Using multiple copies of a neuron in different places is the neural network equivalent of using functions. Because there is less to learn, the model learns more quickly and learns a better model. This technique – the technical name for it is ‘weight tying’ – is essential to the phenomenal results we’ve recently seen from deep learning.

    1. The keyword data tells us this is an inductive definition, that is, that we are defining a new datatype with constructors

      Inductive, since multiple constructors are generalized to a type. And as seen in this example, data types can also facilitate mathematical induction.

  15. Jun 2021
  16. May 2021
    1. you want to pass a function as an argument to higher-order functions

      Functional programming - passing functions as arguments, as opposed to data objects.

  17. Mar 2021
    1. Put another way, it’s become clear to me over time that the problems with data races and memory safety arise when you have both aliasing and mutability. The functional approach to solving this problem is to remove mutability. Rust’s approach would be to remove aliasing. This gives us a story to tell and helps to set us apart. A note on terminology: I think we should refer to aliasing as sharing. In the past, we’ve avoided this because of its multithreaded connotations. However, if/when we implement the data parallelism plans I have proposed, then this connotation is not at all inappropriate. In fact, given the close relationship between memory safety and data races, I actually want to promote this connotation.
  18. Feb 2021
    1. The latter are important examples which usually also exist in "purely" functional programming languages.

      How can they exist and it still be considered pure??

      I guess that's not quite the same / as bad as saying something had side effects in a purely functional programming context, right?

    1. So every program starts in the IO monad. From here you can get any input you need, call into relatively "pure" code with the inputs, and then output the result in some way. The reverse does not work. You cannot call into IO code from pure code like you can call into a Maybe function from pure code.
    1. Purely functional programming may also be defined by forbidding state changes and mutable data.
    2. purely functional programming usually designates a programming paradigm—a style of building the structure and elements of computer programs—that treats all computation as the evaluation of mathematical functions.
    3. Purely functional data structures are persistent. Persistency is required for functional programming; without it, the same computation could return different results.
    1. Whatever language or default programming paradigm a developer uses, following the monad pattern brings many of the benefits of purely functional programming.
    2. To emphasize how Just acts on the underlying value by wrapping it, it can be redefined as a function too, called eta for now
    3. Research beginning in the late 1980s and early 1990s established that monads could bring seemingly disparate computer-science problems under a unified, functional model.
    1. The central ideas of this design pattern closely mirror the semantics of first-class functions and higher-order functions in functional programming languages. Specifically, the invoker object is a higher-order function of which the command object is a first-class argument.
    1. “Functional programming language” is not a clearly defined term. From the various properties that are typically associated with functional programming I only want to focus on one: “Immutability” and referential transparency.

      I mean not clearly defined seems wrong, there are common accepted characteristics that make a language functional.

  19. Jan 2021
    1. The changes we needed to make to main to reassign post mean that this implementation doesn’t quite follow the object-oriented state pattern anymore: the transformations between the states are no longer encapsulated entirely within the Post implementation. However, our gain is that invalid states are now impossible because of the type system and the type checking that happens at compile time! This ensures that certain bugs, such as display of the content of an unpublished post, will be discovered before they make it to production.

      This is really an amazing chapter for comparing (some aspects) of object oriented and functional programming, and I have to admit I still prefer the functional approach as a default.

    1. { item1: "hello", item2: "world" }

      Valida in automatico l'oggetto passato con l'interfaccia?

      Non necessità di un'istanza o di specificare l'interfaccia dell'istanza?

      Interessante..

  20. Dec 2020
    1. Note: The examples in Listings 10-17, 10-18, and 10-24 declare variables without giving them an initial value, so the variable name exists in the outer scope. At first glance, this might appear to be in conflict with Rust’s having no null values. However, if we try to use a variable before giving it a value, we’ll get a compile-time error, which shows that Rust indeed does not allow null values.
    1. My frustration is mainly from Svelte's choices that are very un-JavaScript-like. It doesn't have to be "like React/Vue". React is React because it doesn't restrict what you can do with JavaScript for the most part. It's just common FP practice to fold/map.
  21. Nov 2020
    1. As it becomes more clear what are specific functional jobs to be done, we see more specialized apps closely aligned with solving for that specific loop. And increasingly collaboration is built in natively to them. In fact, for many reasons collaboration being natively built into them may be one of the main driving forces behind the venture interest and success in these spaces.

      As it becomes more clear what the functional job to be done is, we see more specialized apps aligned with solving that specific loop. Collaboration is increasingly built natively into them.

  22. Oct 2020
    1. In practice, functional programming is all about hiding for loops, which are abstracted away by the mapper functions that automate the iteration.
    1. The lodash/fp module promotes a more functional programming (FP) friendly style by exporting an instance of lodash with its methods wrapped to produce immutable auto-curried iteratee-first data-last methods.
    1. All validators can be used independently. Inspried by functional programming paradigm, all built in validators are just functions.

      I'm glad you can use it independently like:

      FormValidation.validators.creditCard().validate({
      

      because sometimes you don't have a formElement available like in their "main" (?) API examples:

      FormValidation.formValidation(formElement
      
  23. Sep 2020
    1. It turns out that even the length of time an element has been mounted is an important piece of state that determines what pixels the user sees. And some of this state can’t simply be lifted into our application state.

      What this means is that our desire to express UI using pure functions is in direct conflict with the very nature of the DOM. It’s a great way to describe a state => pixels transformation — perfect for game rendering or generative art — but when we’re building apps on the web, the idea chafes against the reality of a stateful medium.

    2. Functions have lots of interesting and useful properties. You can isolate them. You can compose them. You can memoize them. In other words, functional UI feels correct, and powerful, in a way that wasn’t true of whatever came before it. I think this is why people get quasi-religious about React. It’s not that it’s Just JavaScript. It’s that it’s Just Functions. It’s profound.

    1. A paradigm is a model or pattern. In JavaScript, there are a number of popular paradigms including object-oriented programming (OOP) and functional programming (FP). Paradigms are more important than is sometimes recognized. They help form mental models for solving problems. Becoming well-versed in the principles of a given paradigm can help accelerate development by providing mental shortcuts for solving the challenges that arise while building applications. They can also help produce higher quality software.
    1. We wanted a library designed specifically for a functional programming style, one that makes it easy to create functional pipelines, one that never mutates user data.
  24. Jun 2020
    1. Refactoring is intended to improve the design, structure, and/or implementation of the software (its non-functional attributes), while preserving its functionality.

      First sighting: "non-functional attributes".

    1. In systems engineering and requirements engineering, a non-functional requirement (NFR) is a requirement that specifies criteria that can be used to judge the operation of a system, rather than specific behaviors. They are contrasted with functional requirements that define specific behavior or functions

      This is a strange term because one might read "non-functional" and interpret in the sense of the word that means "does not function", when instead the intended sense is "not related to function". Seems like a somewhat unfortunate name for this concept. A less ambiguous term could have been picked instead, but I don't know what that would be.

  25. Apr 2020
  26. Feb 2020
    1. Nix is a purely functional package manager. This means that it treats packages like values in purely functional programming languages such as Haskell — they are built by functions that don’t have side-effects, and they never change after they have been built.
  27. Jan 2020
  28. Nov 2019
    1. We might have some dirty mutable objects for performance - but our high-level API should be purely functional. You should be able to follow the React model of modelling your UI as a pure function of application state -> UI.
    1. the abstraction I wished to have was a sort of a pure functional Vim, completely decoupled from terminal UI - where 'vim' is a function of (editor state, input) => (new editor state)
  29. May 2019
    1. However, it is still often stated that the other orbital energies have no physical meaning, and that it is a pity that nothing like Koopmans' theorem to give meaning to the other occupied orbital energies exists. The truth could not be more different: it has been established22–25 that the KS orbital energies of the valence levels in molecules approximate the experimental ionization energies much more closely (typically at 0.1 eV level) than the Hartree–Fock orbital energies do (difference with IPs typically ∼1 eV).

      This is really one of the more spicy takes here. KS orbitals having no physical interpretation is often heard in the community, and here is a list of references and evidence that they do have physical significance.

  30. Jan 2019
    1. after the terminal operation of the stream pipeline commences.

      Above is because of the nature of Streams in general: they are lazily executed (or put another way, execution is delayed until the latest convenient method call).

  31. Nov 2018
    1. That is using a specific tool for a specific use case. You don’t actually have a table view of your data. Once it’s in a table, man, you’re good. That is the modeling. A sequel database table, you have this amazing high-level language for doing all sorts of cool operations with it.To turn this into some class hierarchy, it’s almost criminal. There, I said it. It’s like you’re throwing away the power that you have.

      about a situation when you sometime want an is-a relationship but in most cases just have it as loosely structured (table-like) data format

  32. Sep 2018
  33. Aug 2018
  34. Apr 2018
    1. (== 10)

      This confused me. I'm relatively new to Haskell and did not know about sectioning. After learning that detail, this makes sense as a (right) partial application of the (==) function.

  35. Aug 2017
    1. Since Clojure uses the Java calling conventions, it cannot, and does not, make the same tail call optimization guarantees. Instead, it provides the recur special operator, which does constant-space recursive looping by rebinding and jumping to the nearest enclosing loop or function frame. While not as general as tail-call-optimization, it allows most of the same elegant constructs, and offers the advantage of checking that calls to recur can only happen in a tail position.

      Clojure's answer to the JVM's lack to tail call optimization

  36. Apr 2016
    1. In Switzerland, one of my recent ancestors was functionally illiterate. Because of this, she “signed away” most of her wealth. Down the line, I’m one of her very few heirs. So, in a way, I lost part of my inheritance due to illiteracy.

      Explained further in the screencast. My paternal grandfather’s mother came from a well-to-do Schneider family and was a devout Christian, but she “read” the Bible upside-down, according to my paternal grandmother.

  37. Mar 2016
  38. Jul 2015
    1. Keeping unpure functions clearly named and organized in such a way that they can be easily identified versus pure functions is a common goal of modularizing and organizing Scala applications.
    2. Much like a Unix power user will compose multiple single-purpose tools into a complex piped command, a functional programmer will combine single-purpose function invocations into chains of operations (think Map/Reduce).