677 research outputs found

    Koka: Programming with Row Polymorphic Effect Types

    Full text link
    We propose a programming model where effects are treated in a disciplined way, and where the potential side-effects of a function are apparent in its type signature. The type and effect of expressions can also be inferred automatically, and we describe a polymorphic type inference system based on Hindley-Milner style inference. A novel feature is that we support polymorphic effects through row-polymorphism using duplicate labels. Moreover, we show that our effects are not just syntactic labels but have a deep semantic connection to the program. For example, if an expression can be typed without an exn effect, then it will never throw an unhandled exception. Similar to Haskell's `runST` we show how we can safely encapsulate stateful operations. Through the state effect, we can also safely combine state with let-polymorphism without needing either imperative type variables or a syntactic value restriction. Finally, our system is implemented fully in a new language called Koka and has been used successfully on various small to medium-sized sample programs ranging from a Markdown processor to a tier-splitted chat application. You can try out Koka live at www.rise4fun.com/koka/tutorial.Comment: In Proceedings MSFP 2014, arXiv:1406.153

    Developing a monitoring system for Toyota Prius battery-packs for longer term performance issues

    Get PDF
    The Toyota Prius battery pack consists of 38 individual battery blades, each blade contains 6 NiMH cells in series. This means that each pack contains 228 NiMH cells. Given this number of individually manufactured cells combined into a large battery pack, any individual cell or a blade getting weaker than all other linearly degrading cells, will become the performance limiting element in the pack. For example in a situation where one blade weakens down to 1200mAh compared to all other 37 blades maintaining approximately 2400mAh capacity will make the car run only 1.3 km in EV mode, compared to 2.6 km if all 38 blades are of 2400mAh capacity. In order to identify such individually weak cells, a supercapacitor based monitoring system is designed and the paper indicates the approach in developing this system, together with some details explaining the general performance of the overall system and how the new monitoring system can help in managing the battery pack life issues in the Toyota Prius

    Failure analysis of some Toyota Prius battery packs and potential for recovery

    Get PDF
    The Toyota Prius battery pack consists of 38 individual battery blades, each blade contains 6 NiMH cells in series. This means that each pack contains 228 NiMH cells. Each cell has the potential to fail. This report investigates the mode of failure of Prius battery packs by first analysing a number of packs in the lab, and then road testing them in a Toyota Prius. The analysis of the battery packs shows that some packs had aged “linearly”, that is in a balanced manner, such that the state of health of all blades remained similar. However, in other packs discrete blades had significantly different states of health. A pack that consists of cells that are matched in both state of health and state of charge delivers the best performance. The research also showed that the worst cell in the pack determines the overall pack performance. This was demonstrated by substituting reducedcapacity or short-circuited blades into a functioning battery pack. A vehicle with a pack consisting of 37 2400 mAh battery blades and one 1200 mAh battery blade was only able to drive 1.3 km in Electric Vehicle mode, as opposed to 2.6 km with a pack consisting of 38 2400 mAh battery blades

    Polymonadic Programming

    Full text link
    Monads are a popular tool for the working functional programmer to structure effectful computations. This paper presents polymonads, a generalization of monads. Polymonads give the familiar monadic bind the more general type forall a,b. L a -> (a -> M b) -> N b, to compose computations with three different kinds of effects, rather than just one. Polymonads subsume monads and parameterized monads, and can express other constructions, including precise type-and-effect systems and information flow tracking; more generally, polymonads correspond to Tate's productoid semantic model. We show how to equip a core language (called lambda-PM) with syntactic support for programming with polymonads. Type inference and elaboration in lambda-PM allows programmers to write polymonadic code directly in an ML-like syntax--our algorithms compute principal types and produce elaborated programs wherein the binds appear explicitly. Furthermore, we prove that the elaboration is coherent: no matter which (type-correct) binds are chosen, the elaborated program's semantics will be the same. Pleasingly, the inferred types are easy to read: the polymonad laws justify (sometimes dramatic) simplifications, but with no effect on a type's generality.Comment: In Proceedings MSFP 2014, arXiv:1406.153

    Static Partitioning of Spreadsheets for Parallel Execution

    Get PDF

    Supporting cognitive and metacognitive learning strategies in technologically enhanced language learning

    Get PDF
    Hea võõrkeeleoskus on globaliseeruvas maailmas eduka toimetuleku eeldus. On leitud, et õppija keeleoskus on seotud tema keeleõppestrateegiate kasutusega, seetõttu peetakse õpistrateegiate mõõtmist üheks enim levinud keeleõppe efektiivsuse hindamise meetodiks. Kuigi strateegiate kasutamise oskus ja harjumused on väga individuaalsed ning kujunevad välja pikema aja jooksul, on uuringud näidanud, et õppijaid on võimalik suunata kasutama efektiivsemaid õpistrateegiaid, toetades nende õpitegevust. Praeguse uurimuse eesmärk on töötada varasemate uurimistulemuste põhjal välja sekkumistegevused, millega toetatakse kognitiivseid ja metakognitiivseid keeleõppestrateegiaid tehnoloogiaga tõhustatud võõrkeelekursusel, ning katsetada nende efektiivsust. Sekkumine hõlmab spetsiaalseid õpiülesandeid, mille sooritamist toetatakse märguannetega. Andmed pärinevad nii ainetestist kui ka eesti keele jaoks kohandatud enesekohaste küsimustikega Est-SILLi, MSQLi ja SRL-SRSi eel- ja järeltestist, mis tehti neljakuusel erialase inglise keele kursusel. Uurimistulemused näitavad, et varasemates uurimustes välja pakutud kognitiivsete ja metakognitiivsete õpistrateegiate kombineeritud toetamine märguannetega annab positiivseid tulemusi nii keeleõppestrateegiate ja eneseregulatsiooni toetamisel kui ka aineteadmiste omandamisel.  Summar

    Kaasõppija tagasiside kui akadeemiliste tekstide kvaliteeti mõjutav tegur

    Get PDF
    Väitekirja elektrooniline versioon ei sisalda publikatsioone.Tekstiloomeoskus on vajalik oskus. Kaasaaegse tehnoloogia arenguga seoses on selle olulisus võrreldes varasemaga suurenenud. Kirjalikud tekstid ühendavad inimesi suuremal määral kui me mõnikümmend aastat tagasi oleksime osanud ette kujutada. Kuna tekstiloome tähtsus meie igapäevaelus üha kasvab, oleme me tunnistajateks ka tekstiloome uurimise kui teadusliku suuna arenemisele ning kasvule. Tekstiloome (interdistsiplinaarne) uurimine areneb uutesse suundadesse, tekivad uued žanrid, arendatakse välja uusi rakendusi ja nutikaid tehnoloogiaid. Haridussüsteemi üks eesmärke on õpetada tekstide loomist. Tekstiloome on keerukas protsess ning selle oskuse omandamine võtab aastaid. Kõrghariduses tuleb õppijate tekstiloome oskusi edasi arendada, õpetades üliõpilasi looma tekste akadeemilistest žanrites, ning toetada teadmise loomist kirjaliku eneseväljenduse teel. Siinne väitekiri on välja kasvanud praktilisest vajadusest uurida tekstiloomeprotsessi Eesti kontekstis. Vajadus sellise uurimuse järele ilmnes õpetades tekstiloomet kõrgharidussüsteemis, kus kirjaliku väljendusoskuse uurimine on suuresti alles lapsekingades. Siinses väitekirjas uuritakse tagasiside mõju tekstiloomeprotsessile sama teksti mustandite eri versioonides. Peamiste uurimistulemustena selgus, et parandusi soodustavad kaht tüüpi kommentaarid: 1) kui tagasisidestaja toob kommentaaris välja konkreetse probleemi ning pakub võimaliku muudatuse ning 2) kommentaarid, mis korduvad eri isikute tagasisides. Kuigi need tulemused võivad näida iseenesest mõistetavad, näitab praktika vastupidist. Kaasõppijate tekstide tagasisidestamine ei ole meie haridussüsteemis tavaline, see nõuab spetsiaalseid oskusi, sh keelelisi vahendeid, mida tuleb kõrgkoolides õpetada.Writing is considered an essential skill to have. With the emergence of modern technology perhaps even more so than in the past. Writing connects us at a larger scale than we could have ever imagined just three decades ago. The World Wide Web offers a plethora of written text increasing daily exponentially in size. Not surprisingly, with the increasing demands writing has in our daily communication through media such as e-mail, text messages, or Facebook post, we see the field of writing research expanding into multiple directions, with new genres emerging, disciplines being crossed, writing and communication tools being developed, and intelligent writing technology being created. Education in general has a responsibility to teach writing to students. Writing, as we know, is a complex task and one that takes years to develop and master. Higher education, more specifically, has the responsibility to further hone the writing skills of their students through the practice of specific academic genres presented as example texts for reading and knowledge creation through writing. This study emerges from the practice of teaching writing to students in a higher educational establishment where the practice of writing is common, but the teaching of writing is still an emerging discipline. This study, therefore, investigates writing by applying a research approach informed by current writing theories and writing models. The results pinpoint two characteristic features that determine observable revision in subsequent drafts: a reviewer instructing with an explicit example what the writers should revise in a subsequent draft and multiple reviewers informing the writer about the same aspect in the text that needs revision in a subsequent draft. Although it seems obvious, practice demonstrates that it is not. In the context of this study, students giving each other peer feedback is not common practice and students often lack the language of evaluation. As a result, students provide feedback which is not effective and in some degrees harmful. Therefore, it is important to support students to give effective peer reviews, once we know what is considered effective

    Health and culture: National and individual drivers of preference for professional medical help

    Get PDF

    Eessõna

    Get PDF
    Eesti Haridusteaduste Ajakirja esimene number keskendub õpetajakoolitusele ja kõrgkoolipedagoogikale. Erinumbri eesmärk on tutvustada nendes valdkondades Eestis läbiviidud uuringuid ning pakkuda uurimistulemuste põhjal uusi teadmisi edasiste arutelude ja arendustöö tarbeks. Kokkuvõtvalt võib öelda, et ajakirja esiknumbri kaastööd avavad õpetajakoolituse ja kõrgkoolipedagoogika erinevaid tahke ning aitavad paremini mõista nende valdkondade komplekssust. Peale kaastööde panuse teadustöö edendamisse, sh mitme originaalse mõõtevahendi esitlemise, antakse artiklites ka praktilisi soovitusi õpetajakoolituse ja laiemalt kõrgkooliõpingute arendamiseks. Näiteks käsitletakse õpetajakoolituse teoreetiliste õpingute ja õpetamispraktika parema seostamise võimalusi, samuti arutletakse kõrgkoolides õppimiskeskse õpetamisviisi rakendamise eelduste ja tingimuste üle
    corecore