並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 65件

新着順 人気順

"functional language"の検索結果1 - 40 件 / 65件

  • とほほのHaskell入門 - とほほのWWW入門

    「ハスケル」と呼びます。 数学者・論理学者の Haskell Curry の名前に由来しています。 LISP, ML などの言語の影響を受けています。 関数型プログラミング言語 であり、特に 純粋関数型言語 に分類されます。 金融、セキュリティ、数学・科学解析、構文解析などの分野での利用例があります。 関数型プログラミングに慣れていない人にとっては、多少学習コストが高いようです。 遅延評価 を採用しており、式は記述されていても必要となるまで評価されません。 関数型言語ですが、モナド などを利用することにより、手続き型言語のような記述も可能です。 Haskell 1.0 (1990年)、Haskell 98 (1999年)、Haskell 2010 (2009年) などのバージョンがあります。 コンパイル型言語ですが、スクリプト言語の様にインタプリタで呼び出すこともできます。 処理系は、イン

    • Rustを使ってスケーラブルなプログラムを書く方法 - かとじゅんの技術日誌

      この記事はRust Advent Calendar 2021の12/24日の記事です。 仕事ではScalaを使っていますが、趣味のプログラミングではRustで書いたものが増えました。Rustは楽しいですね。 今回は、Rustでオブジェクト指向プログラミングに関数型デザインを導入することで、スケーラブルなプログラムを書く方法(スケーラブル・プログラミング)について書きます。 「スケーラブル・プログラミング」といえばScalaです。Scalaの「スケーラブル」という言葉には「小さいプログラムも大規模なプログラムも同じ概念で記述できるべきである」という、柔軟性や拡張性を重視した設計の意図が込められています。それを実現するために必要なものは、オブジェクト指向と関数型を組み合わせたマルチパラダイムな設計です。 Scalaはマルチパラダイム言語の先駆者(今も先頭を走り続けています)ですが、他の言語にも

        Rustを使ってスケーラブルなプログラムを書く方法 - かとじゅんの技術日誌
      • Functional Programming in TypeScript

        Web apps are a mandatory part of every modern application nowadays, no matter how small or complex it is. From one-click apps that convert pictures to Photoshop, everyone wants fast and easy access to the app, and the web is one of the easiest ways to do that. At Serokell, we use TypeScript for writing web applications. But our main programming language is Haskell. And in this article, we want to

          Functional Programming in TypeScript
        • Advancing Excel as a programming language with Andy Gordon and Simon Peyton Jones - Microsoft Research

          Episode 120 | May 5, 2021 Today, people around the globe—from teachers to small-business owners to finance executives—use Microsoft Excel to make sense of the information that occupies their respective worlds, and whether they realize it or not, in doing so, they’re taking on the role of programmer. In this episode, Senior Principal Research Manager Andy Gordon, who leads the Calc Intelligence tea

            Advancing Excel as a programming language with Andy Gordon and Simon Peyton Jones - Microsoft Research
          • C Is The Greenest Programming Language

            Have you ever wondered if there is a correlation between a computer’s energy consumption and the choice of programming languages? Well, a group of Portuguese university researchers did and set out to quantify it. Their 2017 research paper entitled Energy Efficiency across Programming Languages / How Do Energy, Time, and Memory Relate?  may have escaped your attention, as it did ours. Abstract: Thi

              C Is The Greenest Programming Language
            • Talking TypeScript with the engineer who leads the team - Stack Overflow

              In our 2020 Developer Survey results, one of the most tracked statistics is the Most-Loved Language. As it has for several years now, Rust is number one. But coming in at number two is TypeScript, a strongly typed superset of JavaScript, edging out Python by a hair. We wanted to find out what about TypeScript makes it so dang lovable, so we reached out to Ryan Cavanaugh, the principal engineering

                Talking TypeScript with the engineer who leads the team - Stack Overflow
              • Decker

                Decker Decker is a multimedia platform for creating and sharing interactive documents, with sound, images, hypertext, and scripted behavior. You can try it in your web browser right now. Decker builds on the legacy of HyperCard and the visual aesthetic of classic MacOS. It retains the simplicity and ease of learning that HyperCard provided, while adding many subtle and overt quality-of-life improv

                • Xilem: an architecture for UI in Rust

                  Rust is an appealing language for building user interfaces for a variety of reasons, especially the promise of delivering both performance and safety. However, finding a good architecture is challenging. Architectures that work well in other languages generally don’t adapt well to Rust, mostly because they rely on shared mutable state and that is not idiomatic Rust, to put it mildly. It is sometim

                  • The Roc Programming Language

                    Roc's goal is to be a fast, friendly, functional language. It's very much a work in progress; below, you can see the current progress towards this goal. This website is intentionally unstyled as a way to emphasize the language's current level of incompleteness. The website will become more polished after the language itself becomes more polished! Roc compiles to machine code or to WebAssembly. Eve

                    • Haskell For a New Decade

                      Haskell Problems For a New Decade It has been a decade since I started writing Haskell, and I look back on all the projects that I cut my teeth on back in the early part of this decade and realise how far the language and tooling have come. Back then Haskell was really barely usable outside of the few people who would “go dark” for months to learn it or those lucky enough to study under researcher

                      • jj init — Sympolymathesy, by Chris Krycho

                        What if we actually could replace Git? Jujutsu might give us a real shot. Assumed audience: People who have worked with Git or other modern version control systems like Mercurial, Darcs, Pijul, Bazaar, etc., and have at least a basic idea of how they work. Jujutsu is a new version control system from a software engineer at Google, where it is on track to replace Google’s existing version control s

                          jj init — Sympolymathesy, by Chris Krycho
                        • Beyond Functional Programming: The Verse Programming Language

                          Simon Peyton Jones, Tim Sweeney Lennart Augustsson, Koen Claessen, Ranjit Jhala, Olin Shivers Epic Games December 2022 Tim’s vision of the metaverse  Social interaction in a shared real-time 3D simulation  An open economy with rules but no corporate overlord  A creation platform open to all programmers, artists, and designers, not a walled garden  Much more than a collection of separately comp

                          • Kalyn: a self-hosting compiler for x86-64

                            Over the course of my Spring 2020 semester at Harvey Mudd College, I developed a self-hosting compiler entirely from scratch. This article walks through many interesting parts of the project. It’s laid out so you can just read from beginning to end, but if you’re more interested in a particular topic, feel free to jump there. Or, take a look at the project on GitHub. Table of contents What the pro

                            • haku

                              Haku A toy functional programming language based on literary Japanese. Is Haku for you? Haku lets you write programs that look very much like written Japanese. So you need to be familiar with written Japanese to program in Haku. I have added translations and explanations to the documentation. Haku is an experiment, not a practical programming language. Several of its features are rather contrary.

                                haku
                              • Caramel: massively scalable, type-safe applications

                                caramel is a functional language for building type-safe, scalable, and maintainable applications Install Docs Discord Code

                                  Caramel: massively scalable, type-safe applications
                                • GitHub - microsoft/Power-Fx: Power Fx low-code programming language

                                  Microsoft Power Fx is a low-code general purpose programming language based on spreadsheet-like formulas. It is a strongly typed, declarative, and functional language, with imperative logic and state management available as needed. Power Fx started with Power Apps canvas apps and that is where you can experience it now. We are in the process of extracting the language from that product so that we

                                    GitHub - microsoft/Power-Fx: Power Fx low-code programming language
                                  • Why People are Angry over Go 1.23 Iterators

                                    NOTE: This is based on, but completely rewritten, from a Twitter post: https://x.com/TheGingerBill/status/1802645945642799423 TL;DR It makes Go feel too “functional” rather than being an unabashed imperative language. I recently saw a post on Twitter showing the upcoming Go iterator design for Go 1.23 (August 2024). From what I can gather, many people seem to dislike the design. I wanted to give m

                                    • Why the developers who use Rust love it so much - Stack Overflow

                                      The 2020 Developer Survey results are in, and once again, Rust is the number one most loved language among the 65,000 programmers who participated. Rust has taken the number one spot since 2016, showing that it’s got something that the developers who use it love. 86.1% of those survey respondents who said they currently use Rust want to continue using it next year. This is the fifth year in a row

                                        Why the developers who use Rust love it so much - Stack Overflow
                                      • Power Fx: Open source now available

                                        Greg Lindhorst, Principal PM Architect, Tuesday, November 2, 2021 We are very excited to announce the preview release of Microsoft Power Fx as open source.  Under the MIT license, you can now freely integrate this Excel-like, low code programming language in your own projects. We announced Power Fx at Ignite in March with two blog posts, one introducing Power Fx and another going into details of t

                                          Power Fx: Open source now available
                                        • xoshiro/xoroshiro generators and the PRNG shootout

                                          Introduction This page describes some new pseudorandom number generators (PRNGs) we (David Blackman and I) have been working on recently, and a shootout comparing them with other generators. Details about the generators can be found in our paper. Information about my previous xorshift-based generators can be found here, but they have been entirely superseded by the new ones, which are faster and b

                                          • What killed Haskell, could kill Rust, too

                                            What_killed_Haskell_could_kill_Rust.md At the beginning of 2030, I found this essay in my archives. From what I know today, I think it was very insightful at the moment of writing. And I feel it should be published because it can teach us, Rust developers, how to prevent that sad story from happening again. What killed Haskell, could kill Rust, too What killed Haskell, could kill Rust, too. Why wo

                                              What killed Haskell, could kill Rust, too
                                            • GitHub - zesterer/tao: A statically-typed functional language with generics, typeclasses, sum types, pattern-matching, first-class functions, currying, algebraic effects, associated types, good diagnostics, etc.

                                              You can now test Tao in the browser! A statically-typed functional language with polymorphism, typeclasses, generalised algebraic effects, sum types, pattern-matching, first-class functions, currying, good diagnostics, and much more! For more example programs, see... hello.tao: Hello world input.tao: Demonstrates a more complex example of IO effects calc.tao: A CLI calculator, demonstrating parser

                                                GitHub - zesterer/tao: A statically-typed functional language with generics, typeclasses, sum types, pattern-matching, first-class functions, currying, algebraic effects, associated types, good diagnostics, etc.
                                              • Introduction - Learning Rust With Entirely Too Many Linked Lists

                                                Learn Rust With Entirely Too Many Linked Lists Got any issues or want to check out all the final code at once? Everything's on Github! NOTE: The current edition of this book is written against Rust 2018, which was first released with rustc 1.31 (Dec 8, 2018). If your rust toolchain is new enough, the Cargo.toml file that cargo new creates should contain the line edition = "2018" (or if you're read

                                                • Functorio

                                                  You might have heard people say that functional programming is more academic, and real engineering is done in imperative style. I’m going to show you that real engineering is functional, and I’m going to illustrate it using a computer game that is designed by engineers for engineers. It’s a simulation game called Factorio, in which you are given resources that you have to explore, build factories

                                                    Functorio
                                                  • とほほのHaskell入門 - とほほのWWW入門

                                                    「ハスケル」と呼びます。 数学者・論理学者の Haskell Curry の名前に由来しています。 LISP, ML などの言語の影響を受けています。 関数型プログラミング言語 であり、特に 純粋関数型言語 に分類されます。 金融、セキュリティ、数学・科学解析、構文解析などの分野での利用例があります。 関数型プログラミングに慣れていない人にとっては、多少学習コストが高いようです。 遅延評価 を採用しており、式は記述されていても必要となるまで評価されません。 関数型言語ですが、モナド などを利用することにより、手続き型言語のような記述も可能です。 Haskell 1.0 (1990年)、Haskell 98 (1999年)、Haskell 2010 (2009年) などのバージョンがあります。 コンパイル型言語ですが、スクリプト言語の様にインタプリタで呼び出すこともできます。 処理系は、イン

                                                    • GitHub - HigherOrderCO/Kind: A next-gen functional language

                                                      You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                                        GitHub - HigherOrderCO/Kind: A next-gen functional language
                                                      • GitHub - roc-lang/roc: A fast, friendly, functional language. Work in progress!

                                                        You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                                          GitHub - roc-lang/roc: A fast, friendly, functional language. Work in progress!
                                                        • Ruby 2.7 NEWS: Commentary by Cookpad’s Full Time Ruby Comitters

                                                          We are Koichi Sasada (ko1) and Yusuke Endoh (mame) from Cookpad Inc. tech team. Cookpad sponsors us to work full time developing the Ruby interpreter (MRI: Matz Ruby Implementation). We released a Japanese article “Ruby 2.7 NEWS explained by Ruby Professionals” when Ruby 2.7 was released on 25th Dec. 2019. This is an English translation of the article with help from Miles Woodroffe. “NEWS” is a te

                                                            Ruby 2.7 NEWS: Commentary by Cookpad’s Full Time Ruby Comitters
                                                          • Erlang QuickCheck | QuviQ

                                                            Tired of writing and maintaining thousands of automated tests? Did you know that repeating tests finds only 15% of your bugs anyway? Let QuickCheck generate new tests for you daily, saving you effort and nailing your bugs earlier! QuickCheck takes you quickly from specification to identified bug. Three steps to QuickCheck Write a QuickCheck specification instead of test cases— general properties y

                                                            • References are like jumps

                                                              In a high-level language, the programmer is deprived of the dangerous power to update his own program while it is running. Even more valuable, he has the power to split his machine into a number of separate variables, arrays, files, etc.; when he wishes to update any of these he must quote its name explicitly on the left of the assignment, so that the identity of the part of the machine subject to

                                                              • JavaScript: The Modern Parts

                                                                In the last few months, I have learned a lot about modern JavaScript and CSS development with a local toolchain powered by Node 8, Webpack 4, and Babel 7. As part of that, I am doing my second “re-introduction to JavaScript”. I first learned JS in 1998. Then relearned it from scratch in 2008, in the era of “The Good Parts”, Firebug, jQuery, IE6-compatibility, and eventually the then-fledgling Node

                                                                  JavaScript: The Modern Parts
                                                                • 12 Languages in 12 Months

                                                                  I stumbled across Exercism last year and was immediately charmed. It's a website devoted to teaching programming languages. It's got a great UI, offers free mentoring (by a human!), and is entirely open source. Last January, they announced a new program called 12in23, where they challenged participants to try 12 new programming languages in 2023. Each month would have a theme (such as "Analytical

                                                                    12 Languages in 12 Months
                                                                  • How I Switched from TypeScript to ReScript

                                                                    A glimpse into a more civilized (yet challenging) tool in the JavaScript ecosystem Art for ReScript Blog, credit to Bettina SteinbrecherThis is not evangelism of ReScript or a one-to-one comparison with TypeScript. I love TypeScript. I decided to rewrite a small TypeScript+React+Jest side project into ReScript. ReScript is not new. In a way it’s as old as JavaScript itself. ReScript is a rebrandin

                                                                      How I Switched from TypeScript to ReScript
                                                                    • Out of the Tar Pit [pdf]

                                                                      Out of the Tar Pit Ben Moseley ben@moseley.name Peter Marks public@indigomail.net February 6, 2006 Abstract Complexity is the single major difficulty in the successful develop- ment of large-scale software systems. Following Brooks we distinguish accidental from essential difficulty, but disagree with his premise that most complexity remaining in contemporary systems is essential. We identify comm

                                                                      • A Haskell retrospective

                                                                        Approximately a year ago, I had the opportunity to work on Sigma — a large, distributed system that protects Facebook users from spam and other kinds of abuse. One reason it was a pretty unique experience is that Sigma is almost entirely a Haskell codebase. It was the first time I got to work with the language in a professional setting, so I was eager to see how it performs in a real-world, produc

                                                                          A Haskell retrospective
                                                                        • Introduction to Free Monads

                                                                          If you’ve been around Haskell circles for a bit, you’ve probably seen the term “free monads”. This article introduces free monads and explain why they are useful in Haskell development. To whet your appetite a little, free monads are basically a way to easily get a generic pure Monad instance for any Functor. This can be rather useful in many cases when you’re dealing with tree-like structures, bu

                                                                            Introduction to Free Monads
                                                                          • Write Unbreakable Python – Software, Fitness, and Gaming – Jesse Warden

                                                                            In this article, I’ll show you how to write Python with no runtime exceptions. This’ll get you partway to writing code that never breaks and mostly does what it’s supposed to do. We’ll do this by learning how to apply functional programming to Python. We’ll cover: ensure functions always work by learning Pure Functionsavoid runtime errors by return Maybesavoid runtime errors in deeply nested data

                                                                            • Elixir: A great first programming language - Qiita

                                                                              はじめに Elixir 楽しんでいますか Microsoft Igniteの下記のセッションをみました Python: A great first programming language Hello, World! in 3 languages: beginning coding with C#, Python and Javascript How to become a software developer これらからインスパイアされて、Elixirを紹介したいとおもったわけです だって、 https://myignite.microsoft.com/sessions で、 Elixirって検索しても何もでてこないのですもの じゃあ、自分で書くしかないとおもいました この記事のタイトルは、「Python: A great first programming language」のPyth

                                                                                Elixir: A great first programming language - Qiita
                                                                              • Nix: An Idea Whose Time Has Come | Revelry

                                                                                In which I shill you Nix, a purely functional package manager. Why Nix? Joe Armstrong, one of the creators of Erlang, once described Erlang as the quest for programs that you “write once, run forever.” Nix, in comparison, might be the quest for programs that run wherever, whenever. Nix often scares newcomers and experienced devs alike, because it proposes a fairly radical overhaul to how we think

                                                                                  Nix: An Idea Whose Time Has Come | Revelry
                                                                                • Introducing Dawn (Part 1)

                                                                                  By Scott J Maddox. First published 2021-04-08. Allow me to introduce you to Dawn, a work-in-progress programming language. I am designing Dawn to be a practical, general-purpose programming language that combines the factorability of Forth, the purity and expressiveness of Haskell, and the performance and control of C, with safety and correctness guarantees beyond those provided by Rust. Now, if y