Filters








2,979 Hits in 1.8 sec

GADT meet Subtyping [article]

Gabriel Scherer, Didier Rémy (INRIA Rocquencourt)
2012 arXiv   pre-print
While generalized abstract datatypes (GADT) are now considered well-understood, adding them to a language with a notion of subtyping comes with a few surprises. What does it mean for a GADT parameter to be covariant? The answer turns out to be quite subtle. It involves fine-grained properties of the subtyping relation that raise interesting design questions. We allow variance annotations in GADT definitions, study their soundness, and present a sound and complete algorithm to check them. Our
more » ... k may be applied to real-world ML-like languages with explicit subtyping such as OCaml, or to languages with general subtyping constraints.
arXiv:1210.5935v1 fatcat:wpma65kdgfbtbcfmdawygmpfb4

Tail Modulo Cons [article]

Frédéric Bour, Basile Clément, Gabriel Scherer
2021 arXiv   pre-print
OCaml function calls consume space on the system stack. Operating systems set default limits on the stack space which are much lower than the available memory. If a program runs out of stack space, they get the dreaded "Stack Overflow" exception -- they crash. As a result, OCaml programmers have to be careful, when they write recursive functions, to remain in the so-called _tail-recursive_ fragment, using _tail_ calls that do not consume stack space. This discipline is a source of difficulties
more » ... or both beginners and experts. Beginners have to be taught recursion, and then tail-recursion. Experts disagree on the "right" way to write 'List.map'. The direct version is beautiful but not tail-recursive, so it crashes on larger inputs. The naive tail-recursive transformation is (slightly) slower than the direct version, and experts may want to avoid that cost. Some libraries propose horrible implementations, unrolling code by hand, to compensate for this performance loss. In general, tail-recursion requires the programmer to manually perform sophisticated program transformations. In this work we propose an implementation of "Tail Modulo Cons" (TMC) for OCaml. TMC is a program transformation for a fragment of non-tail-recursive functions, that rewrites them in _destination-passing style_. The supported fragment is smaller than other approaches such as continuation-passing-style, but the performance of the transformed code is on par with the direct, non-tail-recursive version. Many useful functions that traverse a recursive datastructure and rebuild another recursive structure are in the TMC fragment, in particular 'List.map' (and 'List.filter', 'List.append', etc.). Finally those functions can be written in a way that is beautiful, correct on all inputs, and efficient.
arXiv:2102.09823v1 fatcat:bfmw2t3ezvdvffjrg2tpsz63b4

GADTs meet subtyping [article]

Gabriel Scherer, Didier Rémy (INRIA Rocquencourt)
2013 arXiv   pre-print
While generalized algebraic datatypes (\GADTs) are now considered well-understood, adding them to a language with a notion of subtyping comes with a few surprises. What does it mean for a \GADT parameter to be covariant? The answer turns out to be quite subtle. It involves fine-grained properties of the subtyping relation that raise interesting design questions. We allow variance annotations in \GADT definitions, study their soundness, and present a sound and complete algorithm to check them.
more » ... r work may be applied to real-world ML-like languages with explicit subtyping such as OCaml, or to languages with general subtyping constraints.
arXiv:1301.2903v1 fatcat:fytxjm473fhdlc34dzkr7zoej4

GADTs Meet Subtyping [chapter]

Gabriel Scherer, Didier Rémy
2013 Lecture Notes in Computer Science  
While generalized algebraic datatypes (GADTs) are now considered well-understood, adding them to a language with a notion of subtyping comes with a few surprises. What does it mean for a GADT parameter to be covariant? The answer turns out to be quite subtle. It involves fine-grained properties of the subtyping relation that raise interesting design questions. We allow variance annotations in GADT definitions, study their soundness, and present a sound and complete algorithm to check them. Our
more » ... ork may be applied to real-world ML-like languages with explicit subtyping such as OCaml, or to languages with general subtyping constraints.
doi:10.1007/978-3-642-37036-6_30 fatcat:c6h2x3sqnjahpbt33lhq4ln2xa

Lucro por ação

Gabriel Moreira Campos, Luciano Márcio Scherer
2001 Revista Contabilidade & Finanças  
Este trabalho tem por objetivo demonstrar os principais conceitos acerca do Lucro por Ação (Earnings per Share), o qual se apresenta como um quociente de grande utilidade nas entidades. Serão demonstrados aspectos sobre o assunto presentes no Brasil, bem como as normas aplicáveis nos Estados Unidos, emanadas do Financial Accounting Standards Board (FASB), e as normas internacionais, emanadas do International Accounting Standards Committee (IASC). De forma a possibilitar uma visualização mais
more » ... pleta dos conceitos envolvidos, serão desenvolvidos exemplos de sua aplicação. O Lucro (Resultado) por Ação pode ser calculado em sua forma básica e em sua forma diluída. Na forma básica, não são considerados os efeitos dos instrumentos potencialmente dilutivos, ao passo que, no cálculo do Lucro (Resultado) por Ação Diluído, são. Como instrumentos financeiros potencialmente dilutivos temos as ações preferenciais conversíveis, as debêntures conversíveis e os bônus de subscrição, que podem ser convertidos em ações ordinárias, caracterizando, assim, o próprio potencial dilutivo desses instrumentos. Dessa forma, o trabalho em questão foi dividido em três partes principais, sendo que nas duas últimas constam os referidos exemplos de cálculo do Lucro por Ação em sua forma básica e em sua forma diluída: • aspectos observados no Brasil; • normas emanadas do FASB; • normas emanadas do IASC.
doi:10.1590/s1519-70772001000200005 fatcat:mgqo32rqofbfbpviptkqxan6mm

PROCESSAMENTO DA LINGUAGEM: CONTRIBUIÇÕES DA NEUROLINGÜÍSTICA

Lílian Cristine Scherer, Rosângela Gabriel
2008 Signo  
Aos poucos, o refinamento das técnicas e o surgimento de outras, mais ecologicamente válidas (SCHERER et al., 2007), corroboram para a redução dessa deficiência. 3.  ...  Dentre as estruturas cerebrais com maior potencial de adaptação estão as conexões sinápticas, pontos de encontro entre os dendritos dos neurônios (GABRIEL, 2004) , que podem ser fortalecidas ou enfraquecidas  ... 
doaj:14e4867b5b464112add072719df5d2bc fatcat:t77sxnxbvbf47cdypswagy5fea

Dependent Pearl: Normalization by realizability [article]

Pierre-Évariste Dagand, Lionel Rieg, Gabriel Scherer
2020 arXiv   pre-print
Pierre-Évariste Dagand, Lionel Rieg, and Gabriel Scherer  ...  1 v with σ 1 x 1 → match σ 2 (σ 2 x 1 ) with σ 1 x 1 → 0 σ 2 x 2 → 1 σ 2 x 2 → match σ 2 (σ 1 x 2 ) with σ 1 x 1 → 0 σ 2 x 2 → 1 whose effect is to enable the redexes of larger type -see for example Scherer  ... 
arXiv:1908.09123v2 fatcat:35wkwqrljfazfplohxemxo5cuy

Which simple types have a unique inhabitant?

Gabriel Scherer, Didier Rémy
2015 SIGPLAN notices  
The implementation (Scherer and Rémy 2015) is around 700 lines of readable OCaml code.  ...  Two-or-more approximation A complete presentation of the content of this section, along with complete proofs, is available as a research report (Scherer 2014) .  ...  B.3 Two-or-more counting The full proofs, and additional results, are available as a research report (Scherer 2014) .  ... 
doi:10.1145/2858949.2784757 fatcat:g5ik2xr4dbfz5k5d2ewc6fdu44

Deciding equivalence with sums and the empty type

Gabriel Scherer
2017 SIGPLAN notices  
The proof of Scherer and Rémy (2015) can be reused almost as-is.  ...  It corresponds to equality of morphisms in the free bi-cartesian closed category -see Scherer (2016) , Section 3.2.2.  ... 
doi:10.1145/3093333.3009901 fatcat:eusvrmdfunas3c563etwdcqbb4

Tracking Data-Flow with Open Closure Types [chapter]

Gabriel Scherer, Jan Hoffmann
2013 Lecture Notes in Computer Science  
The complete source code of the prototype is available at the following URL: http://gallium.inria.fr/~scherer/research/open_closure_types Discussion Before we conclude, we highlight three technical points  ... 
doi:10.1007/978-3-642-45221-5_47 fatcat:pv42btv2pjdmfehvpquvsxefna

Unboxing Mutually Recursive Type Definitions in OCaml [article]

Simon Colin, Rodolphe Lepigre, Gabriel Scherer
2018 arXiv   pre-print
The approach presented in our work is largely inspired from the way the variance of type declarations is handled in languages with subtyping (Abel, 2008; Scherer and Rémy, 2013) .  ... 
arXiv:1811.02300v2 fatcat:isdkwab4fjdctjej3rxkwmpvbu

Full Reduction in the Face of Absurdity [chapter]

Gabriel Scherer, Didier Rémy
2015 Lecture Notes in Computer Science  
Core calculi that model the essence of computations use full reduction semantics to be built on solid grounds. Expressive type systems for these calculi may use propositions to refine the notion of types, which allows abstraction over possibly inconsistent hypotheses. To preserve type soundness, reduction must then be delayed until logical hypotheses on which the computation depends have been proved consistent. When logical information is explicit inside terms, proposition variables delay the
more » ... aluation by construction. However, logical hypotheses may be left implicit, for the user's convenience in a surface language or because they have been erased prior to computation in an internal language. It then becomes difficult to track the dependencies of computations over possibly inconsistent hypotheses. We propose an expressive type system with implicit coercions, consistent and inconsistent abstraction over coercions, and assumption hiding, which provides a fine-grained control of dependencies between computations and the logical hypotheses they depend on. Assumption hiding opens a continuum between explicit and implicit use of hypotheses, and restores confluence.
doi:10.1007/978-3-662-46669-8_28 fatcat:yy7nhn76eraapc7w5wzufrgptq

Capturing the Future by Replaying the Past [article]

James Koppel, Gabriel Scherer, Armando Solar-Lezama
2018 arXiv   pre-print
For instance, the nondeterminism example 10:4 James Koppel, Gabriel Scherer, and Armando Solar-Lezama The ListMonad lets us rewrite the above example in monadic style.  ...  stack of [] ⇒ NONE | x :: xs ⇒ (stack := xs; SOME x) James Koppel, Gabriel Scherer, and Armando Solar-Lezama fun choose [] = raise Empty | choose xs = case pop future of NONE ⇒ ( * no future: start a  ... 
arXiv:1710.10385v2 fatcat:ciq6xqrbwzhxhhb5i56gv55yey

Correctness of Speculative Optimizations with Dynamic Deoptimization [article]

Olivier Flückiger, Gabriel Scherer, Ming-Ho Yee, Aviral Goel, Amal Ahmed, Jan Vitek
2017 arXiv   pre-print
This allows us to remove the assume with the larger 49:12 Flückiger, Scherer, Yee, Goel, Ahmed, and Vitek scope.  ...  As shown in the figure, the assume at in the optimized main is thus extended with main.Vb.Lret s [pl = pl, vec = vec]. 49:10 Flückiger, Scherer, Yee, Goel, Ahmed, and Vitek This creates an additional  ... 
arXiv:1711.03050v2 fatcat:fghw4kiznvad3hqvsdzmm2qhn4

Câncer de pele em trabalhadores rurais: fotoexposição e orientação quanto a fatores de risco

Mainara Meller Dalcin, Gabriele Catyana Krause, Carlice Maria Scherer, Silvana Ceolin, Gabriel Lautenschleger, Marcio Rossato Badke
2021 Research, Society and Development  
O estudo busca determinar o perfil epidemiológico dos trabalhadores rurais moradores do noroeste do estado do Rio Grande do Sul e verificar seu conhecimento sobre proteção e fatores de risco para o desenvolvimento do câncer de pele. Trata-se de um estudo descritivo, exploratório e de caráter quantitativo, realizado com trabalhadores rurais do município de Horizontina. Muitos entrevistados possuem algum tipo de informação e orientação sobre o câncer de pele e sua prevenção, porém, grande parte
more » ... o utiliza medidas de proteção como roupas adequadas e protetor solar e, se expõe ao sol em horários inadequados. Além disso, possuem histórico de câncer de pele na família, fator influente para o desenvolvimento do mesmo. Ressalta-se que a maioria possui uma propriedade pequena e o serviço é manual, levando-os a uma maior exposição a outros fatores. Nota-se que a exposição solar é prejudicial para a população principalmente devido a exposição cumulativa e a falta de conscientização para o risco de desenvolvimento de câncer de pele. Além disso, essa população ainda é muito afetada pela falta de acessibilidade a educação, como grupos de promoção e prevenção a saúde. Nesse sentido, percebe-se a necessidade de orientações, fortalecendo a importância da prevenção do câncer de pele.
doi:10.33448/rsd-v10i1.11594 fatcat:7aluk5lwynbbdepdxy2n3sdlhy
« Previous Showing results 1 — 15 out of 2,979 results