106,069 research outputs found
Simple algebraic data types for C
ADT is a simple tool in the spirit of Lex and Yacc that makes algebraic data types and a restricted form of pattern matching on those data types as found in SML available in C programs. ADT adds runtime checks, which make C programs written with the aid of ADT less likely to dereference a NULL pointer. The runtime tests may consume a significant amount of CPU time; hence they can be switched off once the program is suitably debugged
The C++0x "Concepts" Effort
C++0x is the working title for the revision of the ISO standard of the C++
programming language that was originally planned for release in 2009 but that
was delayed to 2011. The largest language extension in C++0x was "concepts",
that is, a collection of features for constraining template parameters. In
September of 2008, the C++ standards committee voted the concepts extension
into C++0x, but then in July of 2009, the committee voted the concepts
extension back out of C++0x.
This article is my account of the technical challenges and debates within the
"concepts" effort in the years 2003 to 2009. To provide some background, the
article also describes the design space for constrained parametric
polymorphism, or what is colloquially know as constrained generics. While this
article is meant to be generally accessible, the writing is aimed toward
readers with background in functional programming and programming language
theory. This article grew out of a lecture at the Spring School on Generic and
Indexed Programming at the University of Oxford, March 2010
Phobos: A front-end approach to extensible compilers (long version)
This paper describes a practical approach for implementing certain types of domain-specific languages with extensible compilers. Given a compiler with one or more front-end languages, we introduce the idea of a "generic" front-end that allows the syntactic and semantic specification of domain-specific languages. Phobos, our generic front-end, offers modular language specification, allowing the programmer to define new syntax and semantics incrementally
A Survey of Languages for Specifying Dynamics: A Knowledge Engineering Perspective
A number of formal specification languages for knowledge-based systems has been developed. Characteristics for knowledge-based systems are a complex knowledge base and an inference engine which uses this knowledge to solve a given problem. Specification languages for knowledge-based systems have to cover both aspects. They have to provide the means to specify a complex and large amount of knowledge and they have to provide the means to specify the dynamic reasoning behavior of a knowledge-based system. We focus on the second aspect. For this purpose, we survey existing approaches for specifying dynamic behavior in related areas of research. In fact, we have taken approaches for the specification of information systems (Language for Conceptual Modeling and TROLL), approaches for the specification of database updates and logic programming (Transaction Logic and Dynamic Database Logic) and the generic specification framework of abstract state machine
Applying Formal Methods to Networking: Theory, Techniques and Applications
Despite its great importance, modern network infrastructure is remarkable for
the lack of rigor in its engineering. The Internet which began as a research
experiment was never designed to handle the users and applications it hosts
today. The lack of formalization of the Internet architecture meant limited
abstractions and modularity, especially for the control and management planes,
thus requiring for every new need a new protocol built from scratch. This led
to an unwieldy ossified Internet architecture resistant to any attempts at
formal verification, and an Internet culture where expediency and pragmatism
are favored over formal correctness. Fortunately, recent work in the space of
clean slate Internet design---especially, the software defined networking (SDN)
paradigm---offers the Internet community another chance to develop the right
kind of architecture and abstractions. This has also led to a great resurgence
in interest of applying formal methods to specification, verification, and
synthesis of networking protocols and applications. In this paper, we present a
self-contained tutorial of the formidable amount of work that has been done in
formal methods, and present a survey of its applications to networking.Comment: 30 pages, submitted to IEEE Communications Surveys and Tutorial
Differential expression of conserved germ line markers and delayed segregation of male and female primordial germ cells in a hermaphrodite, the leech helobdella.
In sexually reproducing animals, primordial germ cells (PGCs) are often set aside early in embryogenesis, a strategy that minimizes the risk of genomic damage associated with replication and mitosis during the cell cycle. Here, we have used germ line markers (piwi, vasa, and nanos) and microinjected cell lineage tracers to show that PGC specification in the leech genus Helobdella follows a different scenario: in this hermaphrodite, the male and female PGCs segregate from somatic lineages only after more than 20 rounds of zygotic mitosis; the male and female PGCs share the same (mesodermal) cell lineage for 19 rounds of zygotic mitosis. Moreover, while all three markers are expressed in both male and female reproductive tissues of the adult, they are expressed differentially between the male and female PGCs of the developing embryo: piwi and vasa are expressed preferentially in female PGCs at a time when nanos is expressed preferentially in male PGCs. A priori, the delayed segregation of male and female PGCs from somatic tissues and from one another increases the probability of mutations affecting both male and female PGCs of a given individual. We speculate that this suite of features, combined with a capacity for self-fertilization, may contribute to the dramatically rearranged genome of Helobdella robusta relative to other animals
Cell-fate determination by ubiquitin-dependent regulation of translation.
Metazoan development depends on the accurate execution of differentiation programs that allow pluripotent stem cells to adopt specific fates. Differentiation requires changes to chromatin architecture and transcriptional networks, yet whether other regulatory events support cell-fate determination is less well understood. Here we identify the ubiquitin ligase CUL3 in complex with its vertebrate-specific substrate adaptor KBTBD8 (CUL3(KBTBD8)) as an essential regulator of human and Xenopus tropicalis neural crest specification. CUL3(KBTBD8) monoubiquitylates NOLC1 and its paralogue TCOF1, the mutation of which underlies the neurocristopathy Treacher Collins syndrome. Ubiquitylation drives formation of a TCOF1-NOLC1 platform that connects RNA polymerase I with ribosome modification enzymes and remodels the translational program of differentiating cells in favour of neural crest specification. We conclude that ubiquitin-dependent regulation of translation is an important feature of cell-fate determination
- âŠ